Matrix3DのinterpolateToメソッドは使いやすい?
Matrix3DのinterpolateToメソッドは、
ちょっとしたアニメーションを作成するのにいいかもしれません。
Pointのinterpolateと同じものなのですが、
Matrix3Dは、回転や縮小までアニメーションにしてくれます。
かなり使い勝手がいいですよ。
以下、ソース。
sp2がsp1に重なるようにアニメーションをするプログラム。
package { import flash.display.Sprite; import flash.events.Event; import flash.geom.*; [SWF(width=800, height=600, backgroundColor=0xAADDFF)] public class Main02 extends Sprite { private var sp1:Sprite = new Sprite(); private var sp2:Sprite = new Sprite(); public function Main02() { sp1 = initRect(100, 100, 0xFF0000); sp1.rotationX = 80; addChild(sp1); sp2 = initRect(500, 500, 0x0000FF); addChild(sp2); addEventListener(Event.ENTER_FRAME, onEnterFrame); } private function initRect(x:Number, y:Number, c:uint):Sprite { var s:Sprite = new Sprite(); s.x = x; s.y = y; s.z = 0; s.graphics.beginFill(c); s.graphics.lineStyle(5); s.graphics.drawRect(-50, -50, 100, 100); s.graphics.endFill(); return s; } private function onEnterFrame(event:Event):void { sp2.transform.matrix3D.interpolateTo(sp1.transform.matrix3D, 0.1); } } }