出版時間:2008-7 出版社:電子工業(yè)出版社 作者:喬珂 等編著 頁數(shù):808 字?jǐn)?shù):1294000
Tag標(biāo)簽:無
前言
序:美妙的語言 借閱讀《ActionScript 3.0權(quán)威指南》書稿的機會,我不禁重新審視ActionScript——這門獨具魅力的語言,一個廣闊思想的展臺?! ctionScript最初設(shè)計用于Flash交互與控制動畫。當(dāng)開發(fā)者可以快速地建立動畫,配合音效,并根據(jù)瀏覽者的意圖來產(chǎn)生互動時,是多么令人振奮!越來越多的人開始使用Flash創(chuàng)建屬于自己的個人網(wǎng)站,在互聯(lián)網(wǎng)上展示自己。網(wǎng)絡(luò)上隨處可見五彩繽紛的Flash作品、游戲,使我看到了許多讓人贊嘆的精彩創(chuàng)意。 自2.0以后ActionScript類庫的更新,標(biāo)志著ActionScript已經(jīng)成為一門面向?qū)ο笳Z言,隨著越來越多的Flash作為前端RIA(Rich Internet application)應(yīng)用的出現(xiàn),宣告了ActionScript進入新的時代。直到Micromedia被Adobe公司收購以后,ActionScript遇到了一個不大不小的變革。說大,是因為語言結(jié)構(gòu)發(fā)生了很大的變化;說小,是因為雖然類的組織進行了更加完善的架構(gòu),而根本的思想還是從之前的體系演化而來的。當(dāng)然,在這個過程中,ActionScript的能力得到了進一步的強化,也吸引了很多從事Java或C++的程序員進來,于是,F(xiàn)lash被更加明確地分成了兩類:界面動畫圖形設(shè)計與交互程序。不可否認(rèn),ActionScript 3核心的類庫做出了大幅度的重構(gòu),并且在語法上也和ActionScript 2存在著較大的分歧。然而,要注意的是,雖然這個改動導(dǎo)致了很多從事ActionScript 2開發(fā)者難以適應(yīng),但是,新的架構(gòu)體系與其說是改變了很多東西,還不如說是提煉了很多東西,它以更規(guī)范、更高效的形態(tài)來逐步改變開發(fā)者的思想。令人欣慰的是,本書作者喬珂也清楚看到了ActionScript的變化脈絡(luò),在這部800多頁的專著中,他用易于理解的思路和語言詳細(xì)闡述了ActionScript作為一門日趨豐滿的面向?qū)ο笳Z言的獨特魅力,并結(jié)合自身開發(fā)經(jīng)驗為讀者提供了豐富的案例來借鑒學(xué)習(xí)?! ∥乙恢闭J(rèn)為,無論是Flash IDE也好,F(xiàn)lex Builder也好,或者什么都好,作為開發(fā)環(huán)境而言,并沒有優(yōu)劣之分。直到現(xiàn)在,還有很多朋友在提出類似到底哪一個更好的問題。其實,無論是RIA何種應(yīng)用,游戲,網(wǎng)站,動畫展示等,無非都是以“swf”為后綴的文件,用Flash Player解析呈現(xiàn)而已,這是Flash在終端所展示的形態(tài)。現(xiàn)在,你既可以用Flash輕松加入喜愛的圖片、音樂,并有序地組織好這些資源,也可以使用Flex快速創(chuàng)建應(yīng)用程序,通過調(diào)用別的后臺語言,如PHP、JSP、ColdFusion等獲取數(shù)據(jù),再使用合理的邏輯把數(shù)據(jù)和界面組織起來。如果你熟悉了ActionScript,在這個平臺里,你可以盡情地按照你的想象來發(fā)揮,我相信現(xiàn)在的ActionScript 3有著非常優(yōu)秀的架構(gòu)體系和寬廣的應(yīng)用面,也相信會有更多的朋友加入到這個充滿活力的陣營中來?! 「兄xAdobe開發(fā)組的所有成員,奉獻和創(chuàng)造了如此美妙的語言?! ∠M吹奖緯淖x者,不要錯過領(lǐng)悟美妙的ActionScript的機會?! 八{(lán)色理想”網(wǎng)站站長 曾沐陽
內(nèi)容概要
本書將ActionScript 3.0作為一種全新的、獨立的、具有自己特色的語言,系統(tǒng)全面地介紹了此語言的結(jié)構(gòu)和概念?! ∪珪耘囵B(yǎng)實際開發(fā)能力為目的,將語言的基本語法、核心概念及新增功能統(tǒng)一起來。根據(jù)知識點在語言邏輯體系和實際應(yīng)用中的權(quán)重,對語法和概念重新進行分級和組織。結(jié)合Flash網(wǎng)絡(luò)應(yīng)用和腳本開發(fā)的實際,圍繞面向?qū)ο蟮拈_發(fā)思想,深入闡述了ActionScript 3.0的自身邏輯。不僅解決了應(yīng)該如何做的問題,還回答了為何如此的疑問。引領(lǐng)讀者體會語法表象之內(nèi)的深層美感,培養(yǎng)ActionScript 3.0開發(fā)思維,使讀者能流暢地編寫代碼。 本書內(nèi)容由淺入深平緩過渡,適用于各種程度的讀者。即使讀者沒有相關(guān)知識背景,也能輕松閱讀本書,并最終掌握ActionScript 3.0。對于有開發(fā)經(jīng)驗的讀者,閱讀本書有助于脫離慣性思維,重新認(rèn)識這種語言。
作者簡介
喬珂,互動設(shè)計師,矢量插畫家。常年致力于圖形圖像系統(tǒng)的基礎(chǔ)研究,追蹤國際設(shè)計工業(yè)和程序開發(fā)的最新動態(tài)。先后供職于多家大型互聯(lián)網(wǎng)企業(yè)和研究機構(gòu),在超過8年的設(shè)計開發(fā)經(jīng)歷中,結(jié)合設(shè)計時尚與程序數(shù)理,逐步創(chuàng)立了高動態(tài)性、高時效性的成本評估模型。參與和負(fù)責(zé)過多個大
書籍目錄
第1篇 ActionScript 3.0的外圍知識 第1章 ActionScript 3.0綜述 1.1 腳本語言基礎(chǔ)知識 1.1.1 腳本語言的概念 1.1.2 腳本和程序 1.1.3 腳本語言的特性 1.2 Flash和ActionScript 1.2.1 LEGO設(shè)計模式 1.2.2 Flash和Action的起源 1.2.3 發(fā)展歷程 1.2.4 ActionScript 3.0的進步 1.2.5 通用性 1.2.6 FlashLite 1.2.7 ActionScript 3.0編程工具 1.3 Flash的內(nèi)部機制 1.3.1 Flash應(yīng)用的生命流程 1.3.2 SWF文件的Tag結(jié)構(gòu) 1.3.3 Tag結(jié)構(gòu)存儲實例 1.3.4 編譯解析 1.3.5 AVM2的解析 1.3.6 執(zhí)行時序 1.4 AS3同RIA開發(fā) 1.4.1 交互程序的進化 1.4.2 軟件系統(tǒng)體系結(jié)構(gòu) 1.4.3 RIA的誕生及其優(yōu)勢 1.4.4 Adobe AIR簡介 1.4.5 ActionScript 3.0與Adobe AIR開發(fā) 1.4.6 AIR學(xué)習(xí)步驟 1.5 小結(jié) 第2章 配置開發(fā)環(huán)境 2.1 Flash CS3開發(fā)環(huán)境 2.1.1 選擇Flash版本 2.1.2 安裝Flash CS3 2.1.3 配置Adobe AIR環(huán)境 2.1.4 Flash CS3的代碼編輯器 2.1.5 快捷工具欄 2.1.6 專家工具 2.1.7 代碼調(diào)整工具 2.1.8 分頁式代碼標(biāo)簽 2.1.9 自定義代碼編輯器 2.1.10 自動套用格式 2.2 Adobe Flex Builder開發(fā)環(huán)境 2.2.1 系統(tǒng)要求 2.2.2 安裝準(zhǔn)備 2.2.3 安裝模式 2.2.4 安裝Flex Builder 2 2.2.5 Flash Player 9 Debug版 2.2.6 完成Flex Builder 2的安裝 2.2.7 Flex Builder 2集成開發(fā)環(huán)境 2.2.8 Navigator文件瀏覽器 2.2.9 Flex Builder中的代碼編輯器 2.2.10 Outline提綱瀏覽器 2.2.11 嵌入式Outline窗口 2.2.12 添加調(diào)試面板 2.2.13 Flex Builder 2設(shè)計輔助環(huán)境 2.2.14 自定義Flex Builder 2 2.3 FlashDevelop開發(fā)環(huán)境 2.3.1 FlashDevelop 3.0的特色 2.3.2 安裝FlashDevelop 2.3.3 項目編譯測試 2.3.4 自定義代碼編輯器 2.3.5 優(yōu)化中文字符顯示 2.3.6 全局自定義類庫 2.3.7 項目自定義類庫 2.3.8 設(shè)置項目輸出 2.4 小結(jié) 第3章 創(chuàng)建“Hello World”程序 3.1 Flash CS3創(chuàng)建“Hello World”程序 3.1.1 創(chuàng)建ActionScript 3.0項目 3.1.2 確定代碼位置 3.1.3 輸入ActionScript 3.0腳本 3.1.4 測試“Hello World”影片 3.1.5 使用舞臺元件 3.1.6 舞臺元件與腳本訪問 3.1.7 控制舞臺文本 3.1.8 動態(tài)創(chuàng)建類型實例 3.1.9 操作顯示列表 3.1.10 ActionScript 3.0的靈活性 3.2 Flex Builder 2創(chuàng)建“Hello World”程序 3.2.1 Flex程序的構(gòu)成 3.2.2 MXML的結(jié)構(gòu) 3.2.3 MXML的命名空間 3.2.4 MXML創(chuàng)建和定義組件 3.2.5 用戶界面同腳本邏輯的分離 3.2.6 MXML的專用組件 3.2.7 創(chuàng)建Flex項目 3.2.8 分析自動代碼 3.2.9 使用Flex快速編寫代碼 3.2.10 編譯MXML結(jié)構(gòu)的“Hello World”程序 3.2.11 在MXML中使用ActionScript 3.0 3.2.12 添加標(biāo)簽事件響應(yīng) 3.2.13 MXML和Action Script的執(zhí)行邏輯 3.2.14 ActionScript的內(nèi)聯(lián)、級聯(lián)和外聯(lián) 3.2.15 使用外聯(lián)函數(shù) 3.2.16 可視化MXML編輯器 3.2.17 復(fù)雜代碼的編譯 3.2.18 貫徹MXML的分置原則 3.3 使用FlashDevelop 3.0編寫程序 3.3.1 新建FlashDevelop項目 3.3.2 創(chuàng)建MXML應(yīng)用文件 3.3.3 代碼輸入技巧 3.3.4 編譯和執(zhí)行MXML應(yīng)用 3.3.5 創(chuàng)建外聯(lián)腳本文件 3.3.6 按鈕控件及事件響應(yīng) 3.3.7 項目編譯和交互測試 3.3.8 數(shù)字密碼輸入器 3.3.9 界面分析 3.3.10 新建項目 3.3.11 創(chuàng)建密碼框 3.3.12 創(chuàng)建按鈕 3.3.13 建立ActionScript 3.0函數(shù) 3.3.14 整合表示層和邏輯層文件 3.3.15 編譯和運行程序 3.4 手工編譯 3.4.1 Flex編譯器 3.4.2 配置全局路徑 3.4.3 創(chuàng)建代碼文件 3.4.4 命令行手工編譯 3.4.5 手工編譯項目 3.5 小結(jié) 第2篇 ActionScript 3.0的語言要素 第4章 語法基礎(chǔ)結(jié)構(gòu) 4.1 標(biāo)識符 4.1.1 標(biāo)識符的概念 4.1.2 標(biāo)識符命名的技術(shù)規(guī)則 4.1.3 命名約定 4.2 關(guān)鍵字 4.2.1 表達式 4.2.2 語句控制 4.2.3 定義 4.2.4 屬性關(guān)鍵字 4.2.5 編譯指令 4.2.6 區(qū)分IMPORT和INCLUDE關(guān)鍵字 4.2.7 類的長名稱 4.3 數(shù)據(jù)類型 4.3.1 數(shù)據(jù)類型的概念 4.3.2 基元值和復(fù)雜值 4.3.3 數(shù)據(jù)類型的對象封裝 4.3.4 Boolean數(shù)據(jù)類型 4.3.5 int數(shù)據(jù)類型 4.3.6 Null數(shù)據(jù)類型 4.3.7 Number數(shù)據(jù)類型 4.3.8 String數(shù)據(jù)類型 4.3.9 uint數(shù)據(jù)類型 4.3.10 void數(shù)據(jù)類型 4.3.11 無類型數(shù)據(jù)類型 4.3.12 復(fù)雜數(shù)據(jù)類型 4.4 變量和常量 4.4.1 字面值 4.4.2 變量及其聲明 4.4.3 變量的賦值 4.4.4 變量的默認(rèn)值 4.4.5 Number變量和NaN 4.4.6 變量的作用域 4.4.7 變量的后置聲明 4.4.8 常量 4.5 運算符和功能符 4.5.1 加法算術(shù)運算符 4.5.2 乘法算術(shù)運算符 4.5.3 一元運算符++和-- 4.5.4 左移位運算符>和>>> 4.5.6 與、或、非的位操作 4.5.7 位操作與特征位 4.5.8 特征位的賦值 4.5.9 特征位的開關(guān)操作 4.5.10 “^”位異或操作符 4.5.11 高級開關(guān)控制 4.5.12 邏輯運算符 4.5.13 比較運算符 4.5.14 賦值運算符 4.5.15 組合賦值運算符 4.5.16 功能符 4.6 類型轉(zhuǎn)換和類型檢查 4.6.1 隱式類型轉(zhuǎn)換 4.6.2 顯式類型轉(zhuǎn)換 4.6.3 失效轉(zhuǎn)換 4.6.4 靜態(tài)類型語法 4.6.5 語法檢查 4.6.6 編譯時類型檢查 4.6.7 運行時類型檢查 4.6.8 數(shù)據(jù)類型成員的檢測 4.6.9 as運算符 4.6.10 強制類型轉(zhuǎn)換 4.6.11 運算符與隱式類型轉(zhuǎn)換 4.6.12 數(shù)值類型的轉(zhuǎn)換 4.6.13 布爾類型的轉(zhuǎn)換 4.6.14 字符串的轉(zhuǎn)換 4.7 小結(jié) 第5章 流程控制與函數(shù) 5.1 條件流程 5.1.1 條件流程的概念 5.1.2 if()語句 5.1.3 if()...else...語句 5.1.4 三元運算符 5.1.5 多級條件流程 5.1.6 if()…else if()…語句 5.1.7 switch語句基礎(chǔ)用法 5.1.8 switch語句常見錯誤 5.1.9 條件流程的邏輯控制 5.2 循環(huán)流程 5.2.1 for循環(huán) 5.2.2 for()語句執(zhí)行邏輯 5.2.3 for…in循環(huán) 5.2.4 for each…in循環(huán) 5.2.5 while循環(huán) 5.2.6 do…while循環(huán) 5.2.7 break和continue 5.2.8 label標(biāo)簽與循環(huán)嵌套 5.2.9 非循環(huán)標(biāo)簽 5.2.10 標(biāo)簽嵌套 5.2.11 循環(huán)與作用域 5.3 函數(shù) 5.3.1 函數(shù)的基本概念 5.3.2 函數(shù)定義語句 5.3.3 調(diào)用函數(shù) 5.3.4 作用范圍和定義位置 5.3.5 使用參數(shù) 5.3.6 可選參數(shù) 5.3.7 參數(shù)的傳遞 5.3.8 函數(shù)輸出 5.3.9 使用返回值 5.3.10 函數(shù)表達式 5.3.11 函數(shù)表達式的缺點 5.3.12 函數(shù)表達式的內(nèi)存優(yōu)勢 5.3.13 函數(shù)表達式與編譯提升 5.3.14 嵌套函數(shù) 5.3.15 使用arguments對象 5.3.16 arguments的方法 5.3.17 arguments與遞歸函數(shù) 5.3.18 arguments與函數(shù)重載 5.3.19 可變參數(shù) 5.3.20 函數(shù)作用域鏈 5.3.21 函數(shù)封包 5.3.22 函數(shù)對象 5.4 流程圖 5.4.1 程序流程圖的概念 5.4.2 程序流程圖的作用 5.4.3 分級流程圖體系 5.4.4 步驟列表 5.4.5 偽代碼 5.4.6 經(jīng)典數(shù)據(jù)流程圖的構(gòu)成 5.4.7 指向線與執(zhí)行框(矩形框) 5.4.8 判別框(菱形框) 5.4.9 起始框和終止框(圓圈) 5.4.10 流程圖設(shè)計原則 5.4.11 常見流程圖結(jié)構(gòu) 5.4.12 嵌套結(jié)構(gòu)的流程圖 5.5 小結(jié) 第6章 面向?qū)ο缶幊? 6.1 對象和類 6.1.1 編程模式 6.1.2 模式進化 6.1.3 OOP與模塊化 6.1.4 OOP開發(fā)過程 6.1.5 類設(shè)計策略 6.1.6 類元素的屬性定義 6.1.7 術(shù)語記法 6.1.8 類的構(gòu)造函數(shù) 6.1.9 繼承:父類和子類 6.1.10 覆蓋和重載 6.1.11 多態(tài) 6.1.12 嵌套類和動態(tài)類 6.2 面向?qū)ο蟮哪_本實現(xiàn) 6.2.1 原型對象機制 6.2.2 操作原型對象 6.2.3 原型鏈 6.2.4 原型繼承 6.2.5 原型機制下的抽象類 6.2.6 抽象類繼承 6.2.7 操作AS3原型對象 6.2.8 靈活選擇繼承機制 6.2.9 命名空間的概念 6.2.10 創(chuàng)建命名空間 6.2.11 應(yīng)用命名空間 6.2.12 引用命名空間 6.2.13 關(guān)鍵字AS3 6.3 自定義類 6.3.1 自定義類的作用 6.3.2 定義ActionScript 3.0類 6.3.3 類屬性關(guān)鍵字 6.3.4 類體 6.3.5 屬性和方法 6.3.6 創(chuàng)建類成員 6.3.7 成員屬性 6.3.8 static成員屬性 6.3.9 靜態(tài)屬性 6.3.10 靜態(tài)方法 6.3.11 實例方法 6.3.12 交疊訪問 6.3.13 this與覆蓋繼承 6.3.14 構(gòu)造函數(shù) 6.3.15 構(gòu)造初始化 6.3.16 get和set存取器 6.3.17 set/get存取器與屬性覆蓋 6.3.18 方法的封裝 6.4 類的繼承 6.4.1 繼承成員 6.4.2 直接執(zhí)行語句 6.4.3 創(chuàng)建和使用包 6.4.4 包與命名空間 6.4.5 利用包組織代碼 6.4.6 繼承訪問控制 6.4.7 方法的繼承覆蓋 6.4.8 屬性的繼承與覆蓋 6.4.9 關(guān)鍵字super 6.4.10 多態(tài) 6.4.11 靜態(tài)成員與作用域鏈 6.5 面向?qū)ο筮M階 6.5.1 聯(lián)合繼承 6.5.2 接口的概念 6.5.3 接口的作用 6.5.4 定義接口 6.5.5 實現(xiàn)接口 6.5.6 接口實例 6.5.7 接口檢測 6.5.8 聯(lián)合接口的實現(xiàn) 6.5.9 接口使用技巧 6.5.10 抽象類的內(nèi)部機制 6.5.11 構(gòu)造者對象 6.5.12 類對象的類型檢查 6.5.13 traits對象與效率提升 6.5.14 動態(tài)類的概念 6.5.15 動態(tài)屬性 6.5.16 動態(tài)方法 6.5.17 成員檢查 6.5.18 成員刪除 6.5.19 動態(tài)靜態(tài)成員 6.6 小結(jié) 第7章 AS3常用對象 7.1 數(shù)組和枚舉 7.1.1 數(shù)組的概念 7.1.2 創(chuàng)建索引數(shù)組 7.1.3 索引數(shù)組的插入與刪除 7.1.4 索引數(shù)組的插入與刪除 7.1.5 索引數(shù)組的排序 7.1.6 屬性排序 7.1.7 數(shù)組的輸出 7.1.8 關(guān)聯(lián)數(shù)組的概念 7.1.9 創(chuàng)建關(guān)聯(lián)數(shù)組 7.1.10 字典 7.1.11 數(shù)組的循環(huán)遍歷 7.1.12 數(shù)組的復(fù)制 7.1.13 多維數(shù)組 7.2 字符串 7.2.1 創(chuàng)建字符串 7.2.2 字符串的值 7.2.3 字符串的長度 7.2.4 拼接和轉(zhuǎn)換 7.2.5 字符大小 7.2.6 搜索 7.2.7 截取和分割 7.2.8 替換 7.3 時間 7.3.1 創(chuàng)建Date對象 7.3.2 利用毫秒創(chuàng)建Date 7.3.3 “Date()”參數(shù)列表 7.3.4 使用日期字符串 7.3.5 設(shè)置與讀取 7.3.6 訪問屬性 7.3.7 日期運算 7.3.8 時區(qū)運算 7.4 顯示列表 7.4.1 顯示對象 7.4.2 顯示對象容器 7.4.3 顯示列表的概念 7.4.4 顯示列表的優(yōu)勢 7.4.5 創(chuàng)建顯示對象 7.4.6 添加顯示對象 7.4.7 顯示對象排序 7.4.8 刪除顯示對象 7.4.9 調(diào)整顯示對象 7.5 小結(jié) 第3篇 語言應(yīng)用 第8章 腳本動畫基礎(chǔ) 8.1 動畫定時器 8.1.1 動畫要素 8.1.2 Timer類 8.1.3 使用定時器 8.1.4 精確性 8.2 位置和大小 8.2.1 基本原理 8.2.2 實例演示 8.2.3 Matrix類 8.2.4 應(yīng)用實例 8.2.5 實例分析 8.2.6 斜切變形 8.3 顏色和透明度 8.3.1 操作透明度 8.3.2 ColorTransform類 8.3.3 實例應(yīng)用 8.3.4 代碼分析 8.3.5 調(diào)色技巧 8.3.6 閃動動畫 8.3.7 實現(xiàn)閃動效果 8.3.8 狀態(tài)檢查 8.4 淡入和淡出 8.4.1 數(shù)學(xué)模型 8.4.2 腳本實現(xiàn) 8.4.3 模塊的封裝 8.4.4 淡入淡出模塊 8.4.5 漸變閃動 8.4.6 透明度漸變 8.5 位移運動 8.5.1 直線運動 8.5.2 創(chuàng)建程序?qū)嵗? 8.5.3 位移 8.5.4 運動階段 8.5.5 重復(fù)運動 8.5.6 位移速度 8.5.7 計算點距離 8.5.8 調(diào)整運動階段 8.5.9 代碼實現(xiàn) 8.5.10 速度 8.5.11 行程 8.5.12 勻速位移動畫 8.6 變形矩陣 8.6.1 矩陣基礎(chǔ)知識 8.6.2 矩陣的運算 8.6.3 矩陣與空間變換 8.6.4 旋轉(zhuǎn)變換矩陣 8.6.5 仿射變形 8.6.6 仿射變形的次序 8.6.7 Matrix類的本質(zhì) 8.6.8 矩陣變形方法 8.6.9 矩陣算法原理 8.7 旋轉(zhuǎn)變形 8.7.1 旋轉(zhuǎn)和坐標(biāo)系 8.7.2 旋轉(zhuǎn)變形 8.7.3 相對坐標(biāo)系 8.7.4 伸縮和映射 8.7.5 內(nèi)建伸縮方法 8.7.6 自定義伸縮方法 8.7.7 分析映射邏輯 8.7.8 多次變形 8.7.9 位移向量運算 8.7.10 改變內(nèi)建行為 8.8 小結(jié) 第9章 動畫進階和腳本仿真 9.1 創(chuàng)建波形位移運動 9.1.1 波形運動的分解 9.1.2 創(chuàng)建進階動畫場景 9.1.3 建立腳本框架和動畫入口 9.1.4 創(chuàng)建波動函數(shù) 9.1.5 改變波的角度 9.1.6 波的折線形 9.2 運動對象的實時倒影 9.2.1 實時倒影的原理 9.2.2 實現(xiàn)垂直映射 9.2.3 完善水平映射 9.2.4 在動畫中應(yīng)用倒影 9.2.5 讓倒影更加真實 9.3 力學(xué)模擬和加速減速 9.3.1 力和加速度的關(guān)系 9.3.2 加速度的代碼描述 9.3.3 力的分解 9.3.4 力學(xué)模擬游戲 9.3.5 增強游戲效果 9.3.6 模擬昆蟲的飛行 9.3.7 昆蟲飛行代碼分析 9.3.8 強化效果及數(shù)據(jù)采樣 9.4 重力和彈性 9.4.1 拋物線的力學(xué)分析 9.4.2 簡單拋物過程的代碼實現(xiàn) 9.4.3 落地檢測 9.4.4 彈跳的力學(xué)原理 9.4.5 彈跳過程的算法 9.4.6 用AS3實現(xiàn)彈跳函數(shù) 9.4.7 碰撞形變和彈跳形變 9.4.8 彈性形變的邏輯流程 9.4.9 計算形變因子 9.4.10 編寫彈性形變函數(shù) 9.4.11 代碼流程分析 9.4.12 形變代碼分析 9.4.13 納爾遜設(shè)計模式 9.5 斜切變形 9.5.1 斜切的原理 9.5.2 斜切的代碼實現(xiàn) 9.5.3 簡單斜切動畫 9.5.4 斜切的仿真應(yīng)用 9.5.5 加速斜切變形 9.5.6 減速斜切與振蕩變形 9.5.7 減速斜切函數(shù) 9.5.8 變速斜切的改良 9.5.9 改良函數(shù)分析 9.6 小結(jié) 第10章 影片剪輯與圖形圖像 10.1 影片剪輯控制 10.1.1 影片剪輯與時間軸 10.1.2 創(chuàng)建影片剪輯 10.1.3 自定義影片剪輯 10.1.4 控制影片剪輯 10.1.5 逆序播放 10.1.6 幀標(biāo)簽 10.1.7 FrameLabel類 10.1.8 剪輯容器 10.1.9 影片剪輯屬性 10.1.10 嵌套剪輯 10.2 繪圖API 10.2.1 矢量圖與點陣圖 10.2.2 繪圖API概述 10.2.3 繪制直線線條 10.2.4 線條樣式 10.2.5 繪制曲線 10.2.6 繪制不規(guī)則形狀 10.2.7 形狀填充 10.2.8 繪制常見形狀 10.3 操作位圖 10.3.1 位圖基本知識 10.3.2 基本圖像格式 10.3.3 使用Loader加載外部圖像 10.3.4 檢測加載事件 10.3.5 BitmapData類與Bitmap類 10.3.6 構(gòu)建BitmapData 10.3.7 使用“draw()”方法 10.3.8 創(chuàng)建隨機位圖 10.3.9 Perlin紋理 10.3.10 操作位圖像素 10.3.11 操作塊像素 10.3.12 像素檢測 10.3.13 克隆位圖 10.3.14 蒙版復(fù)制 10.3.15 操作通道 10.3.16 鎖定與解鎖 10.4 文本 10.4.1 文本操作基本知識 10.4.2 修改靜態(tài)文本 10.4.3 TextSnapshot類 10.4.4 創(chuàng)建動態(tài)文本 10.4.5 嵌入圖片 10.4.6 文本滾動 10.4.7 文本格式 10.4.8 TextRenderer與反鋸齒 10.4.9 級聯(lián)樣式表 10.4.10 字段選擇 10.4.11 輸入文本 10.5 調(diào)整顯示對象 10.5.1 遮罩 10.5.2 位圖緩存與性能優(yōu)化 10.5.3 Alpha通道遮罩 10.5.4 自動背景 10.5.5 顯示對象的混合 10.5.6 調(diào)整顏色 10.5.7 濾鏡的原理 10.5.8 常見濾鏡 10.5.9 使用濾鏡 10.5.10 位圖濾鏡 10.6 小結(jié) 第11章 事件與交互 11.1 事件響應(yīng)與異常處理 11.1.1 事件響應(yīng)機制 11.1.2 事件流 11.1.3 Event類 11.1.4 Event擴展類 11.1.5 IEventDispatcher接口 11.1.6 管理事件偵聽器 11.1.7 操作事件對象 11.1.8 自定義事件 11.1.9 編寫自定義事件類 11.1.10 對象的事件通信 11.1.11 操作下行事件流 11.1.12 偵聽順序 11.1.13 操作上行事件流 11.1.14 管理事件目標(biāo) 11.2 異常處理 11.2.1 異常 11.2.2 錯誤類 11.2.3 try…catch語句 11.2.4 拋出異常 11.2.5 捕獲異常 11.2.6 異常甄別 11.2.7 異步錯誤的概念 11.2.8 錯誤事件 11.2.9 處理異步錯誤 11.2.10 try…catch流控制 11.2.11 Flash Player與調(diào)試 11.3 用戶交互 11.3.1 交互對象類 11.3.2 鍵盤輸入 11.3.3 鍵盤事件流 11.3.4 鼠標(biāo)事件 11.3.5 鼠標(biāo)本地化 11.3.6 鼠標(biāo)的移動 11.3.7 拖拽 11.4 系統(tǒng)交互 11.4.1 System類概述 11.4.2 設(shè)置文本編碼 11.4.3 操作剪貼板 11.4.4 查詢環(huán)境信息 11.4.5 獲取系統(tǒng)分辨率 11.4.6 輸入法控制 11.5 小結(jié) 第12章 使用外部數(shù)據(jù) 12.1 媒體資源數(shù)據(jù) 12.1.1 加載視頻資源 12.1.2 控制視頻播放 12.1.3 自定義播放界面 12.1.4 加載和播放聲音 12.1.5 追蹤音頻進度 12.1.6 追蹤音頻進度 12.1.7 控制音量 12.1.8 加載和顯示圖像 12.1.9 加載和顯示圖像 12.1.10 加載對象的刪除 12.1.11 加載SWF影片 12.2 文本與XML 12.2.1 URLLoader類 12.2.2 加載外部文本 12.2.3 追蹤加載進度 12.2.4 URLVariables類 12.2.5 處理URL字符串文本 12.2.6 XML類 12.2.7 加載XML文件 12.2.8 修改XML加載項 12.2.9 XML特殊訪問 12.2.10 URLStream類 12.2.11 加載流數(shù)據(jù) 12.3 存儲數(shù)據(jù) 12.3.1 數(shù)據(jù)共享對象 12.3.2 創(chuàng)建共享對象 12.3.3 訪問路徑和安全 12.3.4 雙重存儲機制 12.3.5 操作共享數(shù)據(jù) 12.3.6 共享數(shù)據(jù) 12.3.7 遍歷數(shù)據(jù)項 12.3.8 刪除數(shù)據(jù)項 12.4 網(wǎng)絡(luò)通信 12.4.1 套接字連接 12.4.2 Socket套接字類 12.4.3 讀寫Socket 12.4.4 XMLSocket類 12.4.5 使用XMLSocket 12.4.6 接收XML數(shù)據(jù) 12.4.7 上傳文件 12.4.8 下載文件 12.4.9 多文件上傳 12.5 小結(jié) 第4篇 實戰(zhàn)篇 第13章 編寫交互游戲 13.1 程序分析 13.1.1 游戲功能 13.1.2 操作分析 13.1.3 模塊劃分 13.1.4 執(zhí)行過程 13.2 編寫游戲原型 13.2.1 創(chuàng)建游戲舞臺 13.2.2 圖塊類的劃分 13.2.3 ImgSlot類 13.2.4 創(chuàng)建位圖圖塊 13.2.5 GameSlot類 13.2.6 創(chuàng)建屏幕畫板 13.2.7 判斷畫板位置 13.3 游戲場景 13.3.1 分析游戲場景 13.3.2 場景基礎(chǔ) 13.3.3 建立圖塊數(shù)組 13.3.4 圖塊分割 13.3.5 建立線性隨機序列 13.3.6 創(chuàng)建畫板數(shù)組 13.3.7 裝載位圖 13.3.8 舞臺空位 13.3.9 組裝游戲場景 13.4 完善游戲功能 13.4.1 控制模式 13.4.2 偵聽鼠標(biāo)事件 13.4.3 偵測目標(biāo)畫板 13.4.4 執(zhí)行屏幕交換 13.4.5 游戲勝利判定 13.4.6 測試鼠標(biāo)控制 13.4.7 偵聽鍵盤控制 13.4.8 搜尋熱點畫板 13.4.9 發(fā)送虛擬消息 13.5 小結(jié) 第14章 RSS新聞閱讀器 14.1 開發(fā)目標(biāo) 14.1.1 基本功能 14.1.2 程序界面 14.1.3 功能模塊 14.1.4 執(zhí)行流程 14.1.5 臨時調(diào)試項目 14.2 RSS結(jié)構(gòu)剖析 14.2.1 RSS概述 14.2.2 應(yīng)用領(lǐng)域 14.2.3 Flash RSS的優(yōu)勢 14.2.4 RSS版本 14.2.5 RSS 2.0基本格式 14.2.6 channel標(biāo)簽 14.2.7 item標(biāo)簽 14.2.8 樣例RSS源 14.3 登錄界面 14.3.1 創(chuàng)建login類 14.3.2 接收登錄輸入 14.3.3 創(chuàng)建自定義按鈕 14.3.4 按鈕狀態(tài)類 14.3.5 添加登錄按鈕 14.3.6 布置登錄界面 14.3.7 繪制登錄框 14.3.8 顯示登錄界面 14.3.9 界面測試 14.4 用戶管理 14.4.1 登錄事件 14.4.2 用戶ID取存器 14.4.3 驗證登錄信息 14.4.4 創(chuàng)建用戶 14.4.5 密碼驗證 14.4.6 消息輸出 14.4.7 登錄框恢復(fù) 14.4.8 功能整合 14.4.9 編寫測試項目 14.4.10 類關(guān)系分析 14.4.11 測試用戶管理 14.5 RSS源列表 14.5.1 創(chuàng)建frame類 14.5.2 繪制背景框 14.5.3 導(dǎo)入Button組件 14.5.4 RSS訂閱 14.5.5 發(fā)送訂閱事件 14.5.6 響應(yīng)訂閱事件 14.5.7 DataProvider數(shù)據(jù)源 14.5.8 List列表組件 14.5.9 創(chuàng)建RSS源列表 14.6 RSS閱讀器整合 14.14.6.1 創(chuàng)建RSS閱讀器項目 14.6.2 創(chuàng)建全局對象 14.6.3 添加偵聽器 14.6.4 登錄狀態(tài)切換 14.6.5 Tween動畫 14.6.6 登錄交互動畫 14.6.7 用戶登錄 14.6.8 添加RSS源 14.6.9 頻道簡介 14.6.10 瀏覽RSS新聞 14.7 小結(jié) 第15章 全屏幕FLV視頻播放器 15.1 視頻播放器概述 15.1.1 基本功能 15.1.2 模塊分析 15.1.3 構(gòu)建方式 15.1.4 視頻播放器向?qū)? 15.1.5 Video類 15.2 視頻回放 15.2.1 視頻回放原理 15.2.2 NetConnection網(wǎng)絡(luò)連接對象 15.2.3 NetStream數(shù)據(jù)流對象 15.2.4 使用Video對象 15.2.5 基本操作步驟 15.2.6 自定義視頻回放類 15.2.7 創(chuàng)建自定義方法 15.2.8 使用flvvideo類 15.3 視頻控制 15.3.1 創(chuàng)建回放控制類 15.3.2 換膚功能 15.3.3 視頻的播放和暫停 15.3.4 添加控制組件 15.3.5 控制按鈕與事件偵聽 15.3.6 創(chuàng)建控制面板實例 15.3.7 調(diào)整播放位置 15.3.8 視頻流的停止和關(guān)閉 15.4 回放進度與流緩沖 15.4.1 獲取視頻元數(shù)據(jù) 15.4.2 綁定回調(diào)函數(shù) 15.4.3 跟蹤播放進度 15.4.4 使用Slider組件 15.4.5 回放進度的交互 15.4.6 設(shè)置視頻緩沖 15.4.7 數(shù)據(jù)加載進度 15.5 全屏模式 15.5.1 播放器版本支持 15.5.2 全屏模式 15.5.3 屏幕坐標(biāo)與縮放模式 15.5.4 舞臺對齊 15.5.5 區(qū)域全屏 15.5.6 切換屏幕模式 15.6 小結(jié)
章節(jié)摘錄
第1篇 ActionScript 3.0的外圍知識 第1章 ActionScript 3.0綜述 可以毫不夸張地說:是ActionScript的發(fā)展推動著Flash應(yīng)用的不斷成功。而Flash應(yīng)用的不斷成功,也為ActionScript的發(fā)展提供了更廣闊的舞臺?! ‰S著FlexBuilder 2和Flash CS3的發(fā)布,ActionScript 3.0(以下AS3亦指ActionScript 3.0)橫空出世了。ActionScript 3.0的推出使腳本語言的發(fā)展上升到新的高度。人們對交互體驗需求的日益增長,F(xiàn)lash已經(jīng)突破網(wǎng)站設(shè)計的單一領(lǐng)域,擴展到諸如動畫制作、交互設(shè)計、視頻點播、手持移動設(shè)備、桌面富媒體應(yīng)用、在線社區(qū)、游戲制作等諸多領(lǐng)域。Flash軟件也派生出眾多衍生軟件,滿足不同場合、不同人群的設(shè)計開發(fā)需要?! ‰S著腳本語言的日趨成熟,ActionScript在Flash應(yīng)用中的作用也越來越巨大。如果脫離腳本語言,設(shè)計富有吸引力的Flash應(yīng)用將是不可能的任務(wù)。無論是對于Flash界面設(shè)計師還是Flash腳本程序員,掌握好ActionScript 3.0都是不容回避的問題?! ?.1 腳本語言基礎(chǔ)知識 Flash的ActionScript是一種腳本語言,它符合腳本語言的一般特性。腳本語言并不是一種被刪減的,面向初學(xué)者的不完整入門語言;相反,腳本語言有自己的適用場合和體系優(yōu)勢。隨著互聯(lián)網(wǎng)的發(fā)展,腳本語言的設(shè)計和開發(fā)已經(jīng)成為程序設(shè)計行業(yè)最具活力的領(lǐng)域。腳本語言的功能變得越來越強大,擁有無限燦爛的發(fā)展前景?! ?.1.1 腳本語言的概念 腳本語言(Script Language)主要是指:在每次運行時,進行解釋和編譯的計算機程序語言。腳本語言一般都是根據(jù)腳本代碼,分步解釋執(zhí)行。腳本代碼通常是按照明文的ASCII文本保存的,便于讀取和修改。腳本語言在不同場合又被稱為批處理語言(Batch Languages)和作業(yè)控制語言(Job Control Languages)?! ∧_本語言并不是指一門專業(yè)的計算機語言,而是一類計算機語言的總稱。腳本語言由來已久,在DOS時代編寫B(tài)AT批處理程序,就是一種腳本編寫。隨著計算機應(yīng)用的不斷發(fā)展,腳本語言發(fā)展出很多種類,除了Flash ActionScript之外,還包括Java Script,Lingo腳本語言、Python腳本語言、VBScript腳本語言等。
媒體關(guān)注與評論
感謝Adobe開發(fā)組的所有成員,奉獻和創(chuàng)造了如此美妙的語言?! ∠M吹奖緯淖x者,不要錯過領(lǐng)悟美妙的ActionScript的機會?! 八{(lán)色理想”站長 曾沐陽 正如本書作者所言,ActionScript發(fā)展到今天已經(jīng)是一門獨立且有特色的開發(fā)語言,學(xué)習(xí)ActionScript迫切需要一本知識全面、講解深入且案例豐富的實用指南。本書正是這個選擇?! 伴W吧”網(wǎng)站站長 古墓對于那些苦于無法進入一個嶄新的Flash世界的用戶來說,這本書會真正帶你入門。對于已經(jīng)有了一定Flash開發(fā)經(jīng)驗的用戶來說,本書會使通往AS3的旅程變得更加順暢。 ——“閃客帝國”創(chuàng)始人 邊城浪子 雖然市面上有很多關(guān)于ActionScript的圖書,但大都是針對編程人員來撰寫的,從事設(shè)計工作的人難以掌握?,F(xiàn)在,我們終于看到了一本為設(shè)計師編寫的關(guān)于如何學(xué)習(xí)ActionScript的圖書。這本書從設(shè)計師的角度出發(fā),深入淺出地進行剖析并詳細(xì)講解,能讓學(xué)習(xí)者少走很多彎路。希望讀者能夠在這本書中便捷、高效地學(xué)習(xí)到ActionScript技術(shù)。——DDC傳媒網(wǎng)站總編 王東
編輯推薦
原創(chuàng)經(jīng)典,字字珠璣?! ≠Y深動畫師喬珂力作,ActionScript 3.0經(jīng)典圖書橫空出世。藍(lán)色理想、閃吧、DDC傳媒三大網(wǎng)站大力推薦?! 氐桌砬錋ctionScript 3.0的概念、語法和新特性,一一瓦解學(xué)習(xí)的難點。 ·遵循ActionScript 3.0自身邏輯,深入剖析動畫設(shè)計的各種算法?! ど钊階ctionScript 3.0的深層機制,建立獨立、完整的開發(fā)思維?! そY(jié)合實際開發(fā),提供大量典型示例和3個綜合案例,具有超強的實用性?! みm用于Flash、Flex等多種開發(fā)環(huán)境,具有較強的通用性。
圖書封面
圖書標(biāo)簽Tags
無
評論、評分、閱讀與下載
ActionScript 3.0權(quán)威指南 PDF格式下載