2010-01-30 37 views

回答

1

您可以在GDirectionsOptions可選參數上將getPolyline選項設置爲GDirections load請求。這將爲您提供路線的折線數據。

一旦你有了這些數據,你可以遍歷多段線中的每個點,並確定到每個自己的數據點的距離(你可以使用GLatLng distanceFrom方法來計算距離)。

一旦你的每條數據點的距離最短,你就可以根據一定的容差找出該點是否在路徑上。

編輯

雖然很纖細反覆調用的GLatLng distanceFrom方法(這只是一個實用的方法來得到兩個點之間的距離),我意識到我的答案簡化了問題。爲了獲得距離路線的精確距離,您需要確定最近兩點之間的多段線距離(而不僅僅是距離每個點的距離)。

+0

我認爲你的意思是distanceFrom而不是getDistance。 getDistance是一個GDirections方法,並且您不希望爲折線上的每個頂點執行GDirections調用,因爲這會非常緩慢並很快進入您的GDirections配額。 – 2010-01-30 21:04:07

+0

不是。我在說* GLatLng * * getDistance *這是一種實用方法來檢查兩個地理點之間的距離。 – RedBlueThing 2010-01-30 22:24:25

+0

哎呀...我剛剛意識到混亂的原因。我的意思是GLatLng上的* distanceFrom *方法。 – RedBlueThing 2010-01-30 23:39:57

1

比爾查德威克有this page底部的「點到多義線或多邊形的距離」代碼,這可能是有用的。

相關問題