mapjfx display problem on Windows 10 seems solved

For some time now there was a bug that the map was not displaying properly on some Windows systems, see

It seems this was because of a bug in the WebView from JavaFX https://bugs.openjdk.java.net/browse/JDK-8234471. Thanks to https://github.com/vewert and https://github.com/Abu-Abdullah investigating into this.

This issue was fixed with JavaFX15, I tried this on a virtual machine with Windows10 and could not reproduce the error anymore.

There is no need to update mapjfx to JavaFX15 (as macOS and *nix are not hit by this bug). If you are on Windows10 you need to add the following dependency to your application:

<dependency>
    <groupId>org.openjfx</groupId>
    <artifactId>javafx-web</artifactId>
    <version>16-ea+1</version>
</dependency>

I tried 16-ea+1 and 15-ea+8, the version should be the same that is used for the whole application.

 

mapjfx 2.15.0 and 1.33.0 released adding circles and OpenLayers 6.4.2

I just released mapjfx versions 1.33.0 and 2.15.0, they will be available in maven central:

  <dependency>
    <groupId>com.sothawo</groupId>
    <artifactId>mapjfx</artifactId>
    <version>1.33.0</version>
  </dependency>
  <dependency>
    <groupId>com.sothawo</groupId>
    <artifactId>mapjfx</artifactId>
    <version>2.15.0</version>
  </dependency>

1.33.0 is built using Java 8 and 2.15.0 uses Java 11.

Circles can now be added to a map, giving the center coordinates and the radius in meters with custom coloring and transparency, thanks to Hanwoo Kim for this contribution!

The OpenLayers version now is 6.4.2.

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.

 

Update:

https://www.sothawo.com/2020/09/mapjfx-display-problem-on-windows-10-seems-solved/

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)