我有一個Google地圖區域,其路由未定義。這是我大學的校園。由於道路沒有顯示在地圖上,因此我想再建兩幢建築物和一些多段線來定義道路。然後,我將應用A *算法來查找一條折線與另一條折線之間的最短路線。該地圖將可用於Android移動應用程序。在基本狀態下,應用程序更新用戶的位置。例如,用戶可以請求去工程學院。現在我怎麼知道他在哪裏,我的意思是路線的來源是什麼,最接近的折線?這是事情的方式嗎?謝謝。谷歌地圖上的自定義路由
3
A
回答
1
使用OpenStreetMap數據;您可以加入OSM作爲貢獻者,並將建築物,道路和其他東西添加到地圖中。 OpenStreetMap是一種維基百科,但帶有地圖,而不是百科全書文章。
下載並處理校園的OpenStreetMap數據:獲取所有可用作路由的多段線;整理他們的觀點;識別多個多段線共有的點 - 它們是節點;創建連接這些節點的弧的有向圖。
使用有向圖實現A *算法。 A *絕對是使用最好的算法;快速,正確和有據可查。
使用GPS設備(您的代碼正在運行)找出您的用戶在哪裏。 GPS以緯度/經度給出位置; OpenStreetMap數據也在lat/long;所以應該工作正常。
這自然會涉及一些研究和努力工作。我保證它會做你想做的事情,因爲我自己做過這些事情(商業上 - 我不會鏈接到我的產品,因爲我已經被指責了;但是我自然聲稱做某件事在商業上有一定的規定) 。有很多開源軟件可以幫助解決這些問題。特別是,A *算法在維基百科上解釋得非常好。
0
我不認爲A *算法是正確的算法。對於最短路徑dijkestra算法更好。根據維基百科,A *只會更快,但結果相同。否則似乎很合理。
0
如果你的問題是要找到用戶的位置,那麼你可以使用GPS。 關於獲得的最短路線:A *是不是dijkestra快,所以它是一個不錯的選擇,但可能獲得的結果必須是從多晶線的節點,而不是從一個聚一行到其他
相關問題
- 1. Android - 谷歌地圖路由
- 2. 谷歌地圖AngularJS路由
- 3. 地圖自定義路由
- 4. 谷歌地圖 - 在地圖上的多個自定義按鈕
- 5. 自定義谷歌地圖圖標
- 6. 自定義圖標谷歌地圖V3
- 7. 自定義谷歌路線圖
- 8. 在谷歌地圖或蘋果地圖上使用自定義路線(iOS)
- 9. 谷歌地圖中的路由方向
- 10. 谷歌地圖自定義標記
- 11. Ionic - 谷歌地圖自定義按鈕
- 12. 自定義谷歌地圖註釋
- 13. 谷歌自定義搜索地圖
- 14. 自定義谷歌地圖位置點
- 15. IOS谷歌地圖自定義標記
- 16. Android谷歌地圖自定義標記
- 17. 谷歌地圖javascript自定義表面
- 18. 谷歌地圖API:V2:自定義infowindow bindInfoWindowHtml
- 19. 鏈接到自定義谷歌地圖
- 20. 自定義谷歌地圖標題
- 21. 自定義覆蓋谷歌地圖
- 22. 自定義android谷歌地圖v2
- 23. 刷新自定義infowindow谷歌地圖
- 24. 谷歌地圖自定義內容框?
- 25. 自定義谷歌地圖不縮小
- 26. 自定義谷歌地圖標記
- 27. 谷歌地圖(自定義)+嵌入
- 28. 自定義標記在谷歌地圖
- 29. 自定義外觀谷歌地圖
- 30. 在集羣上自定義谷歌地圖上的標記
我很欣賞你的答案,但是你知道什麼算法是用來得到最接近的折線嗎?這將是我的Dijkistra算法的來源 – user1066429
您最接近的折線是什麼意思? – Bytemain