android.hardware.GeomagneticField类有一个方法getDeclination,我们可以用它来找到真北。我在StackOverFlow和其他站点上看到的所有示例都将这个值添加到磁北,以找到真正的北方,如下所示:
True north = Magnetic North + Declination
但是在这个问题上的一篇文章表明这可能是错误的:
不幸的是,没有人在帖子上发表评论或投票。
Android的文档显示,以正值计算,“意味着磁场从正北向东旋转了那么多”。而有几个数字显示了同样的结论:“正向偏斜--磁北在真北的东面”。换言之,衰落的定义是:
Declination
想象一下这个被区别对待的组合:
type Direction =
| North
| South
| East
| West
现在假设我想要一个只接受(North,South)或(East,West)元组的类型。也许这将描述只从北到南或从东到西的火车路线。(北,东)和(南,西)应该被禁止,也许是因为火车不是那样运行的。
这不起作用:
type TrainLines =
| North, South
| East, West
即使这不起作用,也许您可以看到我正在尝试做什么。
这是有效的,但并不限制可能性仅限于(北,南)和(东,西):
type