【问题标题】:Mapsforge Austria map errorMapsforge奥地利地图错误
【发布时间】:2014-09-15 18:19:47
【问题描述】:

我已经尝试从http://download.mapsforge.org/ 下载奥地利地图并自己生成奥地利地图文件(osmosis-0.43.1,mapsforge-map-writer-0.4.0)。但他们给出了同样的问题。 Perchtoldsdorf 附近的一些数据地图在缩放级别>=12 时丢失。

错误信息:

09-05 10:52:30.745: E/MapsforgeTileProvider(4279): java.lang.IllegalArgumentException:无效纬度: -90.14254932030728 09-05 10:52:30.745: E/MapsforgeTileProvider(4279): 在 org.mapsforge.core.util.LatLongUtils.validateLatitude(LatLongUtils.java:172) 09-05 10:52:30.745:E/MapsforgeTileProvider(4279):在 org.mapsforge.core.model.LatLong.(LatLong.java:46) 09-05 10:52:30.745:E/MapsforgeTileProvider(4279):在 org.mapsforge.map.reader.MapDatabase.decodeWayNodesDoubleDelta(MapDatabase.java:356) 09-05 10:52:30.745:E/MapsforgeTileProvider(4279):在 org.mapsforge.map.reader.MapDatabase.processWayDataBlock(MapDatabase.java:674) 09-05 10:52:30.745:E/MapsforgeTileProvider(4279):在 org.mapsforge.map.reader.MapDatabase.processWays(MapDatabase.java:780) 09-05 10:52:30.745:E/MapsforgeTileProvider(4279):在 org.mapsforge.map.reader.MapDatabase.processBlock(MapDatabase.java:449) 09-05 10:52:30.745:E/MapsforgeTileProvider(4279):在 org.mapsforge.map.reader.MapDatabase.processBlocks(MapDatabase.java:538) 09-05 10:52:30.745:E/MapsforgeTileProvider(4279):在 org.mapsforge.map.reader.MapDatabase.readMapData(MapDatabase.java:321) 09-05 10:52:30.745:E/MapsforgeTileProvider(4279):在 org.mapsforge.map.layer.renderer.DatabaseRenderer.executeJob(DatabaseRenderer.java:169) 09-05 10:52:30.745:E/MapsforgeTileProvider(4279):在 at.xylem.mapin.mapext.MapsforgeTileProvider.readTileImage(MapsforgeTileProvider.java:75) 09-05 10:52:30.745:E/MapsforgeTileProvider(4279):在 at.xylem.mapin.mapext.MapsforgeTileProvider.getTile(MapsforgeTileProvider.java:67) 09-05 10:52:30.745:E/MapsforgeTileProvider(4279):在 com.google.android.gms.maps.model.TileOverlayOptions$2.getTile(未知 来源) 09-05 10:52:30.745: E/MapsforgeTileProvider(4279): at com.google.android.gms.maps.model.internal.g$a.onTransact(未知 来源) 09-05 10:52:30.745: E/MapsforgeTileProvider(4279): at android.os.Binder.transact(Binder.java:361) 09-05 10:52:30.745: E/MapsforgeTileProvider(4279): 在 gwl.a(SourceFile:96) 09-05 10:52:30.745:E/MapsforgeTileProvider(4279):在 gve.a(SourceFile:73) 09-05 10:52:30.745:E/MapsforgeTileProvider(4279):在 owd.run(未知 来源) 09-05 10:52:30.745: E/MapsforgeTileProvider(4279): at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:422) 09-05 10:52:30.745:E/MapsforgeTileProvider(4279):在 java.util.concurrent.FutureTask.run(FutureTask.java:237) 09-05 10:52:30.745:E/MapsforgeTileProvider(4279):在 java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:152) 09-05 10:52:30.745:E/MapsforgeTileProvider(4279):在 java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:265) 09-05 10:52:30.745:E/MapsforgeTileProvider(4279):在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) 09-05 10:52:30.745:E/MapsforgeTileProvider(4279):在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587) 09-05 10:52:30.745:E/MapsforgeTileProvider(4279):在 java.lang.Thread.run(Thread.java:841)

我还在http://www.openandromaps.org/ 尝试了奥地利地图,没关系,但地图文件很大(~400Mb)。 (来自 download.mapsforge.org 的奥地利地图文件或创建了我的我 ~ 210Mb)。

有人有解决这个问题的方法吗? (我已在https://code.google.com/p/mapsforge/issues/detail?id=519&colspec=ID%20Type%20Status%20Priority%20Stars%20Owner%20Summary%20Modified 发帖但没有反馈)

【问题讨论】:

    标签: openstreetmap mapsforge


    【解决方案1】:
     java.lang.IllegalArgumentException: invalid latitude: -90.14254932030728 
    

    我会仔细研究,纬度应该是 -90 到 90 之间的值。

    由于奥地利在 40-50N 左右,我会说这是您下载的文件中的数据错误,或者处理缩放的代码中的错误。

    鉴于 MapsForge 网站上的已知问题是:

    • 已知这些地图无法正确显示某些水域。
    • 某些地图的构建失败。我们正努力尽快为您提供这些地图。

    我不确定我对他们有多少信心。

    【讨论】:

    • 我知道无效值来自计算函数,并且我确信这个错误是由新版本的 Map Writer lib 中的一些更改造成的,因为它与从 openandromaps.org 下载的地图一样有效。 2. Mapsforge 可以用哪个离线地图代替?你能给我推荐一个吗?我已经尝试过 OSMANd 但它无法集成到我的应用程序中,因为它是完整的应用程序源代码,它不是一个库。我还尝试了一些使用图像图块或 MBtile 的库,但地图尺寸太大(例如维也纳地图,缩放 7-18 = 163Mb)所以它没有用。
    【解决方案2】:

    我通过使用旧的 mapsforge writer 版本 (0.3.0) 解决了我的问题

    我猜新版本去掉了检查有效数据功能。

    在使用地图编写器版本 0.3.0 生成地图文件期间,我看到了一些关于无效数据的警告消息

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-11-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-19
      相关资源
      最近更新 更多