0

我需要你的建议。我正在创建一个 Web 应用程序,我需要在其中查找特定城市是否存在于我的路径中。我正在使用谷歌 API 来获取路径方向,但它不会返回之间的城市。

例如,如果我从 A -> D 出发,我想知道 C ->D 是否沿着我的路径 A -> D 存在。如果我知道 A -> D 之间的城市,我可以轻松做到这一点。但谷歌 API 并没有透露这一点。有没有人有任何其他更好的建议。谢谢

4

1 回答 1

2

城市的名称不是很准确,您需要城市的 LatLng。

基于 LatLng,isLocationOnEdge()geometry-library 的方法允许您确定 LatLng(city) 是否位于(或靠近)为路线定义的折线:

google.maps.geometry.poly
  .isLocationOnEdge(LatLngOfCity,
                    new google.maps.Polyline({path:google.maps.geometry.encoding.decodePath(response.routes[0].overview_polyline.points)}),
                    0000000001));

response必须是方向结果,最后一个参数是公差

http://jsfiddle.net/doktormolle/DXCH8/

于 2012-11-19T23:11:51.837 回答