如何计算两个地理/GPS坐标之间的角度?
我有两个GPS坐标 e、 g.(Lat1,Long1)和(Lat2,Long2) 谁能帮我找到这两点之间的夹角 数值应为0-360度。取自上一篇SO文章:如何计算两个地理/GPS坐标之间的角度?,gps,coordinates,latitude-longitude,angle,Gps,Coordinates,Latitude Longitude,Angle,我有两个GPS坐标 e、 g.(Lat1,Long1)和(Lat2,Long2) 谁能帮我找到这两点之间的夹角 数值应为0-360度。取自上一篇SO文章: float dy = lat2 - lat1; float dx = cosf(M_PI/180*lat1)*(long2 - long1); float angle = atan2f(dy, dx); 我想你指的是方位,而不是位置之间的角度:如果(lat1,long1)存储在位置对象loc1中,并且(lat2,long2)存储在loc2中
float dy = lat2 - lat1;
float dx = cosf(M_PI/180*lat1)*(long2 - long1);
float angle = atan2f(dy, dx);
我想你指的是方位,而不是位置之间的角度:如果(lat1,long1)存储在
位置对象loc1
中,并且(lat2,long2)存储在loc2
中,则从loc1到loc2的方位如下:
float bearing = loc1.bearingTo(loc2);
结果以正北以东的度数及其初始方位角为单位(如果loc1和loc2彼此相距较远,这一点很重要)
Location
类中还有一些其他有用的方法,请参见此处了解更多详细信息:
编辑:我假设Android是答案,但是是的,标签并不意味着 这是家庭作业吗?如果是,请将其标记为家庭作业
。如果他在安卓系统上,这很好,但标签上没有说他是。什么是M_PI
和atan2f
?@CF84:请查看M_PI
的链接。对于atan2f,请看一看。@FaCoffeeM_PI
是一个PI。请参阅:atan2f
是y/x的反正切,请参阅: