ゼットコードログ

コード的な何かを書いていきます。

OpenFL 画像を回転させる

画像を回転させてみる。

回転自体はrotationプロパティを指定すれば 指定した角度分だけ回転して表示されます。

//90度回転
_bmp.rotation = 90;

ただ、これだと左上を基準にして回転します。 回転を入れたいときに、中心を基準にして回転させたいことがよくあります。 そこで、Spriteを作って中にビットマップを入れるやり方をやってみました。 表示と回転を分離させます。

_sprite.x = (stage.stageWidth) / 2;
_sprite.y = (stage.stageHeight) / 2;

_bmp.scaleX = 0.5;
_bmp.scaleY = 0.5;
_bmp.x = -(_bmp.width / 2);
_bmp.y = -(_bmp.height / 2);

_sprite.rotation = 45;

これで中心点を基準にして回転してくれます。

FlashでStarlingというフレームワークがあって、 基準点の位置をpivotX = xx,pivotY = yy みたいな感じで指定できた。 今思えば、実は結構すごいことだったんだなぁ。

f:id:z-ohnami:20140426154812p:plain

OpenFL rotation image via center position.