计算三维空间中两点之间的角度

时间:2015-06-21 14:40:42

标签: c# math unity3d euler-angles

我在 Unity ,P1(x,y,z)和P2(x,y,z)中有两个点(立方体游戏对象),我必须设置 MainCamera < / strong> P2P1之间的向量位置和旋转。

我尝试了不同的方法,但没有成功。 欢迎所有建议。 感谢。

1 个答案:

答案 0 :(得分:5)

我们可以根据点的产生找到2个向量之间的角度 angle = arccos(a * b / | a | * | b |);
其中:
a * b = ax * bx + ay * by + az * bz
| A | = sqrt(ax * ax + ay * ay + az * az)
| B | = sqrt(bx * bx + by * by + bz * bz)
或者只使用此方法:http://docs.unity3d.com/ScriptReference/Vector3.Angle.html