您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 咨询培训 > 使用 ActionScript 3.0 创建动画
使用ActionScript3.0创建动画关于补间、过渡和缓动ActionScript中的预建类提供了一种在SWF应用程序内访问各种功能和对象的方式。Tween、TransitionManager和缓动类提供一种简单的方式,可以将动画和过渡动态加入影片中。这些类的使用过程与ActionScript2.0版非常相似。ActionScript2.0与ActionScript3.0类之间的主要区别在于ActionScript包现在是“fl”而不是以前显示的“mx”。本部分概述了ActionScript3.0提供的补间、过渡和缓动选项。首先请查看代码生成补间的基础知识。注意:“mx”组件包中也存在使用ActionScript2.0语言的Tween和TransitionManager类。有关更多信息,请阅读ActionScript2.0文档中的关于Tween和TransitionManager类。入门如果使用Tween或过渡类,您将通过导入过渡包(如果计划使用缓动,还要导入缓动包)开始编码。将以下代码添加到“动作”面板中的“脚本”窗口顶部:importfl.transitions.*;importfl.transitions.easing.*;ActionScript包是一组相关的ActionScript类。通过在开始编写脚本时导入过渡和缓动包,您可以在包中按对象类名称直接访问它们以节省水平空间。导入类还将指示FlashCS4Professional根据SWF文件编译这些类。提示:如果您是ActionScript编写新手,请记住,刚开始时您需要进行大量复制和粘贴操作。当您看到有用的代码片断时,将它复制并粘贴到您的文件中,然后键入文本创建脚本。关于过渡和TransitionManager类过渡是可以应用于影片剪辑的动画,使它们过渡“入”或过渡“出”屏幕。ActionScript3.0包含10种不同的过渡类(可使用缓动方法自定)以及多个可选参数。FlashCS4Professional包含可用于TransitionManager类的以下过渡:百叶窗:使用挤压的矩形的动画遮罩显示下一个屏幕。淡化:淡入或淡出屏幕。飞行:从特定方向滑入屏幕。彩虹效果:使用放大的形状的动画遮罩显示屏幕。照片:使屏幕像放映照片一样显示。像素溶解:使用消失或显示的矩形遮罩屏幕。旋转:旋转当前屏幕。挤压:水平或垂直缩放当前屏幕。划出:使用水平移动的形状的动画遮罩显示屏幕。缩放:放大或缩小屏幕。每种过渡的自定略有不同,可应用于动画。TransitionManager类是用于与过渡交互的管理器对象。以下代码显示说明如何创建“划出”过渡:importfl.transitions.*;importfl.transitions.easing.*;//ApplywipetransitionTransitionManager.start(img1_mc,{type:Wipe,direction:Transition.IN,duration:2,easing:None.easeNone,startPoint:1});上述代码假设在舞台上有名为“img1_mc”的影片剪辑实例。这些新的代码行是在影片中创建划出效果需要的全部内容。注意,您传入了目标的实例以及包含过渡参数的对象。参数始终包含类型、方向、持续时间和缓动属性-以及所需的任何其他特定过度属性。有关更多信息,请参阅ActionScript3.0语言和组件参考中的TransitionManager类部分。关于缓动类缓动是指动画期间的逐渐加快或减慢。例如,球可以在动画开始后逐渐加快速度,在动画结束时减慢速度,直到完全停下来。添加缓动可以使动画显得更真实。Flash提供六种缓动类,可用于Tween和TransitionManager类:返回:将动画立即延伸到过渡范围的一端或两端之外,以模拟溢出效果。回弹:在过渡范围的一端或两端内添加回弹效果。回弹次数与持续时间相关-持续时间越长,回弹次数越多。弹性:添加一端或两端超出过渡范围的弹性效果。弹性量不受持续时间影响。普通:在一端或两端添加较慢的运动。此功能使您能够添加加速效果和/或减速效果。强:在一端或两端添加较慢的运动。此效果类似于普通缓动类,但它更明显。无:添加从开始到结尾、无任何减速或加速效果的匀速运动。此过渡又称为线性过渡。上面六个缓动类各有三种缓动方法:easeIn:在过渡开始时提供缓动效果。easeOut:在过渡结束时提供缓动效果。easeInOut:在过渡开始和结束时都提供缓动效果。注意:“无”类包含“easeNone”方法,如上述TransitionManager代码示例中所示。如果要在Flash中打开这些类或在ActionScript编辑器中阅读此代码,请在Adobe\AdobeFlashCS4\Common\Configuration\ActionScript3.0\projects\Flash\src\fl\transitions中找到类文件。有关TransitionManager类的更多信息,请参阅ActionScript3.0语言和组件参考中的fl.transitions.easing包部分。关于Tween类Tween类允许您在舞台上轻松地移动、缩放和淡化影片剪辑,类似于沿时间轴构建的补间。例如,假设您想让一个影片剪辑通过舞台。您可以选择的方案包括:可以向时间轴添加关键帧,并在这些帧之间插入动作或形状补间可以在onEnterFrame事件处理函数中编写一些代码来实现动画可以使用setInterval()函数每隔一段时间调用一个函数使用Motion类以及动画包中的类可以根据缓动类使用Tween类创建补间动画的一种最简单的方法是使用Tween类。使用以下ActionScript:importfl.transitions.*;importfl.transitions.easing.*;varmyTween:Tween=newTween(ball_mc,x,Elastic.easeOut,0,300,3,true);上述ActionScript代码示例创建了Tween类的一个新实例,它使ball_mc影片剪辑在舞台上沿x轴(从左到右)运动。该影片剪辑在3秒钟内从0像素移到300像素,并且ActionScript应用了一种弹性缓动方法。这意味着以流畅的动作效果向回移动之前,球沿着x轴运动了300像素。以下列表显示了Tween构造函数中的参数,Tween(obj,prop,func,begin,finish,duration,useSeconds):obj(引用):Tween针对的对象prop(字符串):将受影响的属性(在obj中)的名称func(函数):将应用于补间的缓动函数begin(数值):prop的起始值;属性的最初值duration(数值):动作的时间长度;如果值为负或省略,则设置为infinityuseSeconds(布尔值):这个标志指定是否使用秒而不是帧上述第一个代码示例说明了用于设置动画持续时间(秒)的设置。可以使用几帧替代秒来淡化元件。要在Tween类中使用帧持续时间而不是秒,可以将最后一个参数useSeconds从true更改为false。当您将此参数设置为true时,指示Flash指定的持续时间以秒为单位。或者,如果将此参数设置为false,则持续时间为要用于补间的帧数。例如,我们来看看以下代码:importfl.transitions.Tween;importfl.transitions.easing.*;varmyTween:Tween=newTween(ball_mc,alpha,Strong.easeIn,1,0,24,false);上例中使用Strong.easeIn缓动方法淡出ball_mc实例。它不是将实例淡化3秒,而是将实例淡化24帧。使用帧替代秒可以提高灵活性,但请记住,持续时间与当前Flash文档的帧速率相关。如果Flash文档使用的帧速率为12帧/秒(fps),则上述代码片断将实例淡化2秒(24帧/12fps=2秒)。但是,如果帧速率为24fps,则同样的代码将实例淡化1秒(24帧/24fps=1秒)。如果使用帧来衡量持续时间,则在更改文档的帧速率时可以显著改变动画速度,并且无需修改ActionScript。fl.transitions.easing类fl.transitions.easing包中包含可与fl.transitions类一起用来创建缓动效果的类。“缓动”是指动画过程中的渐进加速或减速,它会使您的动画看起来更逼真。此包中的类支持多个缓动效果,以加强动画效果。类类说明BackBack类可以定义三个缓动函数,以便实现具有ActionScript动画的运动。BounceBounce类可以定义三个缓动函数,以便实现具有ActionScript动画的跳动,类似一个球落向地板又弹起后,几次逐渐减小的回弹运动。ElasticElastic类可以定义三个缓动函数,以便实现具有ActionScript动画的运动,其中的运动由按照指数方式衰减的正弦波来定义。NoneNone类定义缓动函数,以实现ActionScript动画的非加速运动。RegularRegular类可以定义三个缓动函数,以便实现具有ActionScript动画的加速运动。StrongStrong类可以定义三个缓动函数,以便实现具有ActionScript动画的运动。使用ActionScript3.0创建动画使用过渡和Tween类可以通过ActionScript使用过渡和Tween类将动画添加到影片剪辑和组件。如果不使用过渡或Tween类,则必须自己编写代码才能实现影片剪辑动画,或修改它们的alpha和坐标值。如果要将缓动添加到动画,则ActionScript(以及算术)可能会很快变得复杂起来。但是,如果要更改特定动画中的缓动,而您使用的是预建类,则可以尝试选择不同类型的缓动类,而不是尝试推测创建平滑动画需要什么新算术公式。要使用过渡类实现舞台上放大影片剪辑的动画,请执行以下步骤:1.选择“文件”“新建”,然后选择创建新的ActionScript3.0文档。单击“确定”创建新的FLA文件。2.选择“文件”“导入”“导入到舞台”,然后从硬盘中选择要导入到FLA文件的图像。图像作为位图图像导入文件中,因此,需要手动将它转换为影片剪辑元件。单击“打开”导入图像。3.选择舞台上导入的图像,然后选择“修改”“转换为元件”(F8)。将元件命名为img1,然后确保将行为设置为“影片剪辑”。元件的默认注册点在元件的左上角(请参阅图1)。图1.默认将注册点设置为左上角4.单击“确定”将位图图像转换为影片剪辑。5.打开“属性”检查器(图像保持选中状态),为影片剪辑指派实例名称img1_mc。6.选择主时间轴的帧1。将以下ActionScript添加到“动作”面板:7.importfl.transitions.*;8.importfl.transitions.easing.*;9.TransitionManager.start(img1_mc,{type:Zoom,direction:0,duration:3,easing:Bounce.easeOut});10.选择“控制”“测试影片”测试动画。此图像快速变大,并在返回原始大小之前会有轻微的回弹效果。如果动画移动太快,则将动画的持续时间(上述代码示例中)从1秒增加为2秒或3秒。您可能会注意到左上角的图像锚定,它向右下角增长。如果希望图像从中心开始放大而不是锚定在一角,则需要在转换位图图像时修改元件的注册点(请参阅上述步骤2)。请执行下列步骤:1.将位图元件的副本从“库”面板拖到当前影片剪辑元件旁的舞台。2.当舞台上的位图图像仍然保持选中状态时,按F8将元件转换为影片剪辑。将元件命名为img2。3.单击3×3网格的中心,将注册点设置为位图中心(请参阅图2)。单击“确
本文标题:使用 ActionScript 3.0 创建动画
链接地址:https://www.777doc.com/doc-4344801 .html