mapjfx display problems update

For the last two years a problem was coming up occasionally with some users, that only the top left area of the map is displayed, and the rest is not loading:

Thanks to the analysis of Martin Stiel in this comment and Victor Ewert in issue 81 it seems that this can be traced to a problem when running the application on a high resolution display.

Alas I cannot reproduce this as I have no hardware with a resolution that might be high enough. So if you have this problem you might try the solution that Victor mentions in the issue linked above: start the application with -Dprism.allowhidpi=false.

So currently I cannot support this as for em this problem is not reproducible, But I’d be glad for feedback or any new information.

mapjfx 1.32.0 and 2.14.0 adds the ability to rotate markers and labels

I just released mapjfx versions 1.32.0 and 2.14.0, they will be available in maven central:

  <dependency>
    <groupId>com.sothawo</groupId>
    <artifactId>mapjfx</artifactId>
    <version>1.32.0</version>
  </dependency>
  <dependency>
    <groupId>com.sothawo</groupId>
    <artifactId>mapjfx</artifactId>
    <version>2.14.0</version>
  </dependency>

1.32.0 is built using Java 8 and 2.14.0 uses Java 11.

Markers and Labels on a map now have a rotation property which will rotate the corresponding HTML Element. The values goes from 0 to 360 and defines the rotating angle clockwise.

mapjfx 1.31.1 and 2.13.1 fixing event triggering regression

I just released mapjfx versions 1.31.1 and 2.13.1, they will be available in maven central:

  <dependency>
    <groupId>com.sothawo</groupId>
    <artifactId>mapjfx</artifactId>
    <version>1.31.1</version>
  </dependency>
  <dependency>
    <groupId>com.sothawo</groupId>
    <artifactId>mapjfx</artifactId>
    <version>2.13.1</version>
  </dependency>

1.31.1 is built using Java 8 and 2.13.1 uses Java 11.

These versions fix a regression where events for markers and labels (mouse enter/leave, context click etc) where not created anymore due to enabling scroll/zoom behaviour on markers and labels.
Now all events are dispatched again as they should.

mapjfx 2.13.0 switches back to use Java 11 (LTS)

I just released mapjfx version 2.13.0, it will be available in maven central:

  <dependency>
    <groupId>com.sothawo</groupId>
    <artifactId>mapjfx</artifactId>
    <version>2.13.0</version>
  </dependency>

I switched back to use Java 11 (LTS) as SceneBuilder is only available for Java 11 (https://gluonhq.com/products/scene-builder/) and libraries built with version 12 or 13 cannot be used in SceneBuilder 11.

mapjfx 1.30.0 and 2.11.0 with new Bing Maps MapTypes

I just released mapjfx versions 1.30.0 and 2.11.0, they will be available in maven central:

  <dependency>
    <groupId>com.sothawo</groupId>
    <artifactId>mapjfx</artifactId>
    <version>1.30.0</version>
  </dependency>
  <dependency>
    <groupId>com.sothawo</groupId>
    <artifactId>mapjfx</artifactId>
    <version>2.11.0</version>
  </dependency>

1.30.0 is built using Java 8 and 2.11.0 uses Java 12.

In these version 4 new variants for the Bing Map mapType are added (thanks to https://github.com/MalteBahr)

mapjfx 1.29.0 and 2.10.0 now with OpenLayers 6.0.1 and extension constrains

I just released mapjfx versions 1.29.0 and 2.10.0, they will be available in maven central:

  <dependency>
    <groupId>com.sothawo</groupId>
    <artifactId>mapjfx</artifactId>
    <version>1.29.0</version>
  </dependency>
  <dependency>
    <groupId>com.sothawo</groupId>
    <artifactId>mapjfx</artifactId>
    <version>2.10.0</version>
  </dependency>

1.29.0 is built using Java 8 and 2.10.0 uses Java 12.

This version updates the OpenLayers library to version 6.0.1 (https://github.com/sothawo/mapjfx/issues/66).
Additionally it is now possible to constrain the panning and zooming of a map to a given extent (https://github.com/sothawo/mapjfx/issues/62).

mapjfx 2.9.0 and 1.28.0 with offline cache improvements

I just released mapjfx versions 1.28.0 and 2.9.0, they will be available in maven central:

  <dependency>
    <groupId>com.sothawo</groupId>
    <artifactId>mapjfx</artifactId>
    <version>1.28.0</version>
  </dependency>
  <dependency>
    <groupId>com.sothawo</groupId>
    <artifactId>mapjfx</artifactId>
    <version>2.9.0</version>
  </dependency>

1.28.0 is bilt using Java 8 and 2.9.0 uses Java 12.

These releases add the possibility to pass a list of URLs (map tiles) to the OfflineCache to have the cache populated in the background with the data from these URLs (https://github.com/sothawo/mapjfx/issues/64)

Example:

private void initOfflineCache() {
    final OfflineCache offlineCache = OfflineCache.INSTANCE;
    offlineCache.setCacheDirectory(FileSystems.getDefault().getPath("tmpdata/cache"));
    offlineCache.setActive(true);
    offlineCache.setNoCacheFilters(Collections.singletonList(".*\\.sothawo\\.com/.*"));

    LinkedList<String> urls = new LinkedList<>();
    urls.add("https://c.tile.openstreetmap.org/14/8572/5626.png");
    urls.add("https://b.tile.openstreetmap.org/14/8571/5626.png");
    urls.add("https://a.tile.openstreetmap.org/14/8572/5625.png");
    urls.add("https://c.tile.openstreetmap.org/14/8571/5625.png");
    urls.add("https://b.tile.openstreetmap.org/14/8570/5625.png");
    urls.add("https://a.tile.openstreetmap.org/14/8572/5625.png");
    urls.add("https://a.tile.openstreetmap.org/14/8570/5626.png");
    urls.add("https://a.tile.openstreetmap.org/14/8571/5627.png");
    urls.add("https://a.tile.openstreetmap.org/14/8573/5626.png");
    urls.add("https://a.tile.openstreetmap.org/14/8574/5627.png");
    urls.add("https://b.tile.openstreetmap.org/14/8571/5626.png");
    urls.add("https://b.tile.openstreetmap.org/14/8573/5625.png");
    urls.add("https://b.tile.openstreetmap.org/14/8572/5627.png");
    urls.add("https://b.tile.openstreetmap.org/14/8574/5626.png");
    urls.add("https://c.tile.openstreetmap.org/14/8572/5626.png");
    urls.add("https://c.tile.openstreetmap.org/14/8570/5627.png");
    urls.add("https://c.tile.openstreetmap.org/14/8574/5625.png");
    urls.add("https://c.tile.openstreetmap.org/14/8573/5627.png");

    offlineCache.preloadURLs(urls);
}

 

mapjfx versions 1.26.3 and 2.7.3 release fixing context menu regression

I just released mapjfx versions 1.26.3 and 2.7.3, they will be available in maven central:

  <dependency>
    <groupId>com.sothawo</groupId>
    <artifactId>mapjfx</artifactId>
    <version>1.26.3</version>
  </dependency>
  <dependency>
    <groupId>com.sothawo</groupId>
    <artifactId>mapjfx</artifactId>
    <version>2.7.3</version>
  </dependency>

These releases contain a fix for the regression that caused context clicks not to be intercepted so that the normal browser context menu was shown (https://github.com/sothawo/mapjfx/issues/52)

mapjfx 2.7.1 and 1.26.1 with fixes for WMS servers

I just released mapjfx versions 1.26.1 and 2.7.1, they will be available in maven central:

  <dependency>
    <groupId>com.sothawo</groupId>
    <artifactId>mapjfx</artifactId>
    <version>1.26.1</version>
  </dependency>
  <dependency>
    <groupId>com.sothawo</groupId>
    <artifactId>mapjfx</artifactId>
    <version>2.7.1</version>
  </dependency>

These releases contain 2 fixes in handling WMS servers (https://github.com/sothawo/mapjfx/issues/53 and https://github.com/sothawo/mapjfx/issues/54)

 

mapjfx 2.7.0 and 1.26.0 add the possibility to inhibit zoom and panning

I just released mapjfx versions 1.26.0 and 2.7.0, they will be available in maven central:

  <dependency>
    <groupId>com.sothawo</groupId>
    <artifactId>mapjfx</artifactId>
    <version>1.26.0</version>
  </dependency>
  <dependency>
    <groupId>com.sothawo</groupId>
    <artifactId>mapjfx</artifactId>
    <version>2.7.0</version>
  </dependency>

When initializing the MapView element, it is now possible to pass an argument named interactive, if this is set to false, the user will not be able to change the map zoom by some controls in the map, by scrolling the wheel or double click. It is also not possible to change the map center by dragging or pannig the map with the mouse.

Of course it is still possible to change the map center or zoom level from within the java program.