1
如何從polyLine中給定的百分比返回latLng值? 我花了一天的時間使用插值和單個節點。他們在那裏做一個更簡單的功能,做出了一些g work的工作嗎?polyLine中的latLng百分比
Google maps API v3 謝謝!
如何從polyLine中給定的百分比返回latLng值? 我花了一天的時間使用插值和單個節點。他們在那裏做一個更簡單的功能,做出了一些g work的工作嗎?polyLine中的latLng百分比
Google maps API v3 謝謝!
http://www.geocodezip.com/scripts/v3_epoly.js
爲谷歌地圖JavaScript API第2移植到v3的寫入。 Documentation for the v2 version
有以下兩種方法:
這應該工作更短(如果包括腳本和折線變量爲「折線」):
var latlng = polyline.GetPointAtDistance(polyline.Distance()*(desired percentage)/100);
當然,如果你的多段線的長度沒有變化,那麼一旦每次你想要在多段線上找到一個點時使用它,計算長度會更有效率。
var polylength = polyline.Distance();
var latlng = polylength*(desired percentage)/100);
噢,非常感謝你!正是我需要的! –
它確實返回(lat,lng),但該點不一定在繪製的PolyLine上。需要幫忙。 :( – anusreemn
我已經嘗試過這種方法,但在大多數情況下都適用,但在某些例子中,例如從美國到澳大利亞的路線會導致一些問題。顯然,Google地圖在太平洋上繪製了一條從美國到澳大利亞的線路,但此庫假定這裏的路線是在非洲畫的,[Here](http://i60.tinypic.com/znwnpf.png)就是一個例子,你可以看到一架從印第安納州起飛的飛機,美國沒有遵循Google Maps的路線在這種情況下'GetPointAtDistance'方法給出了錯誤的'latlng'。 –