如何识别指南针是否朝向该位置?

时间:2012-08-10 13:41:26

标签: iphone gps xcode4.3

我正在开发一个增强现实项目,其中指南针显示到目的地的方向。工作正常,但我想检查当前航向是否指向目的地。 任何人都可以建议我这样做吗? 我在Google搜索了很多找不到任何方法?

提前致谢

1 个答案:

答案 0 :(得分:0)

您需要从您所在位置到目标位置的绝对方位

不幸的是,CLLocation没有对此进行调用,但你可以在这个问题中找到算法。

CLLocation Category for Calculating Bearing w/ Haversine function

让我们说轴承是90度

然后你把电话带到北方。

在获取位置更新时,您还可以使用CLLocation更新课程。

课程也可能是90度

找到两者之间的差异,90 - 90 = 0!你死在目标:)你需要合理化数字0到360,如果你面向北(0度),你的目标在你后面(180度)导致-180。如果您最终得到负数,则只需添加360。

我发现磁场指南针非常烦躁,所以如果你对手机轴承的变化有某种指数移动平均值,它看起来会更好。