从指定的缩放级别加载 JMapViewer
Loading JMapViewer from a specified zoom level
我正在尝试从指定的缩放级别加载 JMapViewer
以供离线使用。我已经能够很好地从 zoom levels 1 to 18 and render
从我的本地计算机加载图块。 JMapViewer
仅在 minimum zoom level is 0 , 1, 2 or 3
时有效。假设我将最小缩放级别更改为 greater than 3
,JMapViewer
在绘制图块时尝试获取位置时抛出 null pointer
异常,并且程序根本没有启动。有什么方法可以在更改代码后从特定缩放加载它们。
以下是我提到的链接:
http://svn.openstreetmap.org/applications/viewer/jmapviewer/src/org/openstreetmap/gui/jmapviewer/
http://paulusschoutsen.nl/blog/2012/08/java-component-jmapviewer-with-offline-openstreetmap-support/
我想我明白了。在 JMapViewer.java 中,我们需要将最小缩放级别指定为 OfflineOsmTileSource 的参数。然后我们需要指定 setDisplayPosition(tileSource.LonToX((lon1 + lon2) / 2, zoom_level),tileSource.LatToY((lat1 + lat2)/2, zoom_level), zoom_level);
希望对大家有所帮助。
干杯!
我正在尝试从指定的缩放级别加载 JMapViewer
以供离线使用。我已经能够很好地从 zoom levels 1 to 18 and render
从我的本地计算机加载图块。 JMapViewer
仅在 minimum zoom level is 0 , 1, 2 or 3
时有效。假设我将最小缩放级别更改为 greater than 3
,JMapViewer
在绘制图块时尝试获取位置时抛出 null pointer
异常,并且程序根本没有启动。有什么方法可以在更改代码后从特定缩放加载它们。
以下是我提到的链接:
http://svn.openstreetmap.org/applications/viewer/jmapviewer/src/org/openstreetmap/gui/jmapviewer/
http://paulusschoutsen.nl/blog/2012/08/java-component-jmapviewer-with-offline-openstreetmap-support/
我想我明白了。在 JMapViewer.java 中,我们需要将最小缩放级别指定为 OfflineOsmTileSource 的参数。然后我们需要指定 setDisplayPosition(tileSource.LonToX((lon1 + lon2) / 2, zoom_level),tileSource.LatToY((lat1 + lat2)/2, zoom_level), zoom_level);
希望对大家有所帮助。
干杯!