1

我有一个三个经纬度坐标,它们组成两条线 A 到 B 到 C。还有一个函数可以以 0-360 的方式计算线 AB 或 BC 的 android 中的方位。我计算左转或右转通过做轴承(AB)-轴承(BC)如果差异为+ve假设为右如果-Ve我将作为左...它适用于许多情况,但在某些情况下它不起作用...案例哪个不起作用是

A-Lat:17.445849, Lng:78.501665 B-Lat:17.445255, Lng:78.501619 C-Lat:17.444593, Lng:78.503553

AB的轴承是184 BC的轴承是109

差 (AB)-(BC) 为 75,即 +ve,因此它应该是正确的,但实际上在地图中它是左侧的。所以任何人都可以给我一个很好的方程式来获得转向方向....

4

1 回答 1

0

哎呀...我计算错了。

这是电子表格中的一些内容,我刚刚对其进行了测试..

=MOD(A1+540, 360) - MOD(B1+540, 360)

负数表示左。
对其他错误引导的代码感到抱歉。

bool right = (( (a1 + 540) % 360 - (b1 + 540) % 360 ) > 0 );

不太准确,因为零变化会被视为左..我会把那一点留给你。

于 2013-07-17T13:19:43.760 回答