《Flash Flex ActionScript 3.0开发权威手册 基础入门+权威详解+范例导航+最佳实践》PDF下载

  • 购买积分:21 如何计算积分?
  • 作  者:张亚飞编著
  • 出 版 社:北京:中国铁道出版社
  • 出版年份:2010
  • ISBN:9787113118877
  • 页数:777 页
图书介绍:本书是一本ActionScript3.0开发权威入门手册,它全面细致地介绍了ActionScript3.0的程序编写方法以及语法规范,并且帮助用户建立正确的、良好的编程习惯,它包含下面五个方面的内容:(1)建立正确的ActionScript认识,纠正了用户经常容易犯的错误;(2)ActionScript3.0基本语法、面向对象开发;(3)Flash可视化开发;(4)Flex可视化开发;(5)最新ActionScript3.0类库。

第1篇 ActionScript语言基础入门 2

第1章 准备基础知识和配置开发环境 2

1.1 正确认识ActionScript 3

1.1.1 正确认识ActionScript的开发工具 3

1.1.2 正确认识ActionScript运行环境和开发语言 4

1.1.3 关于标准和实现 5

1.2 获取和安装Flash CS4 Professional 6

1.2 1 安装Flash CS4 Professional 8

1.2.2 创建第一个ActionScript程序:Hello World 10

1.3 安装和配置Flex Builder 12

1.3.1 安装Flex Builder 3 13

1.3.2 安装Flash Player调试器版 14

1.3.3 创建第一个ActionScript程序:Hello World 14

1.4 使用本书的范例进行测试 16

1.5 Flash软件和Flex Builder软件结合开发提高效率 17

第2章 程序开发的基石——声明变量和使用变量 18

2.1 变量的声明 19

2.1.1 声明和命名变量 19

2.1.2 变量和标识符的命名规范 21

2.1.3 变量的数据类型 21

2.1.4 自定义常量和内建常量 26

2.2 在程序中使用变量 28

2.2.1 为变量赋值和更改变量值 28

2.2.2 使用变量和获取变量值 32

2.3 变量的传值和传址 33

2.3.1 传值变量——按值传递 33

2.3.2 传址变量——按引用传递 34

第3章 ActionScript语法规范和培养良好的编程习惯 35

3.1 空白和多行书写 36

3.2 点语法 37

3.3 卷曲花括号 37

3.4 分号 38

3.5 圆括号 39

3.6 字母的大小写 39

3.7 程序注释 39

3.7.1 单行注释和尾随注释 39

3.7.2 多行注释 40

3.7.3 文档注释 41

3.8 关键字 41

3.9 培养良好的编程习惯 41

3.9.1 通用的变量名、方法名、类名命名约定 42

3.9.2 重构 44

3.9.3 使用注释 44

3.9.4 养成控制内存的好习惯 45

3.9.5 使用弱引用 47

3.9.6 优化代码的一般常识 47

第4章 数据运算和运算规则 50

4.1 ActionScript表达式 51

4.1.1 简单表达式和复合表达式 51

4.1.2 赋值表达式和单值表达式 52

4.2 算术运算符 52

4.3 赋值运算符 54

4.4 字符串运算符 55

4.5 比较运算符和逻辑运算符 56

4.5.1 考虑数据类型 57

4.5.2 全等运算符 58

4.6 位运算符 59

4.7 其他运算符 60

4.7.1 三元条件运算符 61

4.7.2 typeof运算符 61

4.7.3 as运算符 62

4.7.4 is运算符和instanceof运算符 62

4.7.5 圆括号和逗号运算符的结合使用 62

4.7.6 delete运算符 63

4.8 运算符的使用规则 64

4.8.1 运算符优先级规则 64

4.8.2 运算符结合规则 64

第5章 流程控制 66

5.1 语句和语句块 67

5.2 if...else条件语句 68

5.3 switch条件语句 72

5.4 do...while循环 74

5.4.1 第一种模式 74

5.4.2 第二种模式 75

5.5 for循环 76

5.6 for...in循环 76

5.7 for each...in循环 77

5.8 其他流程控制语句 78

5.8.1 break语句 78

5.8.2 continue语句 79

5.8.3 标签语句 80

5.9 流程控制总结 81

5.10 使用with语句 81

第6章 使用内建的全局函数 83

6.1 使用trace()函数 84

6.2 转义操作函数 84

6.2.1 escape()函数和unescape()函数 84

6.2.2 encodeURI()函数和decodeURI()函数 85

6.2.3 encodeURIComponent()函数和decodeURIComponent()函数 86

6.3 转换函数 86

6.3.1 parseFloat()函数 86

6.3.2 parselnt()函数 87

6.3.3 Number()函数和String()函数 87

6.3.4 Boolean()函数 87

6.3.5 int()函数和uint()函数 88

6.3.6 XML()函数和XMLList()函数 89

6.3.7 Vector()函数 90

6.4 判断函数 90

6.4.1 isXMLName()函数 90

6.4.2 isFinite()函数 90

6.4.3 isNaN()函数 91

第7章 自定义函数 92

7.1 函数的定义 93

7.1.1 函数定义的位置 93

7.1.2 创建可以共享的函数 95

7.1.3 测试函数的定义 96

7.2 函数的调用 96

7.3 参数的定义 98

7.3.1 在函数中定义参数的初始值 98

7.3.2 ...(rest)参数——变参数函数 99

7.4 使用函数表达式定义函数 99

7.5 变量的作用范围和生命周期 101

7.5.1 了解变量的作用范围和生命周期 101

7.5.2 局部变量的声明 102

7.5.3 全局变量的声明 102

7.5.4 全局变量和局部变量的使用 103

7.5.5 易出错的变量使用 104

7.6 闭包函数(绑定函数)——一定要理解原理 104

第2篇 ActionScript的面向对象编程和编译 108

第8章 面向对象编程(OOP)——创建类和使用类 108

8.1 澄清——必须首先建立正确的面向对象编程思想 109

8.1.1 对象的抽象 109

8.1.2 对象的使用 110

8.1.3 再谈“对象的抽象”和类 110

8.1.4 面向对象程序设计的优点和基本特征 111

8.1.5 对比——面向对象和结构化程序设计的区别 111

8.2 创建类 112

8.2.1 创建一个ActionScript类 112

8.2.2 类的定义 114

8.3 类的使用 116

8.3.1 怎样创建类的实例 117

8.3.2 Object类的实例化 117

8.3.3 Array类的实例化 118

8.3.4 访问对象属性 118

8.3.5 调用对象方法 118

8.3.6 调用静态方法和访问静态属性 119

8.4 定义方法 119

8.4.1 使用函数表达式定义方法 119

8.4.2 创建构造方法 120

8.5 定义属性 121

8.5.1 属性的初始化 121

8.5.2 使用get和set存取器方法定义属性 122

8.6 在类体内使用语句 125

8.7 在类内使用this关键字 126

8.7.1 闭包方法(绑定方法) 126

8.7.2 事件处理中的闭包 128

8.8 密封类和动态类 129

第9章 建立更可靠的OOP程序——类和成员的访问控制 131

9.1 控制成员访问 132

9.1.1 了解成员访问控制 132

9.1.2 public成员(公共成员) 133

9.1.3 private成员(私有成员) 134

9.1.4 internal成员(包内成员) 135

9.1.5 protected成员(受保护的成员) 137

9.2 类的可访问性 139

第10章 重复使用类——继承和组合 140

10.1 类的继承 141

10.1.1 创建子类 141

10.1.2 创建子类时的注意事项 142

10.1.3 关于多重继承的错误认识 143

10.1.4 使用关键字super调用基类中的方法 144

10.1.5 使用super()语句 144

10.1.6 扩展内建ActionScript类 145

10.2 在类中使用final修饰符禁止继承 145

10.3 类的组合 146

10.3.1 实现类的组合 146

10.3.2 组合的优点 148

10.3.3 了解is-a和has-a 148

10.3.4 关于聚合和合成 148

10.4 了解原型继承 148

10.4.1 关于类继承 149

10.4.2 使用原型继承 149

第11章 静态成员、静态类和枚举(Enumeration) 151

11.1 为什么要定义静态成员和静态类 152

11.2 创建静态成员 152

11.2.1 使用静态成员 153

11.2.2 静态成员和继承 153

11.2.3 使用静态成员的注意事项 154

11.3 静态类 155

11.4 枚举 156

11.4.1 创建枚举 156

11.4.2 使用枚举的优点 157

第12章 多态(Polymorphism)——重载和覆载 158

12.1 方法的重载(overLoad) 159

12.2 重写方法和属性(overRide) 160

12.2.1 方法的覆载 161

12.2.2 属性的覆载 162

第13章 接口和抽象——错误最深重的地方 163

13.1 创建和实现接口 164

13.1.1 接口的定义 164

13.1.2 创建接口 165

13.1.3 接口的实现 166

13.1.4 在接口和实现接口的类中使用默认参数值 168

13.1.5 接口的合并 168

13.2 创建抽象类 168

13.2.1 什么是抽象类 169

13.2.2 定义抽象类 169

13.3 接口和抽象类的区别 170

13.3.1 区分接口和抽象类 170

13.3.2 唯一能使用抽象类的地方 171

第14章 类、接口和函数的组织——使用包 174

14.1 为什么要使用包——预防类的冲突 175

14.2 包的使用 176

14.2.1 使用包实现合理的分类管理 176

14.2.2 包的命名 178

14.2.3 访问类的方法和属性 178

14.2.4 使用包组织接口和实现接口 179

14.2.5 使用包组织函数和访问函数 180

14.3 类、函数的可访问性 181

14.3.1 单个.as文件内定义多个类 181

14.3.2 单个AS文件内类的继承 182

第15章 命名空间 184

15.1 创建和使用命名空间的基本步骤 185

15.1.1 定义命名空间 185

15.1.2 应用命名空间 186

15.1.3 引用命名空间 187

15.1.4 在包外应用命名空间 188

15.2 内建命名空间 189

15.2.1 访问控制属性 189

15.2.2 AS3命名空间 189

15.2.3 flash_proxy命名空间 190

15.2.4 object_proxy命名空间 190

第16章 反射、数据类型检查和数据类型转换 191

16.1 数据类型检查 192

16.1.1 编译时进行类型检查 192

16.1.2 运行时进行类型检查 192

16.2 数据类型转换 193

16.2.1 强制数据类型转换 193

16.2.2 隐式数据类型转换 193

16.2.3 使用as运算符进行数据类型转换的注意事项 194

16.2.4 Upcasting(向上转型)和Downcasting(向下转型) 194

16.3 装箱(Boxing)和拆箱(Unboxing) 195

16.3.1 装箱 195

16.3.2 拆箱 196

16.3.3 装箱后的数据类型检查 197

16.4 早期绑定和后期绑定 197

16.5 反射(Reflection) 198

16.5.1 反射要实现什么 198

16.5.2 反射API 198

16.5.3 类型的详细信息 200

第17章 使用ASDoc输出帮助文档 202

17.1 使用ASDoc工具 204

17.2 文档注释标签 204

第18章 处理程序异常——建立可靠的应用程序 210

18.1 错误和异常情况 211

18.2 异常情况处理 212

18.2.1 使用try...catch...finally代码块 212

18.2.2 使用throw语句 214

18.2.3 何时使用异常捕捉 215

18.3 使用Error处理异常错误信息 216

18.3.1 使用内建的异常类型 216

18.3.2 扩展Error以创建自定义错误 217

18.4 全局错误处理 219

18.4.1 当前SWF文档的全局错误处理 219

18.4.2 加载文档的全局错误处理 222

第19章 指定类路径(Classpath) 224

19.1 在Flash中指定类路径 225

19.1.1 定义全局类路径 225

19.1.2 定义文档级类路径 226

19.2 使用Flex Builder指定类路径 227

19.3 编译器如何解析类引用 228

第3篇 与Flash软件紧密结合的可视化应用程序开发第20章 使用Flash软件进行可视化开发 230

20.1 了解Flash CS4 Professional软件 231

20.1.1 了解时间轴、帧和层 234

20.1.2 使用场景 235

20.2 快速掌握Flash开发环境 236

20.2.1 使用“动作”面板在帧中编写ActionScript代码 236

20.2.2 自定义ActionScript编辑器环境 237

20.2.3 使用代码提示功能 238

20.3 第一个程序:Hello World 240

20.3.1 第一个可视化开发范例 240

20.3.2 使用纯代码开发范例 242

20.3.3 对比总结开发效率 243

20.3.4 文档类和Flash可视化开发的结合 244

第21章 基于时间轴的可视化应用程序开发 246

21.1 在帧中编写程序代码的原则 247

21.1.1 基本的程序定义规范 247

21.1.2 代码执行顺序 248

21.2 控制时间轴上帧的切换 249

21.2.1 控制时间轴的播放 249

21.2.2 时间轴变量初始化陷阱 250

21.3 创建基于时间轴的可视化应用程序 252

21.3.1 利用时间轴实现窗体——准备窗体图形元素素材 253

21.3.2 利用时间轴实现窗体——使用关键帧完成窗体状态 253

21.3.3 利用时间轴实现窗体——添加交互功能改变状态 255

21.4 使用时间轴实现向导窗体 257

21.4.1 准备一个影片剪辑用于实现向导 257

21.4.2 使用关键帧完成向导窗体状态 257

21.4.3 添加交互功能实现向导导航 260

21.5 利用时间轴分解状态和分组模块 264

21.5.1 状态分解的基本依据和最佳做法 264

21.5.2 主控部分 265

21.5.3 被控部分 266

21.5.4 子被控部分 267

21.5.5 通知状态改变 268

21.6 游戏开发中的时间轴应用 269

21.7 攻克可视化开发的核心原理 270

第22章 影片剪辑的嵌套和多时间轴 271

22.1 了解多时间轴 272

22.1.1 多时间轴的层次关系 273

22.1.2 定位通信的目标 273

22.1.3 关于绝对和相对路径 275

22.1.4 正确理解影片剪辑 276

22.2 影片剪辑的基本控制 277

22.2.1 影片剪辑的拖放 277

22.2.2 动态设置和获取影片剪辑的呈现属性 278

22.3 继承MovieClip类将影片剪辑元件作为其子类 280

22.3.1 创建MovieClip子类 280

22.3.2 将子类分配给影片剪辑元件 281

第23章 使用Flash UI组件 282

23.1 在Flash中使用组件的通用方法 283

23.2 改变组件外观 284

23.2.1 在运行时使用样式表改变组件的外观 284

23.2.2 在创作阶段手动改变组件的外观 286

23.3 结合UIScrollBar组件创建滚动文本框 286

23.3.1 创建滚动文本框 287

23.3.2 改变组件的外观 288

23.4 使用数据填充组件 290

23.4.1 基于List的组件 290

23.4.2 在创作环境中使用数据提供者 293

第4篇 与Flex Builder软件紧密结合的可视化应用程序开发第24章 基于窗体的可视化应用程序开发 296

24.1 创建第一个Flex应用程序 297

24.1.1 创建Flex工程 297

24.1.2 构建窗体界面 300

24.1.3 编写ActionScript代码 301

24.1.4 编译和测试 302

24.2 对比Flex与Flash可视化应用程序开发 302

第25章 使用Flex Builder软件 304

25.1 快速掌握Flex Builder软件 305

25.1.1 关闭和打开透视图 307

25.1.2 自定义透视图 308

25.2 使用开发透视图 309

25.2.1 可视化布局 309

25.2.2 使用代码提示功能 310

25.2.3 使用大纲视图 313

25.3 在〈mx:Script〉标签中定义ActionScript代码 313

25.4 应用程序编译和运行设置 314

25.4.1 自动编译和SDK 314

25.4.2 优化编译和查看源代码 314

25.4.3 运行和测试应用程序 315

25.4.4 发布和部署Flex 316

25.5 在窗体中使用控件 317

25.5.1 控件的种类 317

25.5.2 基本的属性设置 319

25.6 在窗体中使用容器组件 320

第5篇 显示对象和互操作 324

第26章 显示对象、显示对象容器和显示列表 324

26.1 显示对象和显示对象容器 325

26.1.1 有哪些类的实例可以作为显示对象 325

26.1.2 有哪些类的实例可以作为显示对象容器 326

26.2 管理显示列表 326

26.2.1 在显示列表中添加显示对象 327

26.2.2 关于Sprite和MovieClip 328

26.2.3 深度和显示叠加顺序 328

26.2.4 添加显示对象 330

26.2.5 操纵容器中的显示对象 330

26.2.6 关于显示对象实例名和显示列表标识 333

26.3 影片剪辑的复制和删除 334

26.3.1 复制影片剪辑 334

26.3.2 删除影片剪辑 337

第27章 事件处理和基本的交互控制 338

27.1 基本事件处理 339

27.1.1 了解怎样实现事件处理 339

27.1.2 处理事件 340

27.1.3 了解事件流 341

27.1.4 事件监听 345

27.1.5 阻止冒泡 346

27.1.6 可用的基本交互事件 347

27.2 响应键盘事件 348

27.2.1 获取按键 349

27.2.2 响应组合键事件 352

27.3 响应鼠标事件 354

27.3.1 获取鼠标属性和自定义鼠标指针 355

27.3.2 捕获鼠标滚轮事件 356

27.3.3 自定义鼠标左键双击事件 356

27.3.4 鼠标与键盘的配合 357

27.4 自定义Flash Player快捷菜单 357

27.4.1 使用ContextMenu对象 358

27.4.2 使用ContextMenultem对象 358

27.4.3 自定义右键快捷菜单的限制 361

27.5 使用Event对象 361

27.5.1 可用的基本事件 362

27.5.2 委派事件和自定义事件 363

第28章 使用文本框呈现文本和设置文本的格式 364

28.1 使用文本框和定义文本格式 365

28.1.1 文本框的基本操作 365

28.1.2 使用TextField动态设置文本框 366

28.1.3 使用TextField响应文本框事件和处理文本 369

28.1.4 使用TextFormat动态设置文本格式 369

28.1.5 使用HTML标签动态设置文本格式 372

28.1.6 使用样式表动态设置文本格式 374

28.2 动态创建和使用文本框 379

28.3 消除嵌入字体的锯齿 380

28.4 动态处理静态文本 381

第6篇 类库和分类功能实现 384

第29章 处理字符串——String类和正则表达式 384

29.1 正则表达式语法 385

29.1.1 正则表达式基本语法 386

29.1.2 优先权顺序 391

29.2 使用RegExp处理字符串正则匹配 391

29.2.1 创建一个RegExp对象 392

29.2.2 使用exec()方法和test()方法进行正则匹配 392

29.3 使用String类处理字符串 394

29.3.1 String类的方法和属性 394

29.3.2 创建打字机效果 396

29.3.3 创建鼠标跟随效果 397

29.3.4 使用match()方法 400

29.3.5 使用replace()方法 401

29.3.6 使用search()方法 402

29.3.7 使用split()方法 402

第30章 数组、矢量和复合数组(哈希映射、Dictionary对象) 404

30.1 创建数组 405

30.1.1 创建数组的基本方法 405

30.1.2 使用索引数组 406

30.2 实现和使用多维数组 407

30.3 使用Array类处理数组 408

30.3.1 常用的范例 410

30.3.2 数组的排序 410

30.4 克隆数组 413

30.4.1 浅表克隆 413

30.4.2 深度克隆 414

30.4.3 创建一个实用的克隆函数 414

30.5 创建和使用复合数组 416

30.5.1 使用Object对象创建复合数组 416

30.5.2 使用Array对象创建复合数组 417

30.5.3 使用Dictionary对象创建复合数组 417

30.5.4 遍历复合数组 418

30.6 矢量 419

30.6.1 使用Vector.〈T〉()全局函数 419

30.6.2 Vector类与Array类的区别 420

第31章 处理日期和时间 422

31.1 使用Date类处理日期和时间 423

31.1.1 返回当前日期和时间 425

31.1.2 返回特定的日期和时间 425

31.1.3 获取特定日期和时间字段 426

31.1.4 设置特定日期和时间字段 426

31.1.5 使用parse()方法解析日期字符串 427

31.1.6 使用Date.UTC()方法返回时间戳 427

31.2 使用Date类创建日历及时钟应用程序 428

第32章 开发网络应用程序 440

32.1 安装和设置网络应用程序的运行环境 441

32.1 1 安装IIS 441

32.1.2 通过服务器请求网页 442

32.2 浏览器怎样从服务器接收和发送数据 442

32.3 Flah应用程序接收和发送数据 444

32.3.1 创建Flash应用程序 444

32.3.2 创建和配置ASP网页 447

32.3.3 测试应用程序 447

32.3.4 使用表单要点解析 448

32.4 跳转至指定的URL或者发送邮件 448

32.4.1 定义文本超链接 448

32.4.2 编写代码 450

第33章 使用W3C DOM处理XML 451

33.1 使用W3C DOM处理XML文档 452

33.1.1 了解XML文档对象 452

33.1.2 DOM基于节点的浏览 454

33.1.3 创建XMLDocument对象,解析XML文档 455

33.1.4 加载和解析外部的XML文档 456

33.1.5 使用XMLNode对象处理XML文档 457

33.1.6 使用XMLDocument对象处理XML文档 459

33.2 使用XMLDocument对象进行密码验证 463

第34章 使用E4X处理XML 468

34.1 使用E4x 469

34.1.1 创建XML对象和XMLList对象 470

34.1.2 访问XML结构 472

34.1.3 修改XML结构 476

34.1.4 使用XML对象的属性和方法 477

34.1.5 使用XMLList对象的方法 481

34.1.6 将XML对象和XMLList对象转换为字符串 482

34.2 操控XML命名空间 482

34.3 使用E4X进行密码验证 485

第35章 使用ActionScript代码处理声音 487

35.1 在Flash软件中处理嵌入的声音 488

35.2 为影片定义背景声音 488

35.3 Flash声音设置 491

35.3.1 事件声音和声音流 491

35.3.2 声音效果 493

35.3.3 多声音交互功能的实现 495

35.4 使用程序处理声音 500

35.4.1 加载和播放MP3 501

35.4.2 控制声音的回放 502

35.4.3 获取MP3 ID3元数据信息 504

35.4.4 加载和播放AAC 505

35.4.5 控制嵌入的声音元件 506

35.4.6 实时音频 507

第36章 使用ActionScript代码处理视频 508

36.1 视频的编码和FLV视频 509

36.1.1 关于On2 VP6、Sorenson Spark和H.264视频编码解码器 510

36.1.2 数字媒体的压缩方式 511

36.1.3 支持的文件格式 511

36.1.4 编码设置 512

36.2 创作内嵌视频的Flash影片 514

36.2.1 导入视频文件 514

36.2.2 控制导入的视频 516

36.3 播放外部的FLV文件 517

36.3.1 使用FLVPlayback组件播放FLV视频文件 517

36.3.2 为FLVPlayback组件定义提示点 520

36.4 使用Video对象呈现视频 521

36.5 实时音频和视频 524

36.6 使用NetConnection对象和NetStream对象播放外部视频文件 525

36.6.1 连接到外部视频文件 526

36.6.2 使用NetStream对象控制视频和音频的播放 526

第37章 为显示对象动态应用滤镜效果 531

37.1 使用滤镜创建水晶字 532

37.1.1 在软件中使用滤镜创建 532

37.1.2 使用滤镜程序代码在运行时动态创建 533

37.2 编写代码动态创建滤镜 534

37.2.1 创建滤镜 535

37.2.2 将滤镜应用于对象和BitmapData实例 536

37.2.3 使用代码定义滤镜 536

37.2.4 使用滤镜创建动态效果 540

37.2.5 应用滤镜的限制——注意事项 541

第38章 创建和处理矢量图形 543

38.1 动态绘制图形 544

38.1.1 绘图的实用方法 545

38.1.2 使用drawTriangles()方法绘制三角形 546

38.1.3 增强的绘图方法 548

38.1.4 路径缠绕 552

38.2 动态处理图形 554

38.2.1 使用ColorTransforrn类动态变换显示对象的颜色 554

38.2.2 使用Matrix类动态变换显示对象的形状 556

38.2.3 使用Point类动态获取像素点 559

38.2.4 使用Rectangle类动态获取对象的区域 560

38.2.5 使用Transform类获取和设置显示对象的颜色和坐标 562

第39章 创建和处理位图以及使用混合模式 565

39.1 动态处理位图 566

39.1.1 BitmapData和MovieClip的结合 568

39.1.2 怎样获取图形点的像素颜色 568

39.1.3 怎样分离和合成位图通道 569

39.1.4 图片像素级溶解过渡效果 571

39.1.5 应用置换映射滤镜创建图像扭曲效果 574

39.1.6 应用矩阵卷积滤镜创建模糊效果 575

39.2 使用混合模式动态处理图形 576

第40章 处理反向运动和IK骨架 580

40.1 创建骨架 581

40.2 在运行时控制骨架 583

40.2.1 创建运行时反向运动动画 584

40.2.2 管理运行时反向运动动画 584

40.3 控制骨架实现复杂的反向运动 585

40.3.1 蟒蛇捕食的复杂反向运动 586

40.3.2 获取骨架的信息 587

40.3.3 使用IKMover移动骨架 589

第41章 使用3D空间和创建3D模型 592

41.1 3D空间的基本知识 593

41.2 使用Flash创建3D空间效果 594

41.2.1 移动、旋转和缩放 594

41.2.2 一个用于演示功能的范例 597

41.3 使用flash.geom包处理3D空间 598

41.3.1 修改视野、消失点、焦距 598

41.3.2 使用Matrix3D实现复杂的3D转换 601

41.3.3 使用Vector3D实现3D矢量 603

41.4 创建3D模型 603

41.4.1 从3D空间到2D空间的转换 604

41.4.2 使用drawTriangles()方法创建立方体 607

41.4.3 使用drawTriangles()方法的剔除功能 609

41.4.4 创建3D模型运动动画 610

41.4.5 为3D模型贴图 611

41.4.6 使用UV映射和UVT映射为3D模型贴图 613

第42章 创建过渡效果动画 619

42.1 动态创建过渡动画效果 620

42.1.1 使用TransitionManager类 620

42.1.2 创建过渡效果动画 622

42.2 使用Tween类动态创建补间动画 628

42.2.1 关于缓动效果 629

42.2.2 Tween类的方法、属性和事件 630

第43章 配合FMS3开发实时通信应用程序 632

43.1 了解Flash Media Server 3服务器 633

43.1.1 了解通信应用程序的开发 633

43.1.2 了解RTMP 634

43.1.3 了解流媒体服务器 634

43.2 安装和配置Flash Media Server 3服务器运行环境 635

43.2.1 关于安装的文件 637

43.2.2 启动和停止服务器 637

43.3 安装开发和调试环境 638

43.3.1 安装创作软件 638

43.3.2 安装、配置麦克风和照相机 638

43.4 创建第一个实时通信应用程序 640

43.4.1 创建实时通信应用程序 640

43.4.2 创建发布视频的SWF程序 640

43.4.3 创建订阅视频的SWF程序 644

43.4.4 测试实时通信应用程序 645

43.5 Flash Player设置功能 646

43.5.1 保密性和本地存储设置 646

43.5.2 麦克风和摄像机侦测与设置 648

第44章 其他常用的ActionScript核心API 650

44.1 使用Boolean类处理逻辑值 651

44.2 使用int类、uint类和Number类 651

44.2.1 使用Number类进行数字类型转换 651

44.2.2 使用int类和uint类进行数字类型转换 653

44.3 使用Math类进行复杂的数学运算 654

44.3.1 使用Math类 654

44.3.2 使用Math类构造三角函数几何曲线 656

44.4 使用Function和arguments对象 660

44.4.1 Function对象 661

44.4.2 arguments对象 662

44.5 使用Stage类动态调整舞台 663

44.5.1 控制帧频 663

44.5.2 控制舞台缩放 664

44.5.3 控制呈现品质 664

44.5.4 处理全屏模式 664

44.5.5 控制舞台的幅面大小 665

44.5.6 控制舞台的对齐 665

44.6 使用flash.utils包函数 666

44.6.1 间隔调用和延迟调用 666

44.6.2 其他函数 667

44.7 使用剪贴板 668

44.8 监控内存使用情况 670

第7篇 编译、调试、部署与实战 672

第45章 牢记Flash可视化开发的3个基本步骤 672

45.1 准备素材 674

45.1 1 准备文档背景 675

45.1.2 背景点缀——漂浮的云动画 675

45.1.3 创建F18机载导弹发射效果 676

45.2 创建用户界面 681

45.2.1 创建雷达电波效果 681

45.2.2 创建飞行控制功能 683

第46章 应用程序的编译和部署 688

46.1 定义Flash影片应用程序的发布设置 689

46.1.1 发布的基本设置 689

46.1.2 有关HTML网页的设置 692

46.1.3 向文档中添加XMP元数据 697

46.2 检测客户端的Flash Player版本 697

46.3 指导客户正确地安装Flash Player 698

46.4 服务器配置 700

第47章 使用Flash和Flex Builder调试ActionScript代码——原理与范例 701

47.1 设置ActionScript脚本调试环境 702

47.1.1 调试器版的Flasn Player 702

47.1.2 卸载浏览器插件 702

47.1.3 安装Debug Player 704

47.2 Flash软件调试工具的使用方法 704

47.2.1 使用“动作”面板 704

47.2.2 使用“输出”面板 705

47.2.3 使用调试器工具 707

47.3 调试范例实战 710

47.4 使用Flex Builder调试透视图调试程序 716

47.4.1 Console视图窗口和trace()函数 717

47.4.2 使用Debug视图窗口 719

第48章 使用Flash软件开发AIR桌面应用程序、安装、部署 721

48.1 使用Flash软件开发、打包第一个AIR应用程序 722

48.1.1 创建应用程序 723

48.1.2 打包应用程序 724

48.1.3 安装应用程序 726

48.1.4 创建从网络安装应用程序 727

48.2 AIR应用程序的文件结构 729

附录A 了解和设置ActionScript编译器模式 733

附录B 保留的ActionScript关键字 736

附录C 键盘键和键控代码值对照表 740

附录D 如何创建影片剪辑元件和按钮元件 744

附录E 在Flash创作环境中使用声音的基础知识 749

附录F XML文档基本语法 754

附录G Flash CS5和Flash Builder4协同工作 769

附录H 参考文献以及资料来源 774