2011-08-12 155 views
3

我使用Phonegape和jQuery mobile爲Android智能手機構建應用程序。如何計算兩個地理位置之間的角度?

我想要構建一個應用程序,該應用程序使用指向給定地理位置的箭頭,因此用戶知道他/她必須走哪個方向才能到達該點。
所以我需要一個函數或公式來確定到目標​​地理位置的角度(最好以度爲單位)。有誰知道我該怎麼做?

回答

3

你在找什麼稱爲方位角,即給定的物體和北方之間的角度。

要找到該角度,請使用公式:a = arctan(|(y2-y1)/(x2-x1)|) * 180/pi其中A點爲(y2,x2),B點爲(y1,x1)。至於你如何在代碼中做到這一點,我不知道。我不會與這些平臺合作。 任何人對此有任何意見?

+0

嘿邁克爾,謝謝你的回覆!所以我必須確定兩個位置的方位角,之後我可以確定位置1到位置2的角度,對嗎? –

+0

不,你看,一旦你有兩個點的XY(或笛卡爾,同樣的東西)座標,你可以將它們插入到公式中,並獲得北面和連接兩個點的直線之間的角度。 假設您站在座標爲(100,100)的A點,並且您想要座標爲(200,200)的B點。 將這些值插入公式中以找出您應該走的角度: 'a = arctan(|(200-100)\(200-100)|)= arctan(| 100 \ 100 |)= arctan 1 = 0.78' 這意味着你應該從A點到0.78度到達B點。 – Michael

+0

好吧,對不起,這是錯誤的。你得到的結果是弧度(另一種形式爲角度)。你需要做的是將結果乘以180/pi。 在我們的例子中,會給你45度,這更有​​意義。 修正的公式: 'a = arctan(|(y2-y1)/(x2-x1)|)* 180 \ pi' – Michael

相關問題