Tweener.registerSpecialPropertySplitter(6)
2008/01/17 21:21 - tweener
Vector クラスを使い、表示オブジェクトが3次元をトゥイーン移動するプログラムを作っています。
前回は _scale と同じように xyz 全座標に同じ値を割り当てるコーディングでした。
今回は addTween でトゥイーン到達値にオブジェクトを適用するケースのコーディングです。
Swf の挙動は registerSpecialPropertySplitter を使わないものと同じになります。
<クラスプロパティ> private var av : Vector;
<init() 中> Tweener.registerSpecialPropertySplitter( "_vector" , _vector_splitter );
init 中で Tweener.registerSpecialPropertySplitter を呼び出します。
今回も特殊プロパティ名を _vector、splitFunction に _vector_splitter を設定しました。
<addTween 部> var x:int = AqMath.createRandomInt( 2 , -2 ) * 40; var y:int = AqMath.createRandomInt( 2 , -2 ) * 40; var z:int = AqMath.createRandomInt( 2 , -2 ) * 20; av.x = x; av.y = y; av.z = z; Tweener.addTween( v , { _vector : av , ……
addTween で特殊プロパティ _vector に対して、到達値 として Vector オブジェクトを割り当てます。
<splitFunction 定義> private function _vector_splitter( p_value:Vector , p_parameters:Array ):Array { var nArray:Array = new Array(); nArray.push( { name:"x" , value:p_value.x } ); nArray.push( { name:"y" , value:p_value.y } ); nArray.push( { name:"z" , value:p_value.z } ); return nArray; }
splitFunction 定義部では Vector オブジェクトの3つの座標プロパティ x、y、z に対して、それぞれ、Vector.x、Vector.y、Vector.z を割り当てます。
シリーズ
- Tweener.registerSpecialPropertySplitter(5)
- Tweener.registerSpecialPropertySplitter(4)
- Tweener.registerSpecialPropertySplitter(3)
- Tweener.registerSpecialPropertySplitter(2)
- Tweener.registerSpecialPropertySplitter(1)
関連シリーズ
- Tweener.registerSpecialProperty(6)
- Tweener.registerSpecialProperty(5)
- Tweener.registerSpecialProperty(4)
- Tweener.registerSpecialProperty(3)
- Tweener.registerSpecialProperty(2)
- Tweener.registerSpecialProperty(1)