android.hardware.GeomagneticField类有一个方法getDeclination,我们可以用它来找到真北。我在StackOverFlow和其他站点上看到的所有示例都将这个值添加到磁北,以找到真正的北方,如下所示:
True north = Magnetic North + Declination
但是在这个问题上的一篇文章表明这可能是错误的:使用方位传感器指向特定位置
不幸的是,没有人在帖子上发表评论或投票。
Android的文档显示,以正值计算,“意味着磁场从正北向东旋转了那么多”。而此页有几个数字显示了同样的结论:“正向偏斜--磁北在真北的东面”。换言之,衰落的定义是:
Declination = Magnetic north - True North
在磁北的基础上重新排列以找到真正的北:
True north = Magnetic north - Declination
因此,添加或减去衰落?是正确的,如果添加是正确的,为什么?
发布于 2016-07-02 21:05:18
我来这里是因为我自己也在问同样的问题。我现在正在研究这个问题,所以我可能有点弄错了。
你想要真正的北方,一个不受你的位置影响的地方(更确切地说,你的位置受到地球磁场,链接)的影响。
当你导航时,你应该加或减斜度,这取决于你使用指南针时的位置,也就是说,磁东北还是向西到真正的北方?东西向。
"GeomagneticField“类可以为您计算偏移量,如果我正确理解该方法的描述,它还会告诉您您是东向还是西倾:正表示您的东是多少,而对于您是多少西方。
1)找出你的航向,即相对于磁北(由磁传感器获得)
2)使你的斜度下降
如果偏斜是正的,那么你的磁北是向真正的北方东面,所以你的航向是“向右”,从真正的北方(某种程度)!因此,我们加上:航向(磁)+斜度=真北
如果偏斜是负的,你的磁力北方是西面到真正的北方,所以你的航向是“向左”,从真正的北方(某种程度)!我们减去(绝对值!),因此:航向(磁)斜度=真北。
好的!我们可以看到,减去绝对值就像增加负数,所以我想你总是可以把斜度加到标题上。
对你来说,这就是为什么和什么(我要说的是底线)。就像我说的,我只是交叉引用了几页来得到这个答案(上面提到的还有这一个,所以请检查我的链接并验证我的答案:)
https://stackoverflow.com/questions/30778494
复制相似问题