2

我正在构建一个 Android AR-App(是的,另一个),但我更感兴趣的是理解它背后的数学而不是使用框架(知道这个这个)。

给定位置 (lat1,long1) 和 (lat2,long2) 我正在搜索从 Location1 到 Location2 的方向向量 (x,y,z)。

使用这个站点,我可以计算 Location1 和 Location2 之间的距离和(初始)方位。

现在我开发了两种方法(忽略高度)

x = distHaversine(lat1,long1,lat1,long2);
z = distHaversine(lat1,long1,lat2,long1);
if (lat1 < lat2)
  z *= -1;
if (long1 > long2)
  x *= -1;

distance = distHaversine(lat1,long1,lat2,long2);
angle = 90.0-bearing(lat1,long1,lat2,long2);
x = cos(angle)*distance;
z = sin(angle)*distance;

但现在我被困住和烦躁......结果不应该是一样的吗?我在哪里可以找到我的推理错误?我如何计算方向向量(或者更确切地说:为什么我的第二种方法没有工作?)?

谢谢你的帮助

4

0 回答 0