2012-07-17 67 views
0

過程中我有2點,一個靜態地圖註釋和移動的用戶設備。對於這兩點我有緯度和長度,對於移動設備,我有以N爲度數0,E爲90度等等的路線。我如何才能知道靜態的第二點是否在我的位置上是N,E,W,S?找出一個點是否在CLLocationCourse

回答

0

比方說,您的設備在點(x,y)和靜態點在(xs,ys)

考慮這兩點之間的直角三角形。它具有長度爲xs-xys-y的導管,因此x軸和斜邊之間的角度爲arctan((ys-y)/(xs-x))。需要注意的是在(xs,ys)方向斜邊點,所以這個角度告訴你這一點是在哪個方向。

如果角度爲0,靜點到東部。

如果角度爲pi/2,則靜態點位於北方。如果角度爲pi,則靜態點位於西部。

如果角度爲3*pi/2,則靜態點位於南方。

如果你想這個角度轉換,使0度是北,90度是東等,這只是一個計算的問題(360 + 90 - angle * 180/pi) % 360

相關問題