查看方向和纬度/经度之间的角度

时间:2013-08-20 14:54:39

标签: iphone augmented-reality compass-geolocation

我正在试验一下AR。我从指南针中得到了我正在寻找的方向的角度。我知道我自己的位置和另一个物体(POI)的位置,这个位置是以纬度和经度的形式给出的。

现在我想知道如何计算我正在寻找的方向与POI之间的角度。

1 个答案:

答案 0 :(得分:0)

点产品:

a . b = ||a|| ||b|| cos(t)
t = acos( (a.b)/(||a|| ||b||) )


||vector|| = length of vector (magnitude)
t          = angle between the two vectors

对于你拥有的每架飞机,你可能需要做几次这样的事情。 (2D为1x,3D为2x)

或者:

    /|
   / |
h /  | y
 /   |
/____|
  x

t是左下角,我们假设它是你的对象,右上角将成为你的另一个对象

x = obj2.x - obj1.x
y = obj2.y - obj1.y
h = sqrt( (x*x) + (y*y) )

sin(t) = y/h
cos(t) = x/h
tan(t) = y/x

t = asin(y/h)
t = acos(x/h)
t = atan(y/x)

第一种方法更好的原因在于它是您当前轮换的帐户。第二种方法(使用atan,asin和acos)不会。