`
cloud21
  • 浏览: 397603 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

TweenLite 使用详解(转天地会的)(

    博客分类:
  • Flex
阅读更多
TweenLite 是一个缓动的类包,功能强大,并且易于使用,为了更多的(E文欠佳的、初学的)朋友了解它,使用它,特此翻译了一下TweenLite 类文档中的说明文件,主要是对参数的说明,希望对大家有用。

TweenLite.as
/*
版本: 8.02
日期: 8/24/2008
ACTIONSCRIPT 语言版本: 3.0 (AS2 版也有提供)
更新 及 更多文档请访问: http://www.TweenLite.com (这里的链接指向 AS3 版)
描述:
  缓动。 我们都在做。我们很多人都知道除了 Adobe's Tween 类之外,还有很多更好的动画引擎,(比如 Tweener). 每种引擎都有它们各自的优缺点。
  最近几年,为了得到一个更紧凑的,跑得更快,效率更高的引擎,我创建了 TweenLite (我无法接受其它的一些引擎带来的文件尺寸上的负担).它很快就融入到我的所有工作中。我告诉其它人,让大家能够从中获益,最终,我将它发布了出来。在过去的几年中,TweenLite越来越受欢迎,超乎了我的想像.
  基于此,我又添加了一些新的功能,并且尽量保持这个文件的尺寸,让它小于3K。 TweenFilterLite 扩充了 TweenLite 并且加入了滤镜缓动,包含了 ColorMatrixFilter 的一些效果,比如饱和、对比、增亮、色调,甚至是着色,但文件的尺寸始终没有超过3K。与 TweenLite 的做法相似,提供有AS2版和AS3版的类包下载。
TweenMax 比 TweenFilterLite 增加了更多的特性,包含 bezier 缓动,暂停/恢复,顺序执行等等。(见 www.TweenMax.com)
  我猜你会想“如果这个是‘轻量级的’,那么它一定会丢掉很多特性,让我用的时候会有点担心”。这种想法是对的,在这里缺少一些其它缓动引擎所包含的特效,但是我可以肯定的说,在过去几年我的工程(很多获奖的 flash 程序以及500强企业的项目中)中,我几乎一直都在用它,而它从没有让我失望过。
  我还真没发现过我还需要其它的功能。你可以对任何的属性(包括 DisplayObject 对象的音量和颜色)使用缓动函数,内置的延迟时间,回调函数,以及传递参数给这些回调函数,甚至根据数组进行缓动,统统只在一行代码中完成。如果你需要更多的特效,你可以装上TweenFilterLite 或者 TweenMax来用用。
  我也从来没有发现比这个更快的引擎。不同引擎执行效率的比较,请访问 http://blog.greensock.com/tweeing-speed-test/.

TweenLite参数说明:
  1) $target : Object - 作为目标的对象, MovieClip或者其它对象
  2) $duration : Number - 动画的时间长度(单位:秒)
  3) $vars : Object – 对象,通过属性值,来存贮各种属性参数用于缓动。(如果你使用 TweenLite.from() 方法,这里的参数表示缓动的初始值)
  该对象所具有的属性:
  alpha: alpha 目标对象应该完成 (或开始,当使用 TweenLite.from()时)的透明度级别.如果 target.alpha 是1,当缓动被执行的时候,你指定参数为 0.5,它将把透明度从 1 缓动到 0.5.
  x: 改变 MovieClip的 x 位置,把这个值设置成你希望的 MovieClip 的结束位置(如果你使用的是 TweenLite.from()这个值表示开始位置). 
           ( y scaleX scaleY rotation 等属性不再重复说明)
  特别的属性 (**可选的**):
  delay : Number - 延迟缓动 (以秒为单位).
  ease : Function - 缓动函数. 例如,fl.motion.easing.Elastic.easeOut 函数。默认的是 Regular.easeOut函数。
  easeParams : Array - 用来存贮缓动公式所需要的额外数据. 当使用 Elastic 公式并且希望控制一些额外的参数,比如放大系数和缓动时间。大多数的缓动公式是不需要参数的,因此,你不需要给其它的缓动公式传递参数。
  autoAlpha : Number - 用它来代替 alpha 属性,可以获得一些副加的效果,比如当 alpha 值缓动到 0时,自动将 visible 属性改为 false。当缓动开始前,autoAlpha 大于 0时,它将会把 visible 属性变成 true 。
  visible : Boolean - 在缓动结束时,想要指定 DisplayObject 的 visible 属性,请使用这个参数。
  volume : Number - 对 soundTransform (MovieClip/SoundChannel/NetStream 等)对象中的volume属性(音量大小)进行缓动 
  tint : Number - 改变 DisplayObject 的颜色,设置一个16进制颜色值之后,当缓动结束时,目标对象将被变成这个颜色,(如果使用的是TweenLite.from(),这个值将表示目标对象开始缓动时的颜色)。举个例子,颜色值可以设定为: 0xFF0000。
  removeTint : Boolean - 要移除 DisplayObject 颜色,将这个参数设成 true 。
  frame : Number - 将 MovieClip 缓动到指帧频。
  onStart : Function - 在缓动开始时想要执行某个函数,就将函数的引用(通常是函数名)放到这里。如果缓动是带延迟的,那么在缓动开始前该函数不会被执行。
  onStartParams : Array - 为缓动开始时要执行的函数传递参数。(可选的)
  onUpdate : Function - 缓动过程中,每次更新时调用这里指定的函数(缓动开始后,每一帧被触发一次),
  onUpdateParams : Array - 给 onUpdate 参数指定的函数传递参数 (可选的)
  onComplete : Function - 缓动结束时执行的函数。 
  onCompleteParams : Array - 给 onComplete 参数指定的函数传递参数 (可选的)
  persist : Boolean - 值为 true 时,TweenLite 实例将不会自动被系统的垃圾收集器给收走。但是当新的缓动出现时,它还是会被重写(overwritten)默认值为 false.
  renderOnStart : Boolean - 如果你使用带有延迟缓动的 TweenFilterLite.from() ,并且阻止缓动的渲染(rendering )效果,直到缓动真正开始,将这个值设为 true.默认情况下该值为 false ,这会让渲染效果立即被执行,甚至是在延迟的时间还没到之前。
  overwrite : int - 当前的缓动被创建以后,通过这个参数可以限制作用于同一个对象的其它缓动,可选的参数值有:
  - 0 (没有): 没有缓动被重写。这种模式下,运行速度是最快的,但是需要注意避免创建一些控制相同属性的缓动,否则这些缓动效果间将出现冲突。
  - 1 (全部): (这是默认值,除非 OverwriteManager.init() 被调用过)对于同一对象的所有缓动在创建时将会被完全的覆盖掉。
  TweenLite.to(mc, 1, {x:100, y:200});
  TweenLite.to(mc, 1, {x:300, delay:2}); //后创建的缓动将会覆盖掉先前创建的缓动,(可以起到这样的作用:缓动进行到一半时被中断,执行新的缓动 译者注)
  - 2 (自动): (当 OverwriteManager.init() 被执行后,会根据具体的属性值进行选择)只覆盖对同一属性的缓动。 
  TweenLite.to(mc, 1, {x:100, y:200});
  TweenLite.to(mc, 1, {x:300}); //only "x" 属性的缓动将被覆盖
  - 3 (同时发生): 缓动开始时,覆盖全部的缓动。
  TweenLite.to(mc, 1, {x:100, y:200});
  TweenLite.to(mc, 1, {x:300, delay:2}); //不会覆盖先前的缓动,因为每二个缓动开始时,第一个缓动已经结束了。

举例: 
  将实例名为 "clip_mc" 的 MovieClip 透明度降到 50% (0.5) ,并将它 x 轴位置移动到 120 ,将音量将到 0,缓动总共用时 1.5 秒,代码如下:
  import gs.TweenLite;
  TweenLite.to(clip_mc, 1.5, {alpha:0.5, x:120, volume:0});

  如果希望使用更高级的缓动函数在 5 内,将 alpha 变到 0.5,将 x 移动 到 120 ,使用 "easeOutBack" 弹性函数,缓动整体延迟 2 秒发生,并且在缓动结束时,执行 "onFinishTween" 函数,并且为这个函数传递几个参数,(一个数值 5 以及对 clip_mc 的引用),代码如下:
  import gs.TweenLite;
  import fl.motion.easing.Back;
  TweenLite.to(clip_mc, 5, {alpha:0.5, x:120, ease:Back.easeOut, delay:2, onComplete: onFinishTween, onCompleteParams:[5, clip_mc]});
  function onFinishTween(argument1:Number, argument2:MovieClip):void {
  trace("The tween has finished! argument1 = " + argument1 + ", and argument2 = " + argument2);
  }

  如果你的舞台上的 MovieClip 已经停在了它的结束位置,你只想让它花上5秒种回到这个位置,(只需要改变 y 属性,比当前位置高 100 像素的位置,让它从那里下落), 代码如下(这次使用的是 TweenLite.from 译者注):
  import gs.TweenLite;
  import fl.motion.easing.Elastic;
  TweenLite.from(clip_mc, 5, {y:"-100", ease:Elastic.easeOut});
分享到:
评论

相关推荐

    AS3缓动类Tweenlite的使用说明

    AS3缓动类Tweenlite的使用说明,帮助您更方便的使用TweenLite。

    TweenLite 商业完整插件包

    在实际应用中,开发者通常会将TweenLite与其他前端框架如React、Vue或Angular结合使用,以实现交互式的用户体验。例如,使用TweenLite可以让一个按钮在点击时产生平滑的缩放和颜色变化效果,或者在页面滚动时动态...

    tweenLite中文手册与参数说明

    3. 智能透明度处理:当对象的alpha值降低到0时,TweenLite会自动将其visible属性设为false,节省了计算资源。 4. 多属性缓动:在单次调用中,可以同时缓动对象的多个属性,简化代码。 5. 延时设定:可以为每个缓动...

    Tweener,TweenLite的使用方法

    2. 创建tween:使用`TweenLite.to()`或`TweenLite.from()`方法创建tween。`to()`用于从当前值过渡到目标值,而`from()`则相反,从目标值过渡到当前值。 ```as3 TweenLite.to(myObject, 2, {x:500, alpha:0.5}); ```...

    TweenLite在Flash中类包.rar

    1. **基本用法**:TweenLite的基本使用涉及选择要动画化的对象,指定目标属性,以及设置动画持续时间。例如,`TweenLite.to(object, duration, {x:100})`将使对象在指定时间内移动到x坐标为100的位置。 2. **属性缓...

    as3程序源文件 TweenLite

    在TweenLiteExample文件中,你可能会看到如何导入和初始化TweenLite库,如何创建一个基本的TweenLite实例,如何指定目标对象和属性,以及如何启动动画。通过学习和理解这些示例,你将能够更好地在自己的AS3项目中...

    TweenLite中文文档

    TweenLite支持智能透明度处理(alpha),当对象的alpha值达到0时,它会自动将对象的visible属性设为false,以节省计算资源。同时,你可以一次性调整多个属性,如x、y坐标,而不是分别处理,提高了代码的简洁性和效率...

    AS3版本TweenLite动画类

    TweenLite是ActionScript 3(AS3)中广泛使用的轻量级动画库,它极大地简化了在Flash或Flex项目中的对象属性平滑过渡。这个压缩包包含TweenLite类和TweenFilterLite类,这两个类在创建复杂的动画效果时起着关键作用...

    TweenLite.as类

    TweenLite.as类TweenLite.as类TweenLite.as类TweenLite.as类TweenLite.as类

    Tweenlite类库集合

    Tweenlite类库集合是针对ActionScript 3.0开发的一款高效、轻量级的缓动引擎,被广泛...这个压缩包中的“gs”文件可能包含了关于Tweenlite的源码、示例代码、教程文档等,对于深入理解和应用Tweenlite会非常有帮助。

    tweenlite SWC API DEMO CODE

    文档通常会提供详细的API参考,指导开发者如何初始化TweenLite和TweenMax,如何设置缓动属性,如何添加回调函数,以及如何处理复杂的动画序列。通过阅读文档,开发者可以了解如何利用这两个库的全部功能。 源码对于...

    TweenLite.rar

    6. **插值算法**:TweenLite使用高级的插值算法确保在任何时间点都能精确地计算出对象的中间状态,提供平滑的动画过渡。 7. **事件监听**:TweenLite支持在动画开始、结束、更新等关键点上添加事件监听器,方便...

    [收藏]TweenLite类库

    为了更深入地理解和使用TweenLite,开发者可以参考提供的博客链接:https://zpointer.iteye.com/blog/734228。在这个博文中,作者可能会详细讲解如何安装和引入TweenLite库,以及如何编写基本的动画代码。此外,可能...

    tweenlite类库 as2

    最近几年,为了得到一个更紧凑的,跑得更快,效率 更高的引擎,我创建了 TweenLite (我无法接受其它的一些引擎带来的文件尺寸上的负担).它很快就融入到我的所有工作中。我告诉其它人,让大家能够从中获益,最终,...

    TweenLite as3

    3. **基本用法**:使用TweenLite时,你需要指定目标对象、起始值、结束值和持续时间。例如,将一个对象从当前位置移动到另一个位置: ```actionscript import com.greensock.TweenLite; TweenLite.to(myObject, 2...

    flash as3.0 TweenLite第三方缓动类

    5. **扩展性**:TweenLite与其它GreenSock工具(如TimelineLite、TimelineMax)配合使用,可以创建复杂的交互式动画和时间线。 6. **事件监听**:在动画开始、结束或者更新时,可以添加事件监听器来执行相应的回调...

    TweenLite等常用ActionScript3.0缓动库文件.rar

    TweenLite等常用ActionScript3.0缓动库文件下载,使用方法把下载好的文件解压后拷贝com文件夹到项目目录中,调用时只需import com.greensock.*;就能加载所需要的库文件,希望对你有帮助!!!

    flex 缓动框架tweenlite

    TweenLite为GreenSock公司的一款基于ActionScript的免费开源的物理引擎。目前所开放下载的有 as2.0 和 as3.0 两个版本。用起来也相当的轻便,也是比较主流的第三方缓动引擎在使用方面也比较简单。可以参考网上的中文...

    tweenlite包(.swc文件)

    tweenlite包 as3的第三方包 实现缓动等动画特效 可用于运动 颜色 大小等多种效果的实现

Global site tag (gtag.js) - Google Analytics