2016-03-24 36 views
0

我想开发与离线地图工作的一个应用程序,我需要能够:是否可以混合基于单个库的不同API?

  • 地理编码
  • 路线两个坐标之间的两个坐标
  • 搜索与地方之间
  • 计算距离自动完成

所以这些都是非常困难的任务,因为他们都必须离线工作。我发现了很多Apis,像MapsMe或MapsForge,都说它们基于osm库。那么这是否意味着我应该能够“混合”这些apis并使它们在单个地图上工作? 例如:使用MapsMe的nice地图和MapsForge的路由系统在同一地图上

由于

回答

0

皆有可能。也就是说,他们都可以使用相同的source数据(开放式街道地图),但osmdroid和mapsforge对它们进行不同的预处理。 Osmdroid通常只有displays通过服务器或使用mapsforge prerendered瓷砖。 Osm Bonus Pack使用在线资源(仅限在线资源)添加路由。

Mapforge将osm数据预处理为中间数据库格式。然后按需要在设备上呈现瓷砖。就我所能确定的POI信息而言,需要另一个单独的数据库。最后我检查了他们没有任何路由功能,但正在努力将POI信息转换为中间数据库格式。与此相关的信息的最佳地点是mapsforge github网站。

计算两点之间的直线距离并不重要,不需要任何地图引擎。这只是数学。沿着路线的距离也是直线地图,只要你有一组点。不要忘记地球曲率中的因素。

地理编码,将纬度/经度转换为近似或准确的地址,然后再返回可以使用osm数据完成,但我不知道任何事情都可以在整个地球上以离线方式进行。

您还必须考虑地理区域。 osm数据非常庞大,大约40GB的地球,压缩。很明显,你需要以某种方式对数据进行分组。

+0

感谢您的回答!只需几个精度:我需要一个非常小的区域的离线地图,实际上只有巴黎(现在),当你说“只要你有一组点”,你的意思是我可以得到所有的点由路线两个坐标分开,离线?那么这是否意味着我可以在每个点之间绘制矢量并创建自己的路由系统? –

相关问题