Google Maps API v3 Polylines未绘制

时间:2012-01-18 17:58:04

标签: google-maps-api-3 data-visualization

App以这种方式工作: 用户输入起始位置和距离。用户可以选择在道路上绘制圆圈或线条。圈子工作正常。用来工作的线。

当线条时,代码找到起始位置的纬度/经度,然后是用户设定的距离(例如,100km)的原点N,S,E,W。从N目的地开始,代码调用google.maps.DirectionsService()以获取从原点到N的路线。这将在route.overview_path中返回纬度/经度数组。

注意:我可以使用directionsRenderer()来绘制路线,但是,绘制的距离将大于用户设置的距离。绘制从原点到N点的整条路线可能是道路上方124公里,我只想画100公里。

相反,我逐步执行route.overview_path []数组,检查该点与原点之间的距离,将每个点添加到新数组。当距离大于用户设置的dist时,我停止,弹出最后一个元素,然后根据这个较小的第二个数组创建一个新的折线。

我花了一整天时间在Chrome的开发者模式中浏览javascript,设置断点,观看本地等等。在google.maps.Polyline({})中传递的点数组是一系列独特的点。我只是想不通他们为什么不渲染。

最终,代码用于绘制从原点开始的4条线,一条朝向北方,一条朝向东方,南方,西方。等....

代码在这里:http://whosquick.com/RunViz.html

感谢您的关注。

1 个答案:

答案 0 :(得分:0)

没关系。解决了它。

var objGeo = new LatLon(Geo.parseDMS(myroute.overview_path[0].Pa), Geo.parseDMS(myroute.overview_path[0].Qa));

我无意中用Qa切换了Pa。