版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2020年9月11日11时18分,Flash 动画设计与制作,1,Flash 动画设计与制作,2020年9月11日11时18分,Flash 动画设计与制作,2,Flash简介,Flash 是Macromedia 公司的一个非常受欢迎的多媒体产品。 它是一种用于制作和编辑动画和电影的软件。 它可以在使用很少字节量的情况下,实现高质量的矢量图形和交互式动画的制作。 它的动画文件扩展名为.swf,可以插入html语言中,也可以单独成为网页。 Flash 不但能够制作一般的动画,而且可以制作出带有背景声音,具有较强的交互性能的电影。 2006年底Adobe公司收购Macromedia 公司,于07年推
2、出Flash CS版本,在ActionScript方面做了较大改动。,2020年9月11日11时18分,Flash 动画设计与制作,3,Flash动画特点,用Flash制作出来的动画是矢量的,动画放大后,不会引起失真,所形成动画文件占用的存储空间很小,特别适合在网络上使用。 Flash使用插件方式进行工作,用户只要安装一次插件,就可以在浏览器中观看Flash动画。此外Flash支持多种格式图片,支持声音,支持渐变色,支持A1pha透明、蒙扳等功能。 Flash动画电影是一种“流”形式文件,动画是一边下载一边播放的,几乎感觉不到文件下载过程下来。,2020年9月11日11时18分,Flash 动
3、画设计与制作,4,Flash的应用,网站建设 网上 教学课件 影视片头 游戏制作 手机服务 动画片 MTV 广告 ,2020年9月11日11时18分,Flash 动画设计与制作,5,Flash cs3新增功能介绍,界面操作 面板折叠开关 矩形工具 椭圆工具 导入外部资源 动作面板,2020年9月11日11时18分,Flash 动画设计与制作,6,ActionScript的新特性,ActionScript 3中的新特性: 1.运行时排错:错误会运行时抛出以帮助你调试你的影片。 2.运行时变量类型检测:在回放时会检测变量的类型是否合法。 3.类封装:静态定义的类以增强性能。 4.方法封装:方法现在
4、与它们相关的类实例绑定因此在方法中的this将不会改变。 5.E4X :一个新的,更易于操作的xml 6.正则表达式:支持本地化正规表达式。 7.命名空间:不但在xml中支持命名空间而且在类的定义中也同样支持。 8.int和uint数据类型:新的数据变量类型允许ActionScript使用更快的整型数据来进行计算。 9.新的显示列表模式:一个新的,自由度较大的管理屏幕上显示对象的方法。 10.新的事件类型模式:一个新的基于侦听器事件的模式。,2020年9月11日11时18分,Flash 动画设计与制作,7,在哪里输入Flash CS3代码,时间线上(帧) 外部文件 Hello,world 对动
5、画的控制,2020年9月11日11时18分,Flash 动画设计与制作,8,体会一下AS3,下雪效果 在AS3中怎样把库中的元件加载舞台 AS3的事件侦听机制 在AS3中改变对象的位置和缩放对象,先在库中右击该元件,打开连接面板,在类的文本框中给这个类取一个名字,比如myl 在场景的帧中输入: var mymc:myl = new myl(); addChild(mymc); mymc.x = 100; mymc.y = 100;,function 函数名称(事件对象:事件类型):void / 此处是为响应事件而执行的动作。 触发事件的对象.addEventListener(事件类型.事件名称
6、, 函数名称);,2020年9月11日11时18分,Flash 动画设计与制作,9,思考,如何修改(实现)以前的对影片剪辑的控制?,2020年9月11日11时18分,Flash 动画设计与制作,10,ActionScript 3语言基本元素,1、数据的本质及其重要性质 数据是一切编程语言的基石 ActionScript 3中所有数据都是对象 数据类型:,基元数据类型,复杂数据类型,Boolean int Number uint String,处理数字,处理文字,标识真假,Array,Date,Error,Function,RegExp,XML,XMLList, 自己定义的类,2020年9月11
7、日11时18分,Flash 动画设计与制作,11,ActionScript 3语言基本元素,2、变量的声明和使用 变量必须先声明再使用 声明变量的语法,变量命名规则 尽量使用有含义的英文单词作为变量名 变量名采用骆驼式命名法 尽量避免变量名中出现数字编号,var 变量名:数据类型; var 变量名:数据类型 = 值,如果要赋值,值的数据类型必须和变量的数据类型一致,i i=3 var j = “String Value”,var i:int i=100 var k:int = 100,i:int=200 var j:String = “String Value”,2020年9月11日11时18
8、分,Flash 动画设计与制作,12,ActionScript 3语言基本元素,3、使用const声明常量 AS3中新增的关键字 语法,const foo:int = 100,2020年9月11日11时18分,Flash 动画设计与制作,13,ActionScript 3语言基本元素,4、基础数据类型 所有的基元数据类型 两种复杂数据类型,布尔值:Boolean 表示真假 两个值:true,false 声明一个布尔型变量时忘记赋值,默认值为false,Boolean,int,Number,unit,String,Array,Object,2020年9月11日11时18分,Flash 动画设计与
9、制作,14,ActionScript 3语言基本元素,4、基础数据类型 所有的基元数据类型 两种复杂数据类型,数字:int,uint,Number int:有符号的32位整数型,数值范围:-231+(231-1) uint:没有符号的32位整数型,数值范围:0 232-1 Number:64位浮点值,数值范围1.79769313486231e+308 4.960656458412467e-324,Boolean,int,Number,uint,String,Array,Object,2020年9月11日11时18分,Flash 动画设计与制作,15,ActionScript 3语言基本元素,4
10、、基础数据类型 所有的基元数据类型 两种复杂数据类型,数字:int,uint,Number int:有符号的32位整数型,数值范围:-231+(231-1) uint:没有符号的32位整数型,数值范围:0 232-1 Number:64位浮点值,数值范围1.79769313486231e+308 4.960656458412467e-324,Boolean,int,Number,uint,String,Array,Object,使用int,uint,Number应当注意的事项: 能用整数值时优先使用int和uint 整数值有正负之分时,使用int 只处理正整数,优先使用uint 处理和颜色相关
11、的数值时,使用uint 碰到或可能碰到小数点时使用Number 整数数值运算涉及到除法,建议使用浮点值,2020年9月11日11时18分,Flash 动画设计与制作,16,ActionScript 3语言基本元素,4、基础数据类型 所有的基元数据类型 两种复杂数据类型,字符串:String 如何声明字符串? 如何知道字符串的长度?,Boolean,int,Number,uint,String,Array,Object,var stringSample1:String; var stringSample2:String=“”; var stringSample3:String=new Strin
12、g() var stringSample4:String=“abc” var stringSample5:String=new String(“abc”) var stringSample6:String=abc,var stringSample:String=“this is an apple”; var stringLength:Number=stringSample.length; trace(stringLength),2020年9月11日11时18分,Flash 动画设计与制作,17,ActionScript 3语言基本元素,4、基础数据类型 所有的基元数据类型 两种复杂数据类型,数
13、组:Array 数组最多容纳232-1个元素 默认值为空值:null 数组的声明方式 数组元素的访问,Boolean,int,Number,uint,String,Array,Object,var a:Array= var b:Array=new Array() var c:Array=1,2,3,4 var d:Array=new Array(1,2,3,4),根据元素的位置,使用数组运算符 d0,d1,2020年9月11日11时18分,Flash 动画设计与制作,18,ActionScript 3语言基本元素,4、基础数据类型 所有的基元数据类型 两种复杂数据类型,Object及关联数组
14、Object的成员 声明新Object方法,Boolean,int,Number,uint,String,Array,Object,2020年9月11日11时18分,Flash 动画设计与制作,19,ActionScript 3语言基本元素,4、基础数据类型 所有的基元数据类型 两种复杂数据类型,变量的默认值 int,uint的默认值为0 Number的默认值为NaN Boolean的默认值为false String的默认值为null,Boolean,int,Number,uint,String,Array,Object,2020年9月11日11时18分,Flash 动画设计与制作,20,Ac
15、tionScript 3语言基本元素,5、运算符、表达式及运用 要有运算对象才可以进行运算 运算对象和运算符的组合称为表达式 最常用的运算符:赋值运算符(=) 将等号右边的值(右值)复制给等号左边的变量。 等号左边必须是一个变量,不能是基元数据类型,也不能是没有声明的对象的引用。 常见合法形式: 非法形式:,常见合法形式 var a : int=3 var b:String b=“new” a=3+4-5 var c:Object=new Object() var d:Object=c,非法形式 var a 4 =5 “I am a string”=a new Object()=5,2020年
16、9月11日11时18分,Flash 动画设计与制作,21,ActionScript 3语言基本元素,5、运算符、表达式及运用 算数运算符:+,-,*,/,%,求反 算数赋值运算符:+=,-=,*=,/=,%= 关系运算符(判断相等关系):=,!=,=,!= 关系运算符(判断大小关系):=, 逻辑运算符: var bar:int=5; if(foobar) trace(“Foo is winner!”) else trace(“Bar is winner!”) ,2020年9月11日11时18分,Flash 动画设计与制作,25,ActionScript 3 流程控制,三种格式 格式3:if(条
17、件表达式1) 流程1; /如果条件表达式1成立则执行流程1 else if(条件表达式2) 流程2; /如果条件表达式2成立则执行流程2 else if(条件表达式3) 流程3; /如果条件表达式3成立则执行流程3 else if /else if语句可以一直写下去,用以判断多种情况。,2020年9月11日11时18分,Flash 动画设计与制作,26,ActionScript 3 流程控制,var foo:int = 500; if(foo 0) trace(“foo 是一个正整数”) else if(foo 100) trace(“foo 是一个大于100的正整数”) else trace
18、(“foo 小于0”) ,输出:,foo 是一个正整数,var foo:int = 500; if(foo 100) trace(“foo 是一个大于100的正整数”) else if(foo 0) trace(“foo 是一个正整数”) else trace(“foo 小于0”) ,2020年9月11日11时18分,Flash 动画设计与制作,27,ActionScript 3 流程控制,范例:重复左右移动的飞鸟 X方向位置不断改变 到达边缘后反向 小鸟影片剪辑添加监听事件,2020年9月11日11时18分,Flash 动画设计与制作,28,ActionScript 3 流程控制,循环 语句
19、: while,do-while,for, forin, for eachin,设计步骤: 确定循环内容(循环体) 确定循环变量 循环三要素: 循环初始化 循环条件表达式 循环体中必须有改变循环变量值的语句,2020年9月11日11时18分,Flash 动画设计与制作,29,ActionScript 3 流程控制,while循环控制语句 功能:当满足条件表达式的时候,再执行循环体。 while(循环条件) 循环体; ,do 循环体; while(循环条件) 不管“条件”成立与否、循环与否,循环体至少都要执行1次。,2020年9月11日11时18分,Flash 动画设计与制作,30,Action
20、Script 3 流程控制,范例(while): 在舞台复制出10个小鸟,而且水平位置、垂直位置、水平缩放比例、垂直缩放比例和透明度都是随机变化的。 范例(dowhile): 根据用户指定的数量加入对象,随机数的使用,2020年9月11日11时18分,Flash 动画设计与制作,31,ActionScript 3 流程控制,循环语句 For循环控制语句 功能:让指定程序代码块执行一定次数的循环。 格式: for (初始化;循环条件;步进) 循环体; ,2020年9月11日11时18分,Flash 动画设计与制作,32,ActionScript 3 流程控制,范例:复制小鸟 范例:数的累加,va
21、r sum = 0; for (var i=1; i=100; i+) sum = sum + i; trace(sum),2020年9月11日11时18分,Flash 动画设计与制作,33,ActionScript 3 流程控制,for in和for each in 循环条件是对象的某一组属性或某一数组的元素集合 基本语法格式:,循环次数由引用对象的属性个数或者数组元素的个数决定 该循环实际上需要穷举该对象或数组中的所有内容。,for (变量 in 对象或数组名) /运行脚本 ,for each(变量 in 对象或数组名) /运行脚本 ,2020年9月11日11时18分,Flash 动画设计
22、与制作,34,ActionScript 3 流程控制,范例,var myBooks:Object= cookbook:”ActionScript 3.0 Cookbook 中文版” , asbook:”ActionScript 3.0殿堂之路”, mxbook:”Flash MX 2004 ActionScript动画设计” ,for (var k in myBooks) trace(“成员名字(键):”+k+”t成员(值):”+myBooksk) ,for each(var k in myBooks) trace(“成员:”+k) ,成员名字(键):mxbook成员(值):Flash MX
23、2004 ActionScript动画设计 成员名字(键):asbook成员(值):ActionScript 3.0殿堂之路 成员名字(键):cookbook成员(值):ActionScript 3.0 Cookbook 中文版,成员:ActionScript 3.0殿堂之路 成员:ActionScript 3.0 Cookbook 中文版 成员:Flash MX 2004 ActionScript动画设计,2020年9月11日11时18分,Flash 动画设计与制作,35,ActionScript 3 流程控制,with语句 如果有一系列语句都作用于同一对象上,则可以使用with语句一次指定
24、全部语句对该对象的参考 使用with语句可以提高程序的执行速度,并且可以避免重复输入对象名称的问题。,with(mymc) alpha = 0.2 x= 200 y = 200 ,mymc.alpha=20 mymc.x = 200 mymc.y = 200,=,范例:等待目的地坐标的狮子,思考:当输入值超出边界,给出相应提示,2020年9月11日11时18分,Flash 动画设计与制作,36,ActionScript 3 流程控制,break和continue语句 都在循环体内使用; Break用来直接跳出循环,不再执行循环体内后面的语句。 continue语句只是终止当前这一轮的循环,直接
25、跳到下一轮循环,而在这一轮循环中,循环体内continue后面的语句也不会执行。,for(var i:int=0;i5;i+) if(i=3)break; trace(当前数字:+i); ,for(var i:int=0;i5;i+) if(i=3)continue; trace(当前数字:+i); ,2020年9月11日11时18分,Flash 动画设计与制作,37,ActionScript 3 流程控制,选择分支判断switch,switch(值或表达式) case 值或表达式1:语句1;break; case 值或表达式2:语句2;break; case 值或表达式3:语句3;break
26、; defalt: 语句4; ,2020年9月11日11时18分,Flash 动画设计与制作,38,ActionScript 3 流程控制,var fruits:Array=apple,banana,grape,watermelon,mango; var currentFruit:String=fruitsMath.floor(Math.random()*fruits.length); trace(the fruit you selected is :+currentFruit); switch (currentFruit) case apple : trace(apple,apple,ple
27、ase pay for apple!); break; case mango : trace(mango,mango,please pay for mango!); break; default : trace(0,you have a free chance to eat :+currentFruit); ,switch (currentFruit) case apple : trace(o ,o , its an apple!); case mango : trace(eat for free!); break; case banana : case grape : trace(pleas
28、e pay for it!); break; default : trace(o , I wont buy watermelon);,2020年9月11日11时18分,Flash 动画设计与制作,39,ActionScript 3中的函数,函数:执行特定任务并可以在程序中重用的代码块。 两类:方法;函数闭包 两种定义方式:函数语句声明法;函数表达式声明法,2020年9月11日11时18分,Flash 动画设计与制作,40,ActionScript 3中的函数,参数: 按值传入参数:参数对象会复制一个副本供函数内部操作,参数对象本身不会受影响 按引用来传入参数:不复制副本,函数内操作参数对象的引
29、用会改变参数对象的状态。 Action Script3中,所有的参数都是按引用传入的。 基元数据类型是不变对象,传引用和传值的效果一样。,2020年9月11日11时18分,Flash 动画设计与制作,41,ActionScript 3中的函数,范例:,function test(valuePara:int,referencePara:Array):void valuePara=100; referencePara.Push(100); var a:int=5 var b:Array=1,2,3; test(a,b); trace(a); trace(b);,输出:5, 输出:1,2,3,100,2020年9月11日11时18分,Flash 动画设计与制作,42,ActionScript 3中的函数,设置默认参数:调用函数时,没有写明参数,会调用该参数默认值代替。 格式:fu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中医体重管理
- 医院医保自查自纠整改报告
- 《光弹材料与模型》课件
- 参观建川博物馆活动
- 企业风险防控培训
- 优化学校招生录取制度规范措施
- 医疗主任竞聘
- 五年级上册数学第五单元小数乘法和除法单元复习举一反三题型总结(知识点例题变式题)教师版
- 专科护士培训竞选
- 《细胞凋亡华子春》课件
- 广东常用的100种植物
- 生产现场作业十不干PPT课件
- 输电线路设计知识讲义
- 物料承认管理办法
- 业主委员会成立流程图
- AEFI防范与处置PPT课件
- (完整版)全usedtodo,beusedtodoing,beusedtodo辨析练习(带答案)
- 小学综合实践活动方便筷子教案三年级上册精品
- 阜阳市肿瘤医院病房大楼建筑智能化设备、材料采购及安装系统工程技术要求
- 意大利汽车零部件企业
- 食品经营操作流程图112
评论
0/150
提交评论