【问题标题】:Get Right or Left turn according to bearing value根据方位值获得右转或左转
【发布时间】:2013-07-17 11:29:38
【问题描述】:

我有一个三个纬度坐标,它们组成两条线 A 到 B 到 C。还有一个函数可以在 android 中以 0-360 的方式计算线 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

A-B 轴承为 184 B-C 轴承为 109

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

【问题讨论】:

    标签: android navigation geolocation geometry compass-geolocation


    【解决方案1】:

    oOOPS... 我计算错了。

    这是电子表格中的一些内容,我刚刚测试了它..

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

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

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

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

    【讨论】:

    • 为什么要添加 1000 是出于任何原因...添加后它也不起作用??
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-24
    • 1970-01-01
    • 1970-01-01
    • 2013-07-12
    • 1970-01-01
    • 2017-03-05
    相关资源
    最近更新 更多