Home > study | tweensy > [tweensy]いろいろ試してみる:TweensyGroupで特殊プロパティをトゥイーン

[tweensy]いろいろ試してみる:TweensyGroupで特殊プロパティをトゥイーン

訳しときながらTweensyGroupって何なのかわからなかったけど、
今日asDoc読んでてわかったような気が…。

TweensyGroupには、tweenerでいう特殊プロパティ的なもののトゥイーンのショートカットがあって、
Tweensyでやるよりコードがすっきりして、簡単。

色、輝度、マトリックス、…などなどをバラバラに指定できて、まとめて管理できるから”Group”ってことなのかな??

それぞれの効果にTweensyTimelineを作ってグループ管理している模様。

時間、イージング、遅延とか各効果別に設定したいけど、制御系はグループ管理したいって時に使えるってことか。

とにかく今回は制御というよりかは特殊プロパティについて調べてみる。


TweensyGroupサンプル

透明度をあげつつ、ぼかしをとりつつ、ぼよんと拡大する。

view sample

Sample1.as

Actionscript:
  1. package
  2. {
  3.     import com.flashdynamix.motion.*;
  4.     import fl.motion.easing.*;
  5.     import flash.text.TextField;
  6.     import flash.display.MovieClip;
  7.     import flash.filters.BlurFilter;
  8.     import flash.geom.Matrix;
  9.  
  10.     /**
  11.     * ...
  12.     * @author DefaultUser (Tools -> Custom Arguments...)
  13.     */
  14.     public class  Sample1 extends MovieClip
  15.     {
  16.         private var tween:TweensyGroup;
  17.         private var tf:TextField;
  18.        
  19.         public function Sample1() {
  20.             tween = new TweensyGroup();
  21.             tween.onComplete = tweenComp;
  22.            
  23.             //透明度
  24.             this.alpha = 0;
  25.             tween.alphaTo(this, 1, 1,Quartic.easeOut,0.5);
  26.             //フィルター
  27.             var blur:BlurFilter = new BlurFilter(30,30,1);
  28.             tween.filterTo(this, blur, {blurX:0,blurY:0}, 1,Quartic.easeOut,0.5)
  29.             //拡大・縮小
  30.             tween.scaleTo(this, 2, 2, Elastic.easeOut, 1);
  31.            
  32.             //テキストフィールドを作成、追加
  33.             tf = new TextField();
  34.             tf.y = -(this.height/2)-20; //基準点が中央のため
  35.  
  36.             addChild(tf);
  37.            
  38.         }
  39.         public function tweenComp():void {
  40.             tf.text = "Complete!";
  41.         }
  42.        
  43.     }
  44.    
  45. }

ショートカットの詳細

alphaToメソッド -透明度の変更

public function alphaTo(instance:Object, alpha:Number, duration:Number = 0.5, ease:Function = null, delayStart:Number = 0): TweensyTimeline

//mcのアルファを3秒かけて0.5にする
tween.alphaTo(mc, 0, 5,3);

brightnessToメソッド -輝度の変更

public function brightnessTo(instance:Object, amount:Number, duration:Number = 0.5, ease:Function = null, delayStart:Number = 0): TweensyTimeline

//mcの輝度を3秒かけて0.5にする
tween.alphaTo(mc, 1, 5,3);

ColorToメソッド -色を変更

public function colorTo(instance:Object, color:uint, duration:Number = 0.5, ease:Function = null, delayStart:Number = 0): TweensyTimeline

//mcの色を3秒かけて0x000000(黒)にする
tween.colorTo(mc, 0x000000, 3);

ColorTransformToメソッド -ColorTranceformの適用

public function colorTransformTo(instance:Object, color:ColorTransform, duration:Number = 0.5, ease:Function = null, delayStart:Number = 0): TweensyTimeline

import flash.geom.ColorTransform;

//mcの色をColorTransform オブジェクトctに5秒かけて適用
var ct:ColorTransform=new ColorTransform(-1, -1, -1, 1, 255, 255, 255, 0)
tween.colorTransformTo(mc, ct, 5)

contrastToメソッド -コントラストの変更

public function contrastTo(instance:Object, amount:Number, duration:Number = 0.5, ease:Function = null, delayStart:Number = 0): TweensyTimeline

//mcのコントラストを3秒かけて1(最大)に変更
tween.contrastTo(mc 1,2);

filterToメソッド -フィルタ効果の適用

public function filterTo(instance:Object, filter:BitmapFilter, to:Object, duration:Number = 0.5, ease:Function = null, delayStart:Number = 0): TweensyTimeline

import flash.filters.BlurFilter;

//ぼかしフィルターのblurX、blurYを10に5秒かけて適用
var blur:BlurFilter = new BlurFilter(0,0,1);
tween.filterTo(this, blur, {blurX:10,blurY:10}, 5);

matrixToメソッド -マトリックス変形の適用

public function matrixTo(instance:Object, mtx:Matrix, duration:Number = 0.5, ease:Function = null, delayStart:Number = 0): TweensyTimeline

import flash.geom.Matrix;

//mcにMatrixオブジェクトmtxを3秒かけて適用
var mtx:Matrix = new Matrix(-1,2,1,2,1,2);
tween.matrixTo(this, mtx, 3);

rotateToメソッド -回転

public function rotateTo(instance:Object, rotation:Number, duration:Number = 0.5, ease:Function = null, delayStart:Number = 0): TweensyTimeline

//mcの角度を3秒かけて180度に変更
tween.rotateTo(mc, 180, 3);

scaleToメソッド -拡大・縮小

public function scaleTo(instance:Object, scale:Number, duration:Number = 0.5, ease:Function = null, delayStart:Number = 0): TweensyTimeline

//mcを1秒かけて50%に縮小
tween.scaleTo(mc,0.5,1);

soundTransformTo -SoundTransformの適用

public function soundTransformTo(instance:Object, trans:SoundTransform, duration:Number = 0.5, ease:Function = null, delayStart:Number = 0): TweensyTimeline

import flash.media.SoundTransform;

////mcにSoundTranceformオブジェクトstを3秒かけて適用
var st:SoundTransform = new SoundTransform(1, 0);
tween.soundTransformTo(this, st, 3);



関連する投稿

Comments:0

Comment Form
Remember personal info

Trackbacks:1

Trackback URL for this entry
http://kanariia.com/blog/archives/415/trackback
Listed below are links to weblogs that reference
[tweensy]いろいろ試してみる:TweensyGroupで特殊プロパティをトゥイーン from kanariia.com blog
pingback from [AS3.0] Tweensyを少し試す。 - blog.ao-design 09-02-01 (日) 12:54

[...] ・[tweensy]いろいろ試してみる:onComplete、YOYO、TweensySquence ・[tweensy]いろいろ試してみる:TweensyGroupで特殊プロパティをトゥイーン ・Tweensy  This entry was written by shinichi_hirota, posted on 2009.2.1 at 12:49 PM, filed [...]

Home > study | tweensy > [tweensy]いろいろ試してみる:TweensyGroupで特殊プロパティをトゥイーン

bookmark
nakanohito

あわせて読みたい
あわせて読みたいブログパーツ

Return to page top