用于从速度或矢量行进方向确定运动物体旋转角度的公式是什么?
例如,如果一架飞机从位置 (x0, y0) = (0,0) 向位置 (x1,y1) = (200, 100) 移动,飞机将面向哪个角度?
用于从速度或矢量行进方向确定运动物体旋转角度的公式是什么?
例如,如果一架飞机从位置 (x0, y0) = (0,0) 向位置 (x1,y1) = (200, 100) 移动,飞机将面向哪个角度?
通过旋转角度,您显然是指方位角。该功能Math.atan2(dy, dx)
是正确的方法。在您使用 and 的示例中p1 = (x1, y1) = (200,100)
,p0 = (x0, y0) = (0,0)
您需要Math.atan2(y1 - y0, x1 - x0)
. 这将以弧度返回角度。要转换为度数,请乘以180 / Math.PI
。
要获得两点之间的角度,请将这些点插入以下代码:
var _radians:Number = Math.atan2(y2-y1, x2-x1);
“_radians”是以弧度表示的角度。
要旋转 DisplayObject,您可以在将角度转换为度数后使用它的旋转属性。
var _degrees:Number = _radians * ( 180 / Math.PI );
_displayObject.rotation = _degrees;
您可能需要在旋转中添加一个内容以与您的艺术保持一致。