TweenLite参数用法中文介绍
TweenLite是一个缓动的类包,功能强大,并且易于使用,为了更多的(E文欠佳的、初学的)朋友了解它,使用它,特此翻译了一下TweenLite类文档中的说明文件,主要是对参数的说明,希望对大家有用。
ACTIONSCRIPT 语言版本: 3.0 (AS2 版也有提供) 更新 及更多文档请访问:
http://www.tweenlite.com/
http://www.greensock.com/tweenlite/
TweenMax参数说明
TweenLiteFilter参数说明
描述:
缓动。 我们都在做。我们很多人都知道除了 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参数说明:
$target : Object – 作为目标的对象, MovieClip或者其它对象
$duration : Number – 动画的时间长度(单位:秒)
$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});
说明:
TweenLite类会让你的 Flash 文件增加 3kb大小。
给参数值加上引号,表示对指定的属性进行相应操作。比如,使用 TweenLite.to(mc, 2, {x:”-20″}); 它将 mc.x 向左移动 20像素,与此相同效果的代码是:TweenLite.to(mc, 2, {x:mc.x – 20});
你可以用别的缓动函数替换 TweenLite 默认的缓动函数: Regular.easeOut.
必须使用 Flash Player 9 或之后版本的播放器 (ActionScript 3.0)
可以对任何 MovieClip 使用 “volume”缓动,就比如: TweenLite.to(myClip_mc, 1.5, {volume:0});
可以将 MovieClip 设定成某种颜色,使用 “tint” 参数,比如: TweenLite.to(myClip_mc, 1.5, {tint:0xFF0000});
想要对数组内容进行缓动,将数值放到一个叫 endArray的数组中即可,例如:
var myArray:Array = [1,2,3,4];
TweenLite.to(myArray, 1.5, {endArray:[10,20,30,40]});
可以在任何时候终止缓动,使用 TweenLite.killTweensOf(myClip_mc); 函数。如果想强制终止缓动,可以传递一个 true 做为第二个参数,比如
TweenLite.killTweensOf(myClip_mc, true);
取掉延迟回调函数,用 TweenLite.killDelayedCallsTo(myFunction_func); 这项功能可以用来控制回调函数的优先级。
使用 TweenLite.from() 方法,可以使用对象从别的位置回到当前的位置。例如,你可以将对象在舞台上摆放整齐(缓动结束时的位置),然后利用缓动,让它们跑到那个位置上去,你可以将缓动的初始位置值 x 或 y 或alpha (或者其它你需要的属性)当做参数传递给这个方法函数。
TweenLite 下载链接:
(AS3版本)http://www.greensock.com/as/greensock-as3.zip
(AS2版本)http://www.greensock.com/as/greensock-as2.zip
下载下来的类包中,有一个 TweenLiteAS3_Sample_1.swf, 初学者可以用它来观察各种缓动的效果,并且直接得到相关的执行代码。算是一个可视化设计的工具,不要错过。
下载到类包以后,解压缩到一个目录比如:d:\AS3Class ,在flash9的首选参数 ->ActionScript->ActionScript3.0设置 中添加类目录,d:\AS3Class\TweenLiteAS3 即可正确引用到相关的类。
应用举例:
import gs.TweenLite;
import gs.easing.*;
stage.addEventListener(MouseEvent.CLICK, onCK);
function onCK(evt):void {
TweenLite.to(mc, 0.5, {x:mouseX, y:mouseY, rotation:360});
}
在舞台上点击,会让mc 元件旋转并跑动到鼠标位置。
TweenLite参数用法中文介绍的更多相关文章
- TweenMax参数用法中文介绍
TweenMax 建立在 TweenLite 和 TweenFilterLite 基础之上,因此,又揉合了这二者的功能,使得功能更加的齐备,但是如果说易用性,觉得还是 TweenLite 来得方便一些 ...
- jQuery中$.fn的用法示例介绍
$.fn是指jquery的命名空间,加上fn上的方法及属性,会对jquery实例每一个有效,下面有个不错的示例,喜欢的朋友可以参考下 如扩展$.fn.abc(),即$.fn.abc()是对jquery ...
- GET请求参数为中文时乱码分析
问题描述 近期做任务时,跟后端联调时遇到一个问题,前端发送get请求,当参数值有中文时,请求失败,请求参数变为乱码.(ps:一般当参数有中文时,很少使用get请求,而是使用post请求来传输数据,请求 ...
- Struct2 向Action中传递参数(中文乱码问题)
就是把视图上的值传递到Action定义的方法中 也就是把数据从前台传递到后台 三种方式: 1. 使用action属性接收参数 比如jsp页面: <body> 使用action属性接收参数 ...
- Zigbee2007协议中文介绍
Zigbee2007中文介绍ZigBee2007规范定义了ZigBee和ZigBee Pro两个特性集,全新的ZigBee 2007规范建立在ZigBee2006之上,不但提供了增强型的功能而且在某些 ...
- Jenkins高级用法 - Jenkinsfile 介绍及实战经验
系列目录 1.Jenkins 安装 2.Jenkins 集群 3.Jenkins 持续集成 - ASP.NET Core 持续集成(Docker&自由风格&Jenkinsfile) 4 ...
- DAX/PowerBI系列 - 查询参数用法详解(Query Parameter)
PowerBI - 查询参数用法详解(Query Parameter) 很多人都不知道查询参数用来干啥,下面总结一下日常项目中常用的几个查询参数的地方.(本人不太欢hardcode的东西) 使用查询 ...
- 关于swagger-ui 参数为中文的时候,后端乱码
项目中用swagger-ui来测试接口,但是发现,参数是中文的时候,后台接收的时候会出现乱码. 不得改用postman,就没事了, 立贴求助,希望有人可以说下这个怎么配置. 后面发现是后端的编码过滤器 ...
- 【C#】POST请求参数含中文,服务器解析得到乱码
问题:POST请求参数含有中文,已将含中文的string以UTF-8编码格式转为byte[],并写入到请求流中,但服务器收到数据后以UTF-8解码,得到的依然是乱码! 百度到了以下方法,但依然无法解决 ...
随机推荐
- Tomcat启动服务报错:Unknown version string [4.0]. Default version will be used.
Tomcat.jdk.web.xml 对应关系: 版本对应错误,更换便可.(版本往下兼容) web.xml——version2.2——JDK1.1——Tomcat3.3 web.xml——versio ...
- 解决configure: WARNING: You will need re2c 0.13.4 or later
我在安装rabbitmq php扩展的时候发现 configure: WARNING: You will need re2c 0.13.4 or later if you want to regene ...
- lower_bound( )和upper_bound( )怎么用嘞↓↓↓
lower_bound( )和upper_bound( )都是利用二分查找的方法在一个排好序的数组中进行查找的. 在从小到大的排序数组中, lower_bound( begin,end,num):从数 ...
- POI报表打印
一.Excel报表(POI) 1.需求说明 在企业级应用开发中,Excel报表是一种最常见的报表需求.Excel报表开发一般分为两种形式: 1.为了方便操作,基于Excel的报表批量上传数据 2.通过 ...
- MongoDB 索引 和 explain 的使用
索引基本使用 索引是对数据库表中一列或多列的值进行排序的一种结构,可以让我们查询数据库变得 更快.MongoDB 的索引几乎与传统的关系型数据库一模一样,这其中也包括一些基本的查 询优化技巧. 首先我 ...
- 设置应用程序的样式并对其进行部署——《Python编程从入门到实践》
我们将使用应用程序django-bootstrap3为Web应用程序设计样式.我们将把项目"学习笔记"部署到Heroku,这个网站能让我们们将项目推送到其服务器,让任何有网络连接的 ...
- 团队作业-Alpha(2/4)
队名:软工9组 组长博客:https://www.cnblogs.com/cmlei/ 作业博客:http://edu.cnblogs.com/campus/fzu/SoftwareEngineeri ...
- POST请求BODY格式区别
在PostMan中用Post方式,Body有form-data,x-www-form-urlencoded,raw,binary四种. Request Header示例:POST /upload.do ...
- Xamarin图表开发基础教程(8)OxyPlot框架
Xamarin图表开发基础教程(8)OxyPlot框架 [示例OxyPlotFormsDemo]在Xamarin.Forms中实现线图的显示. (1)打开Xamarin.Forms项目. (2)将Ox ...
- postgresql - relation 权限相关问题
GRANT ALL PRIVILEGES ON DATABASE 数据库.[schema] TO [用户名]; GRANT ALL ON schema [schema] TO [用户名]; GRANT ...