我正在试验一下AR。我从指南针中得到了我正在寻找的方向的角度。我知道我自己的位置和另一个物体(POI)的位置,这个位置是以纬度和经度的形式给出的。
现在我想知道如何计算我正在寻找的方向与POI之间的角度。
答案 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)不会。