我正在开发一个生成相对位置的系统,并为其提供绝对基准位置。这样,我可以为每个相对位置计算相应的绝对位置。
但我无法找到解决方案,因为它不是无关紧要的(相对坐标基于平面坐标系,绝对是纬度和经度,十进制度格式),因此无法解决问题。
为了进一步阐述,我从(0,0)的相对位置开始并记录该位置在绝对定位中转换的内容,即十进制度表示法,由Android Location API提供。然后,我计算每个组件的偏移量,这将产生一个新的相对位置。
有没有人在Java(或类似的)编程语言中找到一个解决方案来计算与这个最后相对位置相对应的绝对位置(我提到的相同十进制度格式)?即使只是公式也可以。
答案 0 :(得分:0)
你知道相反的立场意味着差异 所以
deltaLat = curLat - lastLat;
deltaLon : analog
使用绝对纬度/经度和所有增量,接收器可以重新创建绝对纬度/经度位置。 (有一些陷阱,请务必写一些单元测试!)
从当前的absPosition和最后一个delta,你可以很容易地计算出以米为单位的距离。
ADDIT。 info:你的增量不应该是米,这是非常复杂的。对于两个相同的deltaLat / Lon对,米的数量沿着地球变化,因此您总是需要绝对位置(至少是绝对纬度)