2012-03-05 2 views

답변

4

this 이전 SO 게시물에서 촬영 :

float dy = lat2 - lat1; 
float dx = cosf(M_PI/180*lat1)*(long2 - long1); 
float angle = atan2f(dy, dx); 
+1

'M_PI'와'atan2f'는 무엇입니까? – FaCoffee

+1

@ CF84 :'M_PI'에 대한 [this] (http://stackoverflow.com/questions/15231466/whats-the-difference-between-pi-and-m-pi-in-objc) 링크를보세요. . 'atan2f'에 대해 [여기] (http://stackoverflow.com/questions/7418353/angle-between-two-lines-is-wrong)를보십시오. – npinti

5

난 당신이에 베어링이 아닌 위치 사이의 각도를 의미한다고 가정하면 (LAT1은, long1)는 Location 객체 loc1과에 저장됩니다 (LAT2, long2)는 다음과 같이 LOC2하는 LOC1에서 베어링을 얻을 loc2에 저장됩니다

float bearing = loc1.bearingTo(loc2); 

결과는 LOC1 및 LOC2 훨씬 AP 경우 동쪽 진북 및 중요의 초기 베어링 (의 정도에 서로 예술).

Location 클래스의 다른 유용한 방법이 있습니다, 자세한 내용은 여기를 참조하십시오 http://developer.android.com/reference/android/location/Location.html

편집 : 나는 대답 안드로이드를 가정하지만, 예, 태그 것을 의미하지는 않습니다 ...

+2

그가 안드로이드에 있다면 좋겠지 만 태그는 자신을 말하지 않습니다. – JeremyP