




已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
上次我们学会了如何创建影片剪辑和如何从库中调用影片剪辑。但是flash之所以在动画领域一骑绝尘,靠的可是出类拔萃的动画能力。所以,如何用as实现动画才是问题的关键。现在我们就来探讨一下这个问题。在探讨之前,首先请确认你理解这个概念:帧。已经了解该概念的同学,这一段可以华丽地掠过了。帧是动画里的一个概念,说简单点,就是电影中的一格。见过电影胶片的人都知道,电影是由一格一格的画面组成的。电影镜头靠在极短的时间里播放这些画面而使镜头连贯成运动的影像,具体说是一秒钟24格。动画里的帧也是这样的概念,而帧频就是指每秒钟播放的整数,flash就是靠这个来实现动画播放的,传统的flash关键帧动画也是靠播放头沿时间轴播放而实现动画的。没见过时间轴的,可以打开flash看一眼。那么,如果我们使用as,又如何让影片剪辑动起来呢?只要我们也以帧频的速度控制影片剪辑的属性就行了。下面介绍一些影片剪辑常见的属性。剩下的大家可以去查flash的帮助。(使用帮助是自学软件语言最方便的学习方法,只要按F1就出来了。)在上一篇中其实我们已经接触到了一些。比如myMc._xmyMc._y其中myMc是你的影片剪辑名称。注意这里的名称不是它在库里作为元件的名称,而是它在场景里的名称,也就是createEmptyMovieClip中你为它起的那个名字,或者attachMovie中的第二个名字。比如:this.createEmptyMovieClip(“myMc”,1);中的myMc或者this.attachMovie(“myMovie”,”myBtn”,1);中的myBtn,注意不是myMovie,不知道myMovie是什么的,回去看第二篇。当然你也可能不是使用as创建或者加载的影片剪辑,而是直接使用鼠标从库中拖过来的影片剪辑。那ok,用鼠标点中它,在属性面板中为它命名,此处命的名就是你在程序中使用它的时候要用的名称,就像你叫“小张”,小张就过来了。_x是影片剪辑X轴坐标,_y是影片剪辑的Y轴坐标。myMc._x=10;myMc._y=20;这两句代码就是把myMc放到x轴坐标为10,y轴坐标为20的位置。自己从库中加载一个影片剪辑,把这两个数字改几次,试一下。其他的属性同理。_alpha是影片剪辑的透明度。_width是影片剪辑的宽度。_height是影片剪辑的高度。_rotation是影片剪辑的角度。_xscale是影片剪辑横向上的扩展度。_yscale是影片剪辑总向上的扩展度。没有明白这几个属性什么意思的,也按照上面的方法试一下。好了,既然明白了这几个属性的意思,我想动画应该怎么实现,大家估计已经猜出来了,比如我想让myMc从左侧横着飞进场景的话,只需要控制_x,使它从一个负值,变成某一个正值就可以了。比如让他变到100,那它就停在x轴坐标100的位置了。其他的也同理,比如渐现,渐隐,就是一个透明度的控制,也就是对_alpha的值的控制,变大变小则是对_width、_height、_xscale、_yscale的控制来实现,而旋转,则通过_rotation的控制来实现。原理知道了,如何实现呢。通过循环。只要我们建立一种循环,使他在每次循环的过程中改变myMc的属性值就可以了。比如第一次循环,myMc._x=0;第二次循环,把这个值加1,myMc=1,以此类推,myMc=2,=3,=4,循环下去,而flash的帧频如果是25,也就是每秒钟播放25帧的话,如果我们使这段程序按帧频的频率进行播放的话,那么一秒钟以后,myMc是不是向右移动了25个像素。原理绕来绕去说半天,其实实现起来很简单,我们只需要找到一个能够使程序以帧频的频率运行的方法就可以了,这个方法就是使用onEnterFrame。多看它几眼,记住它吧,你以后会经常用到它。看下面的代码:myMc._x=0;onEnterFrame=function()myMc._x= myMc._x+1;第一句不用解释了,使myMc处于X轴为0的位置上。下面onEnterFrame=function()这是flash里常见的一种形式,onEnterFrame简单解释一下,就是使里边的程序体,按照帧频的频率来运行。比如上面的例子中,如果你的flash文件帧频是25,那么,myMc._x=myMc._x+1就在一秒钟内运行了25次。最后向初学者解释一下myMc._x=myMc._x+1的意思,这句话实际上就是把右侧myMc._x+1的值赋给左侧的myMc._x.。比如第一次循环的时候,myMc._x的值是0,那么0+1以后,再赋给myMc._x,此时myMc._x变成1,循环第二次的时候,1+1再赋给myMc._x,此时myMc._x的值变成2。当然,这句程序还有个更简单的写法:myMc._x+;作用和myMc._x=myMc._x+1的作用是一样的。那如果myMc._x=myMc._x+2该怎么写?myMc._x+2?错了,正确的简写方法是myMc._x+=2;好了,下面运行一下上面的程序,看看什么效果,试着把前面提到的影片剪辑的其他属性换掉_x试一下,看看什么效果。到这里我们基本上使用程序的方式使影片剪辑动起来了,只要多动脑筋,你就可以利用这些制造出丰富多彩的动画效果。但是,有人可能也发现了问题。就是没有办法让动画停下来。这是因为如果我们不把onEnterFrame清除的话,它会一直以帧频的频率运行下去。这不仅使你的动画停不下来,而且还将一直占用着你的CPU资源。所以,当onEnterFrame的任务完成以后,一定要把它及时地结束。使用delete onEnterFrame可以清除正在运行的onEnterFrame。所以上面的例子,我们可以改成下面这样。myMc._x=0;onEnterFrame=function()myMc._x= myMc.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025城管执法服装定制化采购及质量监控制度合同
- 2025年度创新型第三方支付平台委托服务合同
- 2025版石材铺装安全施工责任合同样本
- 2025茶叶连锁经营合作协议范本
- 2026年农村新能源市场太阳能光伏板技术创新研究报告
- 自考专业(工商企业管理)试题附参考答案详解(基础题)
- 自考专业(电子商务)自我提分评估带答案详解(综合卷)
- 酒店客房预订和预订系统合作协议方案
- 工业污染场地修复技术选型与2025年环保政策实施效果及环保产业竞争力研究报告
- 重难点自考专业(学前教育)测试卷附答案(精练)
- 劳务计件合同协议书
- 2025年湖南省长沙市长郡教育集团初三下学期期中数学试题文试题含解析
- 世界科学技术史全册配套完整课件
- 食品安全日管控、周排查及月调度记录表
- 飞机设计适航保证手册模板
- 心律失常课件
- JT-T-1116-2017公路铁路并行路段设计技术规范
- 线虫病疫木及异常枯死松树处置投标方案(技术方案技术标)
- JJG 693-2011可燃气体检测报警器
- 16J934-3中小学校建筑设计常用构造做法
- 足软组织感染的护理查房
评论
0/150
提交评论