左上基準のオブジェクトをセンター基準で回転させる //AS3.0

左上を基準点にしてあるオブジェクトを単純にrotationを使って角度をつけると、左上の基準点を中心に角度が付きます。
しかし、今回は左上基準点なのは、画像読込み上変更できないので、基準点を守ったままrotationで角度がつけられるよう、X座標、Y座標も動くようにします。

下のサンプルでは、30度回転させる場合です。
オブジェクトの基準点と回転の中心点との座標の差を三角関数のsinを使って補正します。
三角関数のsinは、ActionScriptでは、次のように使います。
Math.sin(Math.PI/180*角度);
※Math.PIは、円周率です(3.1415926535.....)

その他、回転の中心点を右下などにする場合も三角関数を使って出すことができます。


var Rot:Number = 30;
mc.x += mc.height * Math.sin(Math.PI/180 * Rot)/2;
mc.y -= mc.width * Math.sin(Math.PI/180 * Rot)/2;
mc.rotation = Rot;

Bookmark and Share


ブックマークに追加