版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、了解ActionScript 3.0,ActionScript的发展,ActionScript 3.0是一种强大的面向对象的编程语言。用来实现Flash动漫效果和编写应用程序。 伴随着Flash版本的升级,自Flash 5.0开始出现了真正意义的、严谨的脚本编程语言ActionScript 1.0,该版本提供了大量的事件和数据类型,为变量的访问提供了点语法。 Flash MX 2004(Flash 7.0)引入了ActionScript 2.0,它带来了变量的类型检测和新的类语法。AS 2.0以类似于JavaScript 1.5的标准重新编写了代码的规范,支持基于类的编程特性,比如继承、接口和
2、严格的数据类型。 2005年,Macromedia公司被Adobe公司收购。2007年,随着Flash CS3(Flash 9.0)的发布,ActionScript升级为3.0版。,认识舞台和主时间轴,学习Flash动画制作时,我们从可视化的角度认识了舞台和主时间轴。知道了舞台是容纳动画对象的区域,而主时间轴则用来控制flash元素的显示。 但是,在ActionScript 3.0中,舞台(Stage)和主时间轴(Main Timeline)有全新的解释。 舞台是显示对象。显示对象是一个重要概念,图形、按钮、补间动画、文本等所有可视元素,都是显示对象。所有显示对象都有自己的属性,stage也有
3、自己的属性,比如帧频、宽度和高度。舞台的属性可以通过【属性】面板手工更改,帧频属性还可以通过AS代码动态修改。,认识舞台和主时间轴,舞台是顶级容器。所有显示对象都必须直接或间接的包含在舞台上才可以在屏幕中显示出来。主时间轴也被包含在舞台中。,上图表示主时间轴、其它显示对象与舞台的关系。舞台是根,主时间轴是舞台中第一个显示对象,其它显示对象添加在主时间轴的帧上。,认识舞台和主时间轴,主时间轴是一个特殊的影片剪辑实例。主时间轴上的帧是放置代码和元件的地方。当帧中放有代码时,会显示a标记。 在主时间轴第1帧添加代码,利用trace()函数,输出字符串“数字媒体技术10级”。 trace()主要用来输
4、出信息,一般用来跟踪程序,从而达到调试程序的目的。 * trace()函数的参数可以是多个字符串,字符串之间若以“ , ”分隔,则会输出空格。,变量的基本功能是存储数据。编程时,尽量避免直接使用数据,而应先把数据存储在变量中,再通过变量来使用数据。 比较下列两段代码的优劣。 if ( Key.isDown ( Key.KEY_A) mc.x - =2 ; if ( Key.isDown ( Key.KEY_D) mc.x+=2 ; if ( Key.isDown ( Key.KEY_W) mc.y - =2 ; if ( Key.isDown ( Key.KEY_S) mc.y +=2 ; 该
5、段程序实现实例名为mc的对象向上、下、左、右四个方向的移动,步长直接用数据“2”表示。若想修改步长,需要修改4处代码。,认识变量,以另一种方式实现相同功能,代码如下: var speed=2; if ( Key.isDown ( Key.KEY_A) mc.x - =speed ; if ( Key.isDown ( Key.KEY_D) mc.x+=speed ; if ( Key.isDown ( Key.KEY_W) mc.y - =speed ; if ( Key.isDown ( Key.KEY_S) mc.y +=speed ; 以变量speed表示步长,若需修改步长,只需要修改变
6、量speed的值。 以变量来管理数据,能使程序条理更清晰,更便于编辑修改。,认识变量,认识变量,AS 3.0变量的定义方式: var 变量名; var 变量名:变量类型; 定义变量的同时可给变量赋值: var 变量名=; var 变量名:变量类型=; 例句: Var i:int=5; /声明整型变量并赋值5,认识变量,舞台可看成一个变量,其变量名为stage。主时间轴也可看成一个变量,其变量名为root。 变量stage的值是系统定义的。通过以下代码可查看变量stage的属性值: trace(帧频=+stage.frameRate); trace(舞台的宽度=+stage.stageWidth
7、); trace(舞台的高度=+stage.stageHeight);,认识影片剪辑实例,元件、类等在舞台上创建的对象称为实例。一个影片剪辑元件可以创建多个实例,每一个实例可以有不同的属性。 例如:在舞台上创建一个影片剪辑元件,元件名为“圆”,在“库”中选中该元件右击鼠标,打开“属性”面板,创建名为“_circle”的类。操作如下图示。,/创建类_circle的实例mc1和mc2 var mc1:MovieClip=new _circle(); var mc2:MovieClip=new _circle(); /将mc1和mc2添加在舞台上 addChild(mc1); addChild(mc
8、2); /设置两个实例的位置属性 mc1.x=100; mc1.y=150; mc2.x=350; mc2.y=150;,认识影片剪辑实例,在第一帧中输入如下代码:,认识动态文本,在舞台上创建动态文本: 1. 选择文本工具,在属性面板上,将文本工具设为“动态文本。 2. 设置动态文本的实例名,例如:txt,在舞台上创建该动态文本实例。 3. 在第1帧输入代码: txt.text=ActionScript交互动画技术; 4. 测试影片,舞台上将输出文本: ActionScript交互动画技术。 动态文本实例也有相关属性,上述代码是设置动态文本实例的文本属性。,了解动作面板,动作面板即编写代码的地
9、方。动作面板由三部分组成:右侧的【脚本窗口】,左侧的【工具箱】,及其下方的【代码导航器】。 脚本窗口是输入代码的区域。而工具箱中包含有每一个动作脚本语言对应的条目。在代码导航器中,可浏览fla文件中所有的对象,以查找动作脚本代码,在导航器中单击某个对象,则与改对象相关联的脚本会显示在脚本窗口中。 为了方便编写、查找、修改代码,flash动作面板提供代码提示、代码折叠等功能。 代码的注释规则与C语言相同。,代码位置,代码能写在帧里,也能写在as文件里。对于复杂的AS编程,用类来组织大量的代码更加清晰和便于管理,而类代码只能放置在as格式的外部文件中。 外部代码可通过include导入到帧,具体步
10、骤如下: 1. 在名为“元件实例.fla”的文件中创建元件“圆”并通过元件属性面板设置其类名称为_circlr。,代码位置,2. 创建名为“cirlce.as”的文件,编写代码: var mc1:MovieClip=new _circle(); var mc2:MovieClip=new _circle(); addChild(mc1); addChild(mc2); mc1.x=100; mc1.y=150; mc2.x=350; mc2.y=150; 3. 在“元件实例.fla”图层1的第一帧中添加代码: includecircle.as;,代码位置,4. 运行“元件实例.fla”文件,可
11、以看到舞台上添加了两个实例。 【说明】如果.fla文件和.as文件不在同一目录,则include应带上文件的目录名。 例如: include“./circle.as ”; /.as文件在.fla文件的上一级目录中 include“c:/mcl/circle.as”; /.as文件在别的路径目录中,要写出完整的目录路径。,认识类代码,面向过程编写的代码,通常只能用于一个过程,即只能用来完成一个动画,扩张性和重用性低。 ActionScript 3.0是面向对象的编程语言,面向对象编程的一个重要特征是类代码的编写和应用。 编写类代码的目的之一是复用代码。例如,AS与C语言一样,三角函数的计算都是以
12、弧度为参数的,编写程序时,常常需要将角度转换为弧度或者将弧度转换为角度。 数学公式:angle*(Math.PI/180)可实现角度转换为弧度。 数学公式:radian*(180/Math.PI)可实现弧度转换为角度。 编写一个名为Degree类,实现角度和弧度的转换。,认识类代码,新建文件夹“类”,新建一个名为Degree.as的文件,在as文件中输入如下代码: package public final class Degree /角度转换为弧度 public static function angleToRadian(angle:Number):Number return angle*(M
13、ath.PI/180); /弧度转换为角度 public static function radianToAngle(radian:Number):Number return radian*(180/Math.PI); ,认识类代码,在同一个文件夹里新建文件“认识类.fla”,在第一帧输入代码: trace(Degree.radianToAngle(Math.PI); 意为输出将PI弧度转换为角度后的值:180。,认识类代码,如果.fla和类文件不在同一个目录里(正常都会这样管理文件),需要引入包来管理类,相应的代码要做一些修改。以上一个问题为例。 在“类”文件夹里再新建文件夹“testpackage”,将Degree.as文件存入testpackage文件夹中,并修改Degree.as代码第一行为: package testpackage 在“认识类.fla”文件中,添加第一行代码:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年浙江省瑞安市高二生物下册期末考试测试卷(完整版)附答案
- 2025年江西省高安市高二生物下册期末考试模拟卷含答案【B卷】
- 2026年河北省武安市高二生物下册期末考试考试卷附答案【培优B卷】
- 2025年浙江省瑞安市高二生物下册期末考试试卷【综合题】附答案
- 2026年河北省安国市高二生物下册期末考试考试卷附参考答案【培优】
- 2026年广东省连州市高二生物下册期末考试试卷含答案【突破训练】
- 2026年河北省武安市高二生物下册期末考试检测卷及完整答案(名校卷)
- 2026年山东省昌邑市高二生物下册期末考试测试卷含答案【夺分金卷】
- 2026年湖南省沅江市高二生物下册期末考试试卷【典型题】附答案
- 2026年四川省彭州市高二生物下册期末考试试卷(达标题)附答案
- 2025年陕西省中考物理真题(A卷+B卷)(含答案解析)
- 《变频器的应用》课件
- 游乐设施设备安装技术方案
- NB-T+10110-2018风力发电场技术监督导则
- JGJ52-2006 普通混凝土用砂、石质量及检验方法标准
- 【8历期末】安徽省合肥市庐阳区2022-2023学年八年级下学期期末历史试题(含解析)
- 国开2024年《机械设计基础》形考任务1-4答案
- 中考前安全教育主题班会
- 城市地下管网的维护与改造要点
- 20G361 预制钢筋混凝土方桩
- 2024年云南省三校生高考铁道运输类《铁道概论》考试题库大全-上(单选题汇总)
评论
0/150
提交评论