- Date:2010/2/18
- Category:AS3.0
- Author: wonder
Bitmapの基本が分かってきたので、その次は変形の適用を勉強します。
Matrixクラス
通常、BitmapDataにdrawする時、オブジェクトに指定している変形(位置、スケール、回転)は全て破棄されます。
変形を適用したい場合はMatrixクラスを使います。
パッケージは、
flash.geom.Matrix
適用方法は、Matrixオブジェクトを生成後オブジェクトが持つ以下のプロパティを変更します。
translate(x,y) : 位置の指定
scale(sx,sy) : スケールの指定
rotate(radian) : 回転の指定(ラジアン)
プロパティ設定後、オブジェクトをBitmapDataにdrawするときの第二引数に一緒に指定します。
そのdrawするオブジェクトに対し変形効果がかかります。
bitmapdata.draw( sprite, matrix );
一度プロパティをクリアしたい場合は、identityメソッドを使います。
matrix.identity(); // 初期化される
identityを実行しないとプロパティの値は保持しつづけます。
コード
matrixのtranslateとscaleを使ってみました。
その他
Kayacの本によりますと、指定するプロパティの順番によってはうまく効果がかからない場合があるとのこと。
以下の順番で指定するのが一番安定しているようです。
- scale
- rotate
- translate
- Name
- Comment
