0

我正在研究需要在有限的區域內進行路由的iphone應用,例如國家的公園,歷史景點,熱門市場或偏遠地區。創建新的地理地圖數據或使用修改後的地圖

鑑於谷歌地圖,openstreetmaps或任何其他地圖不應該有我的應用程序應該工作的區域內的確切地點,什麼是最好的或可能的方式來執行此要求?

我知道我可以編輯的地圖(如OSM)來標記的POI,但我不希望這些改變沒有我的允許(可能我會要求編輯後收留他們在我的服務器上?)

我還需要爲相同區域提供路由和導航支持,具體取決於用戶的當前位置。根據許可證:如果我使用谷歌地圖

http://code.google.com/intl/de/apis/maps/iphone/terms.html

實時路由是不允許的。

如果我想爲該地區創建我自己的地圖,建議使用它。

回答

1

原則上,沒有什麼可以阻止您獲取OpenStreetMap數據區域,將其存儲在您自己的服務器或設備上,然後只是不會從OpenStreetMap社區引入任何更新,從而消除對OpenStreetMap的任何擔憂貢獻者在未經您許可的情況下改變事物

在實踐中,您需要做一些相當深入的開發工作來構建由一些OSM數據支持的iPhone應用程序。我沒有描述一個開箱即用的解決方案。在實現這一點時,首先您可以選擇光柵格式(地圖區域表示爲平鋪圖像)或矢量格式(osm XML格式,或者您自己的格式)。實際上,你需要一個向量表示來進行路由計算,但是你也許可以將路由查詢結果作爲疊加層進行平鋪光柵顯示。您需要決定是否需要路由計算在設備上運行或在自己的服務器上運行。

以OpenStreetMap的數據擺在首位一大塊,加入到它,並保持它分開......那是很容易位:-)

+0

感謝您的回答。我只是想知道你如何執行最短路線計算。目前我所知道的是你可以通過查詢OSM服務器來做到這一點。但是,由於將數據存儲在我的服務器上似乎更好,因此這樣做的前提條件是什麼? – krammer

+1

這是另一個問題。如果您在http://help.openstreetmap.org上提問,您可能會注意到更多知識淵博的OpenStreetMap民間人士,不過無論如何,作爲一個起點,開放源代碼的各種位置在此處列出:http:// http:// wiki.openstreetmap.org/wiki/Routing –