Flash TweenMax正在进行的更改bezier

Flash TweenMax正在进行的更改bezier,flash,actionscript-3,tween,Flash,Actionscript 3,Tween,是否可以使用TweenMax在一个基于bezier的动画和另一个基于bezier的动画之间平滑切换 在第一个完成之前,我想为对象创建一条新曲线 t = new TweenMax(movieClip, speed, {bezierThrough:[{x:84, y:207}, {x:300, y:345}], orientToBezier:false, ease:Sine.easeOut, onComplete:walkComplete } ); 有一种称为setDestination的方法,

是否可以使用TweenMax在一个基于bezier的动画和另一个基于bezier的动画之间平滑切换

在第一个完成之前,我想为对象创建一条新曲线

t = new TweenMax(movieClip, speed, 
{bezierThrough:[{x:84, y:207}, {x:300, y:345}],
orientToBezier:false, ease:Sine.easeOut, onComplete:walkComplete } );
有一种称为setDestination的方法,它可以动态调整目标参数,但似乎只会产生线性动画


每次tween更新正在tween中的对象时,您都可以调用函数,方法是传入一个update函数进行如下调用:

t = new TweenMax(movieClip, speed, 
{bezierThrough:[{x:84, y:207}, {x:300, y:345}],
orientToBezier:false, ease:Sine.easeOut, onComplete:walkComplete, onUpdate:walkInProgress } );

更新功能可以检查对象的x和y线,并在接近终点时创建新曲线。您的onComplete函数可以在新曲线上设置动画。

每次tween更新正在tween的对象时,您都可以调用一个函数,方法是传入一个更新函数,如下所示:

t = new TweenMax(movieClip, speed, 
{bezierThrough:[{x:84, y:207}, {x:300, y:345}],
orientToBezier:false, ease:Sine.easeOut, onComplete:walkComplete, onUpdate:walkInProgress } );

更新功能可以检查对象的x和y线,并在接近终点时创建新曲线。onComplete函数可以在新曲线上设置动画。

使用setDestination可以通过设置x和y属性实现平滑过渡。我增加了接近尾声的持续时间,以防止快速跳到新的目的地

if ( t.progress > .8)
 t.duration += 1;
 t.setDestination("x", points[1].x);
 t.setDestination("y", points[1].y);

使用setDestination可以通过设置x和y属性实现平滑过渡。我增加了接近尾声的持续时间,以防止快速跳到新的目的地

if ( t.progress > .8)
 t.duration += 1;
 t.setDestination("x", points[1].x);
 t.setDestination("y", points[1].y);

更新的updateTo方法正是我所需要的:


()

更新的updateTo方法正是我所需要的:

()