【发布时间】:2014-12-28 22:41:13
【问题描述】:
我想创建一条从 A 点到 B 点的路线。
我想显示旅行者在该路线上的当前位置。
如果旅行者偏离路线,我想实时更新路线以补偿。
Google 地图的基本功能,但我希望在我自己的应用程序中使用它。
我查看了 Google 和 Bing Maps API,似乎没有什么非常直观。
这样做的最佳方法是什么?
【问题讨论】:
标签: google-maps routing bing-maps directions
我想创建一条从 A 点到 B 点的路线。
我想显示旅行者在该路线上的当前位置。
如果旅行者偏离路线,我想实时更新路线以补偿。
Google 地图的基本功能,但我希望在我自己的应用程序中使用它。
我查看了 Google 和 Bing Maps API,似乎没有什么非常直观。
这样做的最佳方法是什么?
【问题讨论】:
标签: google-maps routing bing-maps directions
逻辑:
根据您要实现的目标,最重要的是,您计划如何实现这些功能,您可以考虑分两步进行。
1/ 生成基本路由并在周围创建缓冲区
要生成它,请使用您选择的平台并检索您可以用来生成的几何图形
2 / 检测它是否离开原始缓冲区并生成新路由并返回步骤 1
获得缓冲区后,您会定期(例如根据您的位置事件)检查与缓冲路线的交叉点,如果超出缓冲区,则重新创建路线等等。
实施:
为了做到这一点,您可能对使用 Turf 库感兴趣,请参阅以下示例:
http://turfjs.org/examples/turf-buffer/
结合Within()方法:
http://turfjs.org/examples/turf-within/
这里有草皮: http://turfjs.org/
考虑
请注意每个平台的使用条款,因为根据您要实施的案例和平台,您可能不会使用驾驶/导航应用程序。
您可能可以很容易地实现它,您可能可以添加一些东西来优化精度(例如轴承到下一个几何位置、速度曲线...),但我相信它至少会覆盖 90根据所描述的案例,您的需求百分比。
【讨论】: