我正在制作一个应用程序来监控我的GPS,然后进行一些计算,发现从度到米的转换为1deg = 111325m。当我在手机上获得GPS坐标时,它会在小数点后的8个位置进入。所以.00000001 * 111325 = .001m,所以我的手机GPS技术上至少应该能够精确到几分之一米吗?任何人都知道我的想法出错或者我错过了什么?
答案 0 :(得分:1)
所以我的手机GPS技术上至少不能精确到几分之一米吗?
没有
任何人都知道我的想法出错或者我错过了什么?
像分裂这样的数学运算可以引入许多小数位数,这些小数位数超出了基础科学所支持的范围。例如,pi的值具有无限小数位;这并不意味着你无限精确地知道橙色的周长。
答案 1 :(得分:0)
你混淆了两件事:
1)API中纬度,经度坐标表示变量的传递分辨率:可以是double或float。 和 2)GPS位置的物理精度,与实际位置相符。
(还有第三件事:GPS接收器内部的ecoordinate,在过去是一个4字节的int,给出5厘米的长度,今天使用8字节长。)
今天的GPS接收器通常具有3-6米的精度。
关于你的8位十进制:十进制纬度/经度之后的7位可以转换为4字节整数,这样可以得到3cm的分辨率。所以机会很高,一些内部API或GPS CHIP使用4字节的int来表示坐标。
然而,通过一些技巧,你可以达到几分米,就像你想要的那样。 这可以通过在手机不移动时绕过许多位置来实现。
在iphone上这不起作用,因为API在静止不动时提供了位置,但也许这适用于某些Android手机。