我有一个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. 地图自定义路由
- 3. 谷歌地图 - 在地图上的多个自定义按钮
- 4. 自定义谷歌路线图
- 5. 在谷歌地图或苹果地图上使用自定义路线(iOS)
- 6. 谷歌地图自定义内容框?
- 7. 刷新自定义infowindow谷歌地图
- 8. 自定义android谷歌地图v2
- 9. 自定义谷歌地图标记
- 10. 自定义谷歌地图标题
- 11. 自定义谷歌地图注释
- 12. 谷歌地图API:V2:自定义infowindow bindInfoWindowHtml
- 13. IOS谷歌地图自定义标记
- 14. 谷歌自定义搜索地图
- 15. Ionic - 谷歌地图自定义按钮
- 16. 谷歌地图javascript自定义表面
- 17. 在集群上自定义谷歌地图上的标记
- 18. 绘制多个路由谷歌地图
- 19. 谷歌地图与黑莓路由
- 20. 谷歌地图路由语法
- 21. 匹配路由谷歌地图android
- 22. 通过SVG路径自定义谷歌地图标记
- 23. 谷歌地图显示自定义路径
- 24. 谷歌地图V3自定义地图标记图标但是从谷歌
- 25. 地图自定义路由ASP.NET MVC5
- 26. 谷歌地图上没有显示自定义图标
- 27. 谷歌地图:“地图未定义”
- 28. 谷歌地图上的自定义覆盖?
- 29. 自定义谷歌地图与IE上的奇怪黑点
- 30. 标记mouseover谷歌地图上的自定义div
我很欣赏你的答案,但是你知道什么算法是用来得到最接近的折线吗?这将是我的Dijkistra算法的来源 – user1066429
您最接近的折线是什么意思? – Bytemain