2016-03-24 34 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

感謝您的回答!只需幾個精度:我需要一個非常小的區域的離線地圖,實際上只有巴黎(現在),當你說「只要你有一組點」,你的意思是我可以得到所有的點由路線兩個座標分開,離線?那麼這是否意味着我可以在每個點之間繪製矢量並創建自己的路由系統? –

相關問題