我的應用程序給出了一個Geocorrdinates列表,現在我必須確定哪些座標位於已定義區域內。例如,搜索將定義爲:顯示100個座標位於1平方公里區域內的所有區域。因此,我必須找出哪些座標在1平方公里的區域內並且多於100個。 但是,對於我對地理座標的理解,這似乎是一項艱苦的工作,我希望有人能夠幫助我。如何確定哪些地理座標位於已定義的區域內?
緯度座標是一致的,兩度之間的距離是111km。例如N50,985°和N50,995°之間的距離爲1,11km。兩個經度座標之間的距離不是那麼容易,取決於緯度座標。但是說實話,我真的不知道如何開始。
有人有一個想法,可以幫助我嗎?
謝謝
twickl
呃,問題是這必須在iPad/iPhone /移動設備上運行而不連接到後端。必須有一種方法來過濾座標,以便了解哪些座標是在一個定義的區域中:(我希望我的問題很清楚,我不需要知道哪些位於特定區域,但哪些位於哪個區域一起在1平方公里的區域 – CaptnCrash 2010-09-09 14:15:06
是否必須是「正方形/直角/多邊形」?因爲做半徑搜索會容易得多!就像「哪些點最遠離我離開x公里?」也可以做km^2,但也有一個圓,如果你有4平方公里^這將是一個半徑爲sqrt(4平方公里/ pi)的圓,如果你有一組點,嘗試用盡可能少的微積分操作儘可能地消除它,然後遍歷其餘部分,檢查歐氏距離是否小於或等於半徑,這可能相當精確到幾百甚至上千英里;) – sled 2010-09-09 14:45:15
這裏有一個很好的公式來計算兩個WGS84座標之間的距離,http://www.movable-type.co.uk/腳本/經緯度,vincenty.html – sled 2010-09-09 14:47:38