从移动物体的速度x,y获得旋转角度?

时间:2013-04-03 01:03:46

标签: java flash math actionscript formula

用于根据行进速度或矢量方向确定移动物体旋转角度的公式是什么?

例如,如果飞机从位置(x0,y0)=(0,0)向位置(x1,y1)=(200,100)移动,那么飞机将面对哪个角度?

2 个答案:

答案 0 :(得分:3)

通过旋转角度,你显然意味着方位角。函数Math.atan2(dy, dx)是正确的方法。在使用p1 = (x1, y1) = (200,100)p0 = (x0, y0) = (0,0)的示例中,您需要Math.atan2(y1 - y0, x1 - x0)。这将以弧度返回角度。要转换为度数,请乘以180 / Math.PI

答案 1 :(得分:2)

要获得两点之间的角度,请将点插入此代码:

var _radians:Number = Math.atan2(y2-y1, x2-x1);

“_ radians”是以弧度表示的角度。

要旋转DisplayObject,可以在将角度转换为度数后使用其旋转属性。

var _degrees:Number = _radians * ( 180 / Math.PI );
_displayObject.rotation = _degrees;

您可能需要在旋转中添加一个内容以与您的艺术品对齐。