在 Excel 中,无法用十进制度数计算两点的方位。我使用以下公式:
=MOD(ATAN2(SIN(LonB-LonA)*COS(LatB),COS(LatA*SIN(LatB)-SIN(LatA)*COS(LonB-LonA))),6.30318)
示例数据
- 纬度 A (38.6318909290283)
- 经线 A (-90.2828979492187)
- 纬度 B (38.5352759115441)
- 经度 B(-89.8448181152343)
我得到的答案是 5.024 度,应该是 105.619 度
答案1
看起来您在输入 Excel 时输入了错误的公式。
另外,您需要将度数转换为弧度,因为 Excel 将三角函数的输入视为弧度。最后,需要将 ATAN2 的结果转换回度数。解决方案:
=DEGREES(ATAN2(COS(RADIANS(latA))*SIN(RADIANS(latB))-SIN(RADIANS(latA))*COS(RADIANS(latB))*COS(RADIANS(lonB-lonA)),SIN(RADIANS(lonB-lonA))*COS(RADIANS(latB))))
答案2
使用 UTM 东距和北距坐标(以米为单位)计算两个 x,y 位置之间以北(0 度)为基准的方位角,我使用以下公式:方位角=
=IF(AND(x>=0,y>=0),90-MOD(360+DEGREES(ATAN2(x,y)),360),450-MOD(360+DEGREES(ATAN2(x,y)),360))
单元格名称“x”= 东距(目标减去源)之间的距离(差异),单位
为米 单元格名称“y”= 北距(目标减去源)之间的距离(差异),单位为米