チェンジセット 2618

差分発生行の前後
無視リスト:
コミット日時:
2009/05/10 22:56:41 (3 年前)
コミッタ:
yossy
ログメッセージ:

BetweenAS3: Moved a delay setting to the BetweenAS3.delay method for more flexibility.

ファイル:

凡例:

変更無し
追加
削除
更新
コピー
移動
  • as3/BetweenAS3/trunk/CHANGES

    r2617 r2618  
    44Alpha r2505 -> HEAD 
    55-------------------- 
     6 
     7 * [r2618] Moved a delay setting to the BetweenAS3.delay method for more flexibility. 
    68 
    79 * [r2617] Changed the timing of calculating tween parameters to the first time of start playing the tween. 
  • as3/BetweenAS3/trunk/CHANGES.ja

    r2617 r2618  
    55-------------------- 
    66 
     7 * [r2618] 柔軟性を高めるため、ディレイ設定を BetweenAS3.delay へ移動 
     8  
    79 * [r2617] トゥイーンのパラメータ算出の実行タイミングを、はじめてトゥイーンの再生が開始される時に変更 
    810  
  • as3/BetweenAS3/trunk/src/fp10/org/libspark/betweenas3/BetweenAS3.as

    r2617 r2618  
    3636        import org.libspark.betweenas3.factories.StandardSingleTweenTargetFactory; 
    3737        import org.libspark.betweenas3.registries.ClassRegistry; 
     38        import org.libspark.betweenas3.targets.DelayedTweenTarget; 
    3839        import org.libspark.betweenas3.targets.extra.AddChild; 
    3940        import org.libspark.betweenas3.targets.extra.Func; 
     
    102103                 * @return 
    103104                 */ 
    104                 public static function tween(target:Object, to:Object, from:Object = null, time:Number = 1.0, easing:IEasing = null, delay:Number = 0.0):ITween 
     105                public static function tween(target:Object, to:Object, from:Object = null, time:Number = 1.0, easing:IEasing = null):ITween 
    105106                { 
    106                         return new StandardTween(_singleTweenTargetFactory.create(target, to, from, time, easing || Linear.easeNone, delay), _ticker, 0); 
     107                        return new StandardTween(_singleTweenTargetFactory.create(target, to, from, time, easing || Linear.easeNone), _ticker, 0); 
    107108                } 
    108109                 
    109110                public static function apply(target:Object, to:Object, from:Object = null, time:Number = 1.0, applyTime:Number = 1.0, easing:IEasing = null):void 
    110111                { 
    111                         _singleTweenTargetFactory.create(target, to, from, time, easing || Linear.easeNone, 0.0).update(applyTime); 
     112                        _singleTweenTargetFactory.create(target, to, from, time, easing || Linear.easeNone).update(applyTime); 
    112113                } 
    113114                 
     
    172173                } 
    173174                 
    174                 public static function addChild(target:DisplayObject, parent:DisplayObjectContainer, delay:Number = 0.0):ITween 
     175                public static function delay(tween:ITween, delay:Number, postDelay:Number = 0.0):ITween 
    175176                { 
    176                         return new StandardTween(new AddChild(target, parent, delay), _ticker, 0); 
     177                        return new StandardTween(new DelayedTweenTarget(tween.tweenTarget.clone(), delay, postDelay), _ticker, 0); 
    177178                } 
    178179                 
    179                 public static function removeFromParent(target:DisplayObject, delay:Number = 0.0):ITween 
     180                public static function addChild(target:DisplayObject, parent:DisplayObjectContainer):ITween 
    180181                { 
    181                         return new StandardTween(new RemoveFromParent(target, delay), _ticker, 0); 
     182                        return new StandardTween(new AddChild(target, parent), _ticker, 0); 
    182183                } 
    183184                 
    184                 public static function func(func:Function, params:Array = null, delay:Number = 0.0, useFunc2:Boolean = false, func2:Function = null, params2:Array = null):ITween 
     185                public static function removeFromParent(target:DisplayObject):ITween 
    185186                { 
    186                         return new StandardTween(new Func(func, params, delay, useFunc2, func2, params2), _ticker, 0); 
     187                        return new StandardTween(new RemoveFromParent(target), _ticker, 0); 
     188                } 
     189                 
     190                public static function func(func:Function, params:Array = null, useFunc2:Boolean = false, func2:Function = null, params2:Array = null):ITween 
     191                { 
     192                        return new StandardTween(new Func(func, params, useFunc2, func2, params2), _ticker, 0); 
    187193                } 
    188194        } 
  • as3/BetweenAS3/trunk/src/fp10/org/libspark/betweenas3/factories/ISingleTweenTargetFactory.as

    r2285 r2618  
    5656                 * @param       time 
    5757                 * @param       easing 
    58                  * @param       delay 
    5958                 * @return 
    6059                 */ 
    61                 function create(target:Object, to:Object, from:Object, time:Number, easing:IEasing, delay:Number):ISingleTweenTarget; 
     60                function create(target:Object, to:Object, from:Object, time:Number, easing:IEasing):ISingleTweenTarget; 
    6261        } 
    6362} 
  • as3/BetweenAS3/trunk/src/fp10/org/libspark/betweenas3/factories/StandardSingleTweenTargetFactory.as

    r2617 r2618  
    7474                 * @inheritDoc 
    7575                 */ 
    76                 public function create(target:Object, dest:Object, source:Object, time:Number, easing:IEasing, delay:Number):ISingleTweenTarget 
     76                public function create(target:Object, dest:Object, source:Object, time:Number, easing:IEasing):ISingleTweenTarget 
    7777                { 
    7878                        // TODO: Value filter 
     
    8080                        var tweenTargetBuilder:SingleTweenTargetBuilder = _builderCacheIndex > 0 ? _builderCache[--_builderCacheIndex] : newSingleTweenTargetBuilder(), name:String, value:Object, isRelative:Boolean, parentTarget:ISingleTweenTarget, childTarget:ISingleTweenTarget, tweenTargets:Vector.<ISingleTweenTarget>, tweenTarget:ISingleTweenTarget; 
    8181                         
    82                         tweenTargetBuilder.reset(target, time, delay, easing); 
     82                        tweenTargetBuilder.reset(target, time, easing); 
    8383                         
    8484                        // TODO: Tween targets with factory 
     
    9494                                        else { 
    9595                                                parentTarget = tweenTargetBuilder.createTweenTarget(name, false); 
    96                                                 childTarget = create(parentTarget.getObject(name), dest != null ? dest[name] : null, value, time, easing, delay); 
     96                                                childTarget = create(parentTarget.getObject(name), dest != null ? dest[name] : null, value, time, easing); 
    9797                                                tweenTargetBuilder.addTweenTarget(new SingleTweenTargetLadder(parentTarget, childTarget, name)); 
    9898                                        } 
     
    110110                                                if (!(source != null && name in source)) { 
    111111                                                        parentTarget = tweenTargetBuilder.createTweenTarget(name, false); 
    112                                                         childTarget = create(parentTarget.getObject(name), value, source != null ? source[name] : null, time, easing, delay); 
     112                                                        childTarget = create(parentTarget.getObject(name), value, source != null ? source[name] : null, time, easing); 
    113113                                                        tweenTargetBuilder.addTweenTarget(new SingleTweenTargetLadder(parentTarget, childTarget, name)); 
    114114                                                } 
     
    122122                        } 
    123123                        else if (tweenTargets.length > 1) { 
    124                                 tweenTarget = new CompositeSingleTweenTarget(target, time, delay, easing, tweenTargets); 
     124                                tweenTarget = new CompositeSingleTweenTarget(target, time, easing, tweenTargets); 
    125125                        } 
    126126                         
    127                         tweenTargetBuilder.reset(null, 0, 0, null); 
     127                        tweenTargetBuilder.reset(null, 0, null); 
    128128                         
    129129                        _builderCache[_builderCacheIndex++] = tweenTargetBuilder; 
  • as3/BetweenAS3/trunk/src/fp10/org/libspark/betweenas3/factories/classes/SingleTweenTargetBuilder.as

    r2617 r2618  
    4545                private var _targetClass:Class; 
    4646                private var _time:Number; 
    47                 private var _delay:Number; 
    4847                private var _easing:IEasing; 
    4948                private var _tweenTargetMap:Dictionary = new Dictionary(); 
     
    6059                } 
    6160                 
    62                 public function reset(target:Object, time:Number, delay:Number, easing:IEasing):void 
     61                public function reset(target:Object, time:Number, easing:IEasing):void 
    6362                { 
    6463                        _target = target; 
    6564                        _targetClass = target != null ? target.constructor : null; 
    6665                        _time = time; 
    67                         _delay = delay; 
    6866                        _easing = easing; 
    6967                        for (var p:* in _tweenTargetMap) { 
     
    8179                                        t = new tweenTargetClass(); 
    8280                                        t.target = _target; 
    83                                         t.delay = _delay; 
    8481                                        t.time = _time; 
    8582                                        t.easing = _easing; 
  • as3/BetweenAS3/trunk/src/fp10/org/libspark/betweenas3/targets/extra/AbstractActionTweenTarget.as

    r2617 r2618  
    2929{ 
    3030        import org.libspark.betweenas3.targets.ITweenTarget; 
     31         
    3132        /** 
    3233         * IActionTweenTarget を実装するための抽象クラスです. 
     
    3637        public class AbstractActionTweenTarget implements IActionTweenTarget 
    3738        { 
    38                 public function AbstractActionTweenTarget(delay:Number = 0) 
    39                 { 
    40                         _delay = delay; 
    41                 } 
    42                  
    43                 private var _delay:Number; 
    44                  
    45                 /** 
    46                  * @inheritDoc 
    47                  */ 
    48                 public function get delay():Number 
    49                 { 
    50                         return _delay; 
    51                 } 
    52                  
    53                 /** 
    54                  * @private 
    55                  */ 
    56                 public function set delay(value:Number):void 
    57                 { 
    58                         _delay = value; 
    59                 } 
    60                  
    6139                /** 
    6240                 * @inheritDoc 
     
    6442                public function get duration():Number 
    6543                { 
    66                         return _delay + 0.01; 
     44                        return 0.01; 
    6745                } 
    6846                 
     
    7250                public function update(time:Number):void 
    7351                { 
    74                         if (time >= (_delay + 0.01)) { 
     52                        if (time >= 0.01) { 
    7553                                action(); 
    7654                        } 
    77                         else if (time <= _delay) { 
     55                        else if (time <= 0) { 
    7856                                rollback(); 
    7957                        } 
  • as3/BetweenAS3/trunk/src/fp10/org/libspark/betweenas3/targets/extra/AddChild.as

    r2475 r2618  
    3838        public class AddChild extends AbstractActionTweenTarget 
    3939        { 
    40                 public function AddChild(target:DisplayObject, parent:DisplayObjectContainer, delay:Number = 0
     40                public function AddChild(target:DisplayObject, parent:DisplayObjectContainer
    4141                { 
    42                         super(delay); 
    43                          
    4442                        _target = target; 
    4543                        _parent = parent; 
  • as3/BetweenAS3/trunk/src/fp10/org/libspark/betweenas3/targets/extra/Func.as

    r2504 r2618  
    3535        public class Func extends AbstractActionTweenTarget 
    3636        { 
    37                 public function Func(func:Function, params:Array = null, delay:Number = 0, useFunc2:Boolean = false, func2:Function = null, params2:Array = null) 
     37                public function Func(func:Function, params:Array = null, useFunc2:Boolean = false, func2:Function = null, params2:Array = null) 
    3838                { 
    39                         super(delay); 
    40                          
    4139                        _func = func; 
    4240                        _params = params; 
  • as3/BetweenAS3/trunk/src/fp10/org/libspark/betweenas3/targets/extra/IActionTweenTarget.as

    r2474 r2618  
    3838        public interface IActionTweenTarget extends ITweenTarget 
    3939        { 
    40                 /** 
    41                  * 動作が開始されるまでに掛ける時間 (秒) を設定します. 
    42                  */ 
    43                 function get delay():Number; 
    44                  
    45                 /** 
    46                  * @private 
    47                  */ 
    48                 function set delay(value:Number):void; 
    4940        } 
    5041} 
  • as3/BetweenAS3/trunk/src/fp10/org/libspark/betweenas3/targets/extra/RemoveFromParent.as

    r2474 r2618  
    3838        public class RemoveFromParent extends AbstractActionTweenTarget 
    3939        { 
    40                 public function RemoveFromParent(target:DisplayObject, delay:Number = 0
     40                public function RemoveFromParent(target:DisplayObject
    4141                { 
    42                         super(delay); 
    43                          
    4442                        _target = target; 
    4543                } 
  • as3/BetweenAS3/trunk/src/fp10/org/libspark/betweenas3/targets/single/AbstractSingleTweenTarget.as

    r2617 r2618  
    4040        { 
    4141                protected var _time:Number = 0; 
    42                 protected var _delay:Number = 0; 
    4342                protected var _easing:IEasing = null; 
    4443                 
     
    4847                public function get duration():Number 
    4948                { 
    50                         return _time + _delay
     49                        return _time
    5150                } 
    5251                 
     
    6564                { 
    6665                        _time = value; 
    67                 } 
    68                  
    69                 /** 
    70                  * このトゥイーンが開始されるまでに掛ける時間 (秒) を設定します. 
    71                  */ 
    72                 public function get delay():Number 
    73                 { 
    74                         return _delay; 
    75                 } 
    76                  
    77                 /** 
    78                  * @private 
    79                  */ 
    80                 public function set delay(value:Number):void 
    81                 { 
    82                         _delay = value; 
    8366                } 
    8467                 
     
    174157                { 
    175158                        _time = obj._time; 
    176                         _delay = obj._delay; 
    177159                        _easing = obj._easing; 
    178160                } 
  • as3/BetweenAS3/trunk/src/fp10/org/libspark/betweenas3/targets/single/CompositeSingleTweenTarget.as

    r2617 r2618  
    3838        public class CompositeSingleTweenTarget extends AbstractSingleTweenTarget 
    3939        { 
    40                 public function CompositeSingleTweenTarget(target:Object, time:Number, delay:Number, easing:IEasing, targets:Vector.<ISingleTweenTarget>) 
     40                public function CompositeSingleTweenTarget(target:Object, time:Number, easing:IEasing, targets:Vector.<ISingleTweenTarget>) 
    4141                { 
    4242                        _target = target; 
    4343                        this.time = time; 
    44                         this.delay = delay; 
    4544                        this.easing = easing; 
    4645                         
     
    159158                                } 
    160159                        } 
    161                         return new CompositeSingleTweenTarget(_target, _time, _delay, _easing, targets); 
     160                        return new CompositeSingleTweenTarget(_target, time, easing, targets); 
    162161                } 
    163162        } 
  • as3/BetweenAS3/trunk/src/fp10/org/libspark/betweenas3/targets/single/ISingleTweenTarget.as

    r2285 r2618  
    4444        public interface ISingleTweenTarget extends ITweenTarget 
    4545        { 
    46                 // duration は time + delay 
    47                  
    4846                /** 
    4947                 * このトゥイーンに掛ける時間 (秒) を設定します. 
     
    5553                 */ 
    5654                function set time(value:Number):void; 
    57                  
    58                 /** 
    59                  * このトゥイーンが開始されるまでに掛ける時間 (秒) を設定します. 
    60                  */ 
    61                 function get delay():Number; 
    62                  
    63                 /** 
    64                  * @private 
    65                  */ 
    66                 function set delay(value:Number):void; 
    6755                 
    6856                /** 
  • as3/BetweenAS3/trunk/src/fp10/org/libspark/betweenas3/targets/single/ObjectTweenTarget.as

    r2617 r2618  
    127127                        } 
    128128                         
    129                         if (time < _delay) { 
    130                                 time = 0; 
    131                         } 
    132                         else { 
    133                                 time -= _delay; 
     129                        var factor:Number = 0; 
     130                         
     131                        if (time > 0) { 
     132                                if (time < _time) { 
     133                                        factor = _easing.calculate(time, 0.0, 1.0, _time); 
     134                                } 
     135                                else { 
     136                                        factor = 1.0; 
     137                                } 
    134138                        } 
    135139                         
    136                         var factor:Number = _easing.calculate(time < _time ? time : _time, 0.0, 1.0, _time); 
    137140                        var invert:Number = 1.0 - factor; 
    138141                        var t:Object = _target; 
  • as3/BetweenAS3/trunk/src/fp10/org/libspark/betweenas3/targets/single/display/DisplayObjectTweenTarget.as

    r2617 r2618  
    557557                        } 
    558558                         
    559                         if (time >= _delay) { 
    560                                 if ((time -= _delay) < _time) { 
     559                        if (time > 0) { 
     560                                if (time < _time) { 
    561561                                        factor = _easing.calculate(time, 0.0, 1.0, _time); 
    562562                                } 
  • as3/BetweenAS3/trunk/src/fp10/org/libspark/betweenas3/targets/single/geom/PointTweenTarget.as

    r2617 r2618  
    149149                        } 
    150150                         
    151                         if (time >= _delay) { 
    152                                 if ((time -= _delay) < _time) { 
     151                        if (time > 0) { 
     152                                if (time < _time) { 
    153153                                        factor = _easing.calculate(time, 0.0, 1.0, _time); 
    154154                                } 
  • as3/BetweenAS3/trunk/tests/fp10/ExtraAddChildTest.as

    r2475 r2618  
    6868                        _t = BetweenAS3.serial( 
    6969                                BetweenAS3.addChild(box1, this), 
    70                                 BetweenAS3.addChild(box2, this, 0.5), 
    71                                 BetweenAS3.addChild(box3, this, 0.5), 
    72                                 BetweenAS3.addChild(box4, this, 0.5), 
    73                                 BetweenAS3.parallel( 
    74                                         BetweenAS3.tween(box1, {x: 350, y: 250}, null, 1.2, Bounce.easeOut, 0.5), 
    75                                         BetweenAS3.tween(box2, {x: 450, y: 250}, null, 1.2, Bounce.easeOut, 0.5), 
    76                                         BetweenAS3.tween(box3, {x: 350, y: 350}, null, 1.2, Bounce.easeOut, 0.5), 
    77                                         BetweenAS3.tween(box4, {x: 450, y: 350}, null, 1.2, Bounce.easeOut, 0.5
    78                                 ) 
     70                                BetweenAS3.delay(BetweenAS3.addChild(box2, this), 0.5), 
     71                                BetweenAS3.delay(BetweenAS3.addChild(box3, this), 0.5), 
     72                                BetweenAS3.delay(BetweenAS3.addChild(box4, this), 0.5), 
     73                                BetweenAS3.delay(BetweenAS3.parallel( 
     74                                        BetweenAS3.tween(box1, {x: 350, y: 250}, null, 1.2, Bounce.easeOut), 
     75                                        BetweenAS3.tween(box2, {x: 450, y: 250}, null, 1.2, Bounce.easeOut), 
     76                                        BetweenAS3.tween(box3, {x: 350, y: 350}, null, 1.2, Bounce.easeOut), 
     77                                        BetweenAS3.tween(box4, {x: 450, y: 350}, null, 1.2, Bounce.easeOut
     78                                ), 0.5) 
    7979                        ); 
    8080                         
  • as3/BetweenAS3/trunk/tests/fp10/ExtraRemoveFromParentTest.as

    r2473 r2618  
    6161                        _t = BetweenAS3.serial( 
    6262                                BetweenAS3.tween(box, {x: 700}, null, 1.8, Bounce.easeOut), 
    63                                 BetweenAS3.removeFromParent(box, 1.0) 
     63                                BetweenAS3.delay(BetweenAS3.removeFromParent(box), 1.0) 
    6464                        ); 
    6565                         
  • as3/BetweenAS3/trunk/tests/fp10/ScaledTweenTest.as

    r2299 r2618  
    7070                        // 普通にトゥイーンして、帰るときは三倍の時間を掛ける 
    7171                         
    72                         var t:ITween = BetweenAS3.tween(mc, {x: 500}, null, 1.0, Exponential.easeOut, 0.5); 
     72                        var t:ITween = BetweenAS3.delay(BetweenAS3.tween(mc, {x: 500}, null, 1.0, Exponential.easeOut), 0.5); 
    7373                         
    7474                        _t = BetweenAS3.serial( 
  • as3/BetweenAS3/trunk/tests/fp10/SlicedTweenTest.as

    r2300 r2618  
    7070                        // 一部分だけタイムスケールする 
    7171                         
    72                         var t:ITween = BetweenAS3.tween(mc, {x: 500}, null, 1.0, Cubic.easeIn, 0.5); 
     72                        var t:ITween = BetweenAS3.delay(BetweenAS3.tween(mc, {x: 500}, null, 1.0, Cubic.easeIn), 0.5); 
    7373                         
    7474                        _t = BetweenAS3.serial( 
  • as3/BetweenAS3/trunk/tests/fp10/org/libspark/betweenas3/factories/StandardSingleTweenTargetFactoryTest.as

    r2617 r2618  
    7070                        var obj:Object = new Object(); 
    7171                        var easing:IEasing = new EaseNone(); 
    72                         var result:ISingleTweenTarget = _f.create(obj, {a: 10, $b: 20}, null, 3000, easing, 2000); 
     72                        var result:ISingleTweenTarget = _f.create(obj, {a: 10, $b: 20}, null, 3000, easing); 
    7373                         
    7474                        assertSame(t, result); 
    75                         assertEquals(2000, t.delay); 
    7675                        assertEquals(3000, t.time); 
    7776                        assertSame(easing, t.easing); 
     
    101100                        var obj:Object = new Object(); 
    102101                        var easing:IEasing = new EaseNone(); 
    103                         var result:ISingleTweenTarget = _f.create(obj, null, {a: 10, $b: 20}, 3000, easing, 2000); 
     102                        var result:ISingleTweenTarget = _f.create(obj, null, {a: 10, $b: 20}, 3000, easing); 
    104103                         
    105104                        assertSame(t, result); 
    106                         assertEquals(2000, t.delay); 
    107105                        assertEquals(3000, t.time); 
    108106                        assertSame(easing, t.easing); 
     
    132130                        var obj:Object = new Object(); 
    133131                        var easing:IEasing = new EaseNone(); 
    134                         var result:ISingleTweenTarget = _f.create(obj, {a: 10, $b: 20}, {b: 30, $c: 40}, 3000, easing, 2000); 
     132                        var result:ISingleTweenTarget = _f.create(obj, {a: 10, $b: 20}, {b: 30, $c: 40}, 3000, easing); 
    135133                         
    136134                        assertSame(t, result); 
    137                         assertEquals(2000, t.delay); 
    138135                        assertEquals(3000, t.time); 
    139136                        assertSame(easing, t.easing); 
     
    173170                        var obj:Object = new Object(); 
    174171                        var easing:IEasing = new EaseNone(); 
    175                         var result:ISingleTweenTarget = _f.create(obj, {a: 10, $b: 20}, null, 3000, easing, 2000); 
     172                        var result:ISingleTweenTarget = _f.create(obj, {a: 10, $b: 20}, null, 3000, easing); 
    176173                         
    177174                        assertTrue(result is CompositeSingleTweenTarget); 
     
    179176                        var r:CompositeSingleTweenTarget = result as CompositeSingleTweenTarget; 
    180177                         
    181                         assertEquals(2000, r.delay); 
    182178                        assertEquals(3000, r.time); 
    183179                        assertSame(easing, r.easing); 
     
    251247         
    252248        private var _time:Number; 
    253         private var _delay:Number; 
    254249        private var _easing:IEasing; 
    255250         
    256         override public function reset(t:Object, time:Number, delay:Number, easing:IEasing):void 
     251        override public function reset(t:Object, time:Number, easing:IEasing):void 
    257252        { 
    258253                _time = time; 
    259                 _delay = delay; 
    260254                _easing = easing; 
    261255        } 
     
    264258        { 
    265259                target.time = _time; 
    266                 target.delay = _delay; 
    267260                target.easing = _easing; 
    268261                return target; 
  • as3/BetweenAS3/trunk/tests/fp10/org/libspark/betweenas3/factories/classes/SingleTweenTargetBuilderTest.as

    r2302 r2618  
    7070                        var obj:Object = new ClassA(); 
    7171                        var easing:IEasing = new EaseNone(); 
    72                         _b.reset(obj, 100, 200, easing); 
     72                        _b.reset(obj, 100, easing); 
    7373                        var t1:ISingleTweenTarget = _b.createTweenTarget('a1'); 
    7474                        var t2:ISingleTweenTarget = _b.createTweenTarget('a1'); 
     
    7979                        assertSame(obj, t1.target); 
    8080                        assertEquals(100, t1.time); 
    81                         assertEquals(200, t1.delay); 
    8281                        assertSame(easing, t1.easing); 
    8382                        assertSame(t1, t2); 
     
    9291                        var obj:Object = new ClassB(); 
    9392                        var easing:IEasing = new EaseNone(); 
    94                         _b.reset(obj, 100, 200, easing); 
     93                        _b.reset(obj, 100, easing); 
    9594                        var t1:ISingleTweenTarget = _b.createTweenTarget('a1'); 
    9695                        var t2:ISingleTweenTarget = _b.createTweenTarget('a1'); 
     
    101100                        assertSame(obj, t1.target); 
    102101                        assertEquals(100, t1.time); 
    103                         assertEquals(200, t1.delay); 
    104102                        assertSame(easing, t1.easing); 
    105103                        assertSame(t1, t2); 
     
    107105                        assertSame(obj, t3.target); 
    108106                        assertEquals(100, t3.time); 
    109                         assertEquals(200, t3.delay); 
    110107                        assertSame(easing, t3.easing); 
    111108                        assertSame(t1, t4); 
  • as3/BetweenAS3/trunk/tests/fp10/org/libspark/betweenas3/targets/TargetsAllTests.as

    r2300 r2618  
    4444                        RepeatedTweenTargetTest, 
    4545                        ScaledTweenTargetTest, 
    46                         SlicedTweenTargetTest 
     46                        SlicedTweenTargetTest, 
     47                        DelayedTweenTargetTest 
    4748                ]; 
    4849        } 
  • as3/BetweenAS3/trunk/tests/fp10/org/libspark/betweenas3/targets/single/ObjectTweenTargetTest.as

    r2244 r2618  
    5454                 
    5555                /** 
    56                  * delay の設定 
    57                  */ 
    58                 test function delay():void 
    59                 { 
    60                         var t:ISingleTweenTarget = new ObjectTweenTarget(); 
    61                         assertEquals(0, t.delay); 
    62                         t.delay = 3000; 
    63                         assertEquals(3000, t.delay); 
    64                 } 
    65                  
    66                 /** 
    6756                 * duration の値 
    6857                 */ 
     
    7362                        t.time = 3000; 
    7463                        assertEquals(3000, t.duration); 
    75                         t.delay = 2000; 
    76                         assertEquals(5000, t.duration); 
    7764                } 
    7865                 
     
    171158                 
    172159                /** 
    173                  * 終了値のみと delay を設定しての update 
    174                  */ 
    175                 test function updateWithDestinationAndDelay():void 
    176                 { 
    177                         var o:Object = { 
    178                                 a1: 1.0, 
    179                                 a2: 1.0, 
    180                                 b1: 8.0, 
    181                                 b2: 8.0, 
    182                                 c: 3.0 
    183                         }; 
    184                          
    185                         var t:ISingleTweenTarget = new ObjectTweenTarget(); 
    186                         t.target = o; 
    187                         t.easing = new EaseNone(); 
    188                         t.delay = 2000; 
    189                         t.time = 4000; 
    190                         t.setDestinationValue('a1', 6.0, false); 
    191                         t.setDestinationValue('a2', 5.0, true); 
    192                         t.setDestinationValue('b1', 2.0, false); 
    193                         t.setDestinationValue('b2', -6.0, true); 
    194                          
    195                         assertEquals(1.0, o.a1); 
    196                         assertEquals(1.0, o.a2); 
    197                         assertEquals(8.0, o.b1); 
    198                         assertEquals(8.0, o.b2); 
    199                         assertEquals(3.0, o.c); 
    200                          
    201                         t.update(0); 
    202                          
    203                         assertEquals(1.0, o.a1); 
    204                         assertEquals(1.0, o.a2); 
    205                         assertEquals(8.0, o.b1); 
    206                         assertEquals(8.0, o.b2); 
    207                         assertEquals(3.0, o.c); 
    208                          
    209                         t.update(1000); 
    210                          
    211                         assertEquals(1.0, o.a1); 
    212                         assertEquals(1.0, o.a2); 
    213                         assertEquals(8.0, o.b1); 
    214                         assertEquals(8.0, o.b2); 
    215                         assertEquals(3.0, o.c); 
    216                          
    217                         t.update(2000); 
    218                          
    219                         assertEquals(1.0, o.a1); 
    220                         assertEquals(1.0, o.a2); 
    221                         assertEquals(8.0, o.b1); 
    222                         assertEquals(8.0, o.b2); 
    223                         assertEquals(3.0, o.c); 
    224                          
    225                         t.update(3000); 
    226                          
    227                         assertEquals(2.25, o.a1); 
    228                         assertEquals(2.25, o.a2); 
    229                         assertEquals(6.5, o.b1); 
    230                         assertEquals(6.5, o.b2); 
    231                         assertEquals(3.0, o.c); 
    232                          
    233                         t.update(4000); 
    234                          
    235                         assertEquals(3.5, o.a1); 
    236                         assertEquals(3.5, o.a2); 
    237                         assertEquals(5.0, o.b1); 
    238                         assertEquals(5.0, o.b2); 
    239                         assertEquals(3.0, o.c); 
    240                          
    241                         t.update(6000); 
    242                          
    243                         assertEquals(6.0, o.a1); 
    244                         assertEquals(6.0, o.a2); 
    245                         assertEquals(2.0, o.b1); 
    246                         assertEquals(2.0, o.b2); 
    247                         assertEquals(3.0, o.c); 
    248                          
    249                         t.update(8000); 
    250                          
    251                         assertEquals(6.0, o.a1); 
    252                         assertEquals(6.0, o.a2); 
    253                         assertEquals(2.0, o.b1); 
    254                         assertEquals(2.0, o.b2); 
    255                         assertEquals(3.0, o.c); 
    256                 } 
    257                  
    258                 /** 
    259160                 * 開始値のみを設定しての update 
    260161                 */ 
     
    317218                         
    318219                        t.update(6000); 
    319                          
    320                         assertEquals(6.0, o.a1); 
    321                         assertEquals(6.0, o.a2); 
    322                         assertEquals(2.0, o.b1); 
    323                         assertEquals(2.0, o.b2); 
    324                         assertEquals(3.0, o.c); 
    325                 } 
    326                  
    327                 /** 
    328                  * 開始値のみと delay を設定しての update 
    329                  */ 
    330                 test function updateWithSourceAndDelay():void 
    331                 { 
    332                         var o:Object = { 
    333                                 a1: 6.0, 
    334                                 a2: 6.0, 
    335                                 b1: 2.0, 
    336                                 b2: 2.0, 
    337                                 c: 3.0 
    338                         }; 
    339                          
    340                         var t:ISingleTweenTarget = new ObjectTweenTarget(); 
    341                         t.target = o; 
    342                         t.easing = new EaseNone(); 
    343                         t.delay = 2000; 
    344                         t.time = 4000; 
    345                         t.setSourceValue('a1', 1.0, false); 
    346                         t.setSourceValue('a2', -5.0, true); 
    347                         t.setSourceValue('b1', 8.0, false); 
    348                         t.setSourceValue('b2', 6.0, true); 
    349                          
    350                         assertEquals(6.0, o.a1); 
    351                         assertEquals(6.0, o.a2); 
    352                         assertEquals(2.0, o.b1); 
    353                         assertEquals(2.0, o.b2); 
    354                         assertEquals(3.0, o.c); 
    355                          
    356                         t.update(0); 
    357                          
    358                         assertEquals(1.0, o.a1); 
    359                         assertEquals(1.0, o.a2); 
    360                         assertEquals(8.0, o.b1); 
    361                         assertEquals(8.0, o.b2); 
    362                         assertEquals(3.0, o.c); 
    363                          
    364                         t.update(1000); 
    365                          
    366                         assertEquals(1.0, o.a1); 
    367                         assertEquals(1.0, o.a2); 
    368                         assertEquals(8.0, o.b1); 
    369                         assertEquals(8.0, o.b2); 
    370                         assertEquals(3.0, o.c); 
    371                          
    372                         t.update(2000); 
    373                          
    374                         assertEquals(1.0, o.a1); 
    375                         assertEquals(1.0, o.a2); 
    376                         assertEquals(8.0, o.b1); 
    377                         assertEquals(8.0, o.b2); 
    378                         assertEquals(3.0, o.c); 
    379                          
    380                         t.update(3000); 
    381                          
    382                         assertEquals(2.25, o.a1); 
    383                         assertEquals(2.25, o.a2); 
    384                         assertEquals(6.5, o.b1); 
    385                         assertEquals(6.5, o.b2); 
    386                         assertEquals(3.0, o.c); 
    387                          
    388                         t.update(4000); 
    389                          
    390                         assertEquals(3.5, o.a1); 
    391                         assertEquals(3.5, o.a2); 
    392                         assertEquals(5.0, o.b1); 
    393                         assertEquals(5.0, o.b2); 
    394                         assertEquals(3.0, o.c); 
    395                          
    396                         t.update(6000); 
    397                          
    398                         assertEquals(6.0, o.a1); 
    399                         assertEquals(6.0, o.a2); 
    400                         assertEquals(2.0, o.b1); 
    401                         assertEquals(2.0, o.b2); 
    402                         assertEquals(3.0, o.c); 
    403                          
    404                         t.update(8000); 
    405220                         
    406221                        assertEquals(6.0, o.a1); 
     
    485300                 
    486301                /** 
    487                  * 開始値と終了値と delay を設定しての update 
    488                  */ 
    489                 test function updateWithSourceAndDestinationAndDelay():void 
    490                 { 
    491                         var o:Object = { 
    492                                 a1: 5.0, 
    493                                 a2: 5.0, 
    494                                 b1: 4.0, 
    495                                 b2: 4.0, 
    496                                 c: 3.0 
    497                         }; 
    498                          
    499                         var t:ISingleTweenTarget = new ObjectTweenTarget(); 
    500                         t.target = o; 
    501                         t.easing = new EaseNone(); 
    502                         t.delay = 2000; 
    503                         t.time = 4000; 
    504                         t.setSourceValue('a1', 1.0, false); 
    505                         t.setSourceValue('a2', -4.0, true); 
    506                         t.setSourceValue('b1', 8.0, false); 
    507                         t.setSourceValue('b2', 4.0, true); 
    508                         t.setDestinationValue('a1', 6.0, false); 
    509                         t.setDestinationValue('a2', 1.0, true); 
    510                         t.setDestinationValue('b1', 2.0, false); 
    511                         t.setDestinationValue('b2', -2.0, true); 
    512                          
    513                         assertEquals(5.0, o.a1); 
    514                         assertEquals(5.0, o.a2); 
    515                         assertEquals(4.0, o.b1); 
    516                         assertEquals(4.0, o.b2); 
    517                         assertEquals(3.0, o.c); 
    518                          
    519                         t.update(0); 
    520                          
    521                         assertEquals(1.0, o.a1); 
    522                         assertEquals(1.0, o.a2); 
    523                         assertEquals(8.0, o.b1); 
    524                         assertEquals(8.0, o.b2); 
    525                         assertEquals(3.0, o.c); 
    526                          
    527                         t.update(1000); 
    528                          
    529                         assertEquals(1.0, o.a1); 
    530                         assertEquals(1.0, o.a2); 
    531                         assertEquals(8.0, o.b1); 
    532                         assertEquals(8.0, o.b2); 
    533                         assertEquals(3.0, o.c); 
    534                          
    535                         t.update(2000); 
    536                          
    537                         assertEquals(1.0, o.a1); 
    538                         assertEquals(1.0, o.a2); 
    539                         assertEquals(8.0, o.b1); 
    540                         assertEquals(8.0, o.b2); 
    541                         assertEquals(3.0, o.c); 
    542                          
    543                         t.update(3000); 
    544                          
    545                         assertEquals(2.25, o.a1); 
    546                         assertEquals(2.25, o.a2); 
    547                         assertEquals(6.5, o.b1); 
    548                         assertEquals(6.5, o.b2); 
    549                         assertEquals(3.0, o.c); 
    550                          
    551                         t.update(4000); 
    552                          
    553                         assertEquals(3.5, o.a1); 
    554                         assertEquals(3.5, o.a2); 
    555                         assertEquals(5.0, o.b1); 
    556                         assertEquals(5.0, o.b2); 
    557                         assertEquals(3.0, o.c); 
    558                          
    559                         t.update(6000); 
    560                          
    561                         assertEquals(6.0, o.a1); 
    562                         assertEquals(6.0, o.a2); 
    563                         assertEquals(2.0, o.b1); 
    564                         assertEquals(2.0, o.b2); 
    565                         assertEquals(3.0, o.c); 
    566                          
    567                         t.update(8000); 
    568                          
    569                         assertEquals(6.0, o.a1); 
    570                         assertEquals(6.0, o.a2); 
    571                         assertEquals(2.0, o.b1); 
    572                         assertEquals(2.0, o.b2); 
    573                         assertEquals(3.0, o.c); 
    574                 } 
    575                  
    576                 /** 
    577302                 * オブジェクトの取得 
    578303                 */