我正在研究可跟蹤移動的android應用程序。我的問題是我需要在飛機上將gps座標轉換爲二維座標。將WSG84 GPS座標轉換爲x y平面上的笛卡爾座標
我現在獲得的座標是WSG84格式。我需要這些座標,因爲我需要計算一個點和一條線之間的距離,以便了解我是否距離預定義的路徑太遠。我所在的領域在整個地球方面並不算大,所以我認爲不關心z軸是可以的。
我沒有地圖,所以我只需要在後臺計算這些座標。謝謝!
我正在研究可跟蹤移動的android應用程序。我的問題是我需要在飛機上將gps座標轉換爲二維座標。將WSG84 GPS座標轉換爲x y平面上的笛卡爾座標
我現在獲得的座標是WSG84格式。我需要這些座標,因爲我需要計算一個點和一條線之間的距離,以便了解我是否距離預定義的路徑太遠。我所在的領域在整個地球方面並不算大,所以我認爲不關心z軸是可以的。
我沒有地圖,所以我只需要在後臺計算這些座標。謝謝!
此:
我需要計算才能點與線之間的距離,以瞭解如果我從一個預先定義的路徑
似乎越來越太遠你提出的關鍵問題。這就是我會回答的。
從嚴格意義上說,從球形座標轉換到歐氏座標是不可能的,這就是爲什麼人們發明UTM系統的原因之一。爲你的目的使用UTM的問題是給定的緯度/經度可能在不同的地區,所以(x,y)對不會有用地關聯。
假設你有三個點A,B和P,其中A &乙定義線的起點和終點,P是你想知道,那麼我的建議是最好的一點是:
如果點實際上非常接近對方那麼你的工作的空間是局部歐氏,所以從A到B線的距離爲:
d sin(alpha - theta)
上有計算大大量的在線引用用於WGS84的Java中的圓距和方位。例如。
http://openmap.bbn.com/svn/openmap/trunk/src/openmap/com/bbn/openmap/proj/GreatCircle.java
...只是衆多之一。
感謝@RabidMutant,我認爲這個解決方案可以工作,但它取決於你的意思是「非常接近彼此」。我工作的地區幾乎是羅馬的所有城市 – cec91
羅馬很好。羅馬到巴黎,不太如此。 – RabidMutant
還有很多工具可以計算距離方位。一旦你寫了你的代碼,我建議通過與在線工具進行比較來對其進行測試。 – RabidMutant