如何计算两个地理/ GPS坐标之间的角度?

时间:2012-03-05 11:45:20

标签: gps coordinates latitude-longitude angle

我有两个GPS坐标

e.g。 (Lat1,Long1)和(Lat2,Long2)

请有人帮我找到这两点之间的角度。

值应为0-360度。

2 个答案:

答案 0 :(得分:6)

取自this之前的SO帖子:

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

答案 1 :(得分:5)

我认为你的意思是指向而不是位置之间的角度:If(lat1,long1)存储在Location对象loc1中,而(lat2,long2)存储在{{ 1}}你得到了从loc1到loc2的方位:

loc2

结果是在真北以东的度数及其初始方位(如果loc1和loc2相互远离,这很重要。)

float bearing = loc1.bearingTo(loc2); 课程中还有其他一些有用的方法,详情请见此处:http://developer.android.com/reference/android/location/Location.html

编辑:我认为Android的答案是肯定的,但是,标签并不意味着......