跟踪公交GPS点是否在路上 - Google Maps API

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了跟踪公交GPS点是否在路上 - Google Maps API相关的知识,希望对你有一定的参考价值。

我有一个公共汽车网络的实时GPS馈送,他们希望能够跟踪公共汽车是否离开路线。我可以获得巴士站和每个巴士服务的停靠点。巴士站通常非常靠近,使用谷歌地图,它可以在与巴士路线的路径匹配的站点之间创建一条路线。

我的问题是,最好使用Google Maps javascript或Web Services API,如何检测此GPS点是否不在路线上?

如果有更好的谷歌地图替代品?

感谢所有帮助,谢谢。

答案

我发现了一种实现这一目标的方法,使用巴士站的GPS位置,您可以使用Google Maps Directions API在Google Map路线上创建航点。然后,您可以使用输出结果中的PolyLine Overview查找沿路线的每个点。 PolyLine已压缩,需要进行解码以查找沿路径点的经度和纬度。

这里有详细说明:https://developers.google.com/maps/documentation/utilities/polylinealgorithm

然后,您可以使用沿着线路/路线的点来说明GPS标记是否在该区域内,然后如果公共汽车在公共汽车外关闭,那么公共汽车是在途中。您可能需要使用Google的Snap to road API来确保GPS点准确无误。

我希望这可以帮助别人。

编辑:为了澄清,使用Google Maps Directions API创建路线,这将为您提供“PolyLine概述”。这将为您提供沿着路线的每一个点,可以看到here。使用这些点,您可以在每个点之间创建一个边界框。然后,您可以计算路线上的点是否在边界框内。

重要的是要注意PolyLine概述是如何编码的,如我之前的回答中所提到的。谷歌已经制作了一个工具来演示这种解码here。在Javascript中我相信有一个内置的库命令来编码和解码。

希望这更清楚。

以上是关于跟踪公交GPS点是否在路上 - Google Maps API的主要内容,如果未能解决你的问题,请参考以下文章

GPS 追踪 - 点太远

可以使用 Google API 通过 android 移动 gps 跟踪位置吗?

GPS跟踪解决方案(Google Maps API)

如何获得实时跟踪结果?

如何在 iphone 中提供通知。(GPS 通知)

如何使用推送通知启动 GPS 跟踪