【发布时间】:2015-01-12 03:46:50
【问题描述】:
我正在构建一个应用程序,它给出了一个位置的纬度和经度,以及我当前位置的纬度和经度,我想指向一个指向目的地的箭头。我可以在 0-360 度的值中获得点的角度。我也可以让我的指南针以度数为单位。使用这个公式:
deltaAngle = abs( floor( compassHeading - gpsAngle ) )
在大多数情况下,当指南针从 0 移动到 359 时,指针会跳跃大约 90 度。这是我接近 0 度时的输出:
angle: 317.86451281503 compass 358.80545043945 deltaAngle: 40 40.940937624423
angle: 317.86451281503 compass 357.77563476562 deltaAngle: 39 39.911121950595
angle: 317.86451281503 compass 358.86737060547 deltaAngle: 41 41.002857790438
angle: 317.86451281503 compass 359.96002197266 deltaAngle: 42 42.095509157626
angle: 317.86451281503 compass 1.178640127182 deltaAngle: 317 -316.68587268785
angle: 317.86451281503 compass 2.3249001502991 deltaAngle: 316 -315.53961266473
我怎样才能算出这个点附近的数学?我感觉会涉及到 % 180,然后如果我需要指向左或右,则添加或减去一些东西。
【问题讨论】:
标签: math gps directions compass