Animate動畫設(shè)計實例教程 課件 任務(wù)四 ActionScript 3.0腳本基礎(chǔ)_第1頁
Animate動畫設(shè)計實例教程 課件 任務(wù)四 ActionScript 3.0腳本基礎(chǔ)_第2頁
Animate動畫設(shè)計實例教程 課件 任務(wù)四 ActionScript 3.0腳本基礎(chǔ)_第3頁
Animate動畫設(shè)計實例教程 課件 任務(wù)四 ActionScript 3.0腳本基礎(chǔ)_第4頁
Animate動畫設(shè)計實例教程 課件 任務(wù)四 ActionScript 3.0腳本基礎(chǔ)_第5頁
已閱讀5頁,還剩24頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

任務(wù)四

ActionScript3.0腳本基礎(chǔ)Animate動畫設(shè)計案例教程CONTENTS目錄1.任務(wù)分析2.難點剖析3.相關(guān)知識4.案例實現(xiàn)5.任務(wù)總結(jié)6.提高創(chuàng)新01任務(wù)分析知識目標(biāo)技能目標(biāo)素質(zhì)目標(biāo)思政目標(biāo)素質(zhì)目標(biāo)培養(yǎng)學(xué)生自主學(xué)習(xí)的能力:對時間軸控制函數(shù)的靈活應(yīng)用。技能目標(biāo)能夠通過代碼提示選擇動作腳本;能夠制作鼠標(biāo)交互的動畫效果;能夠制作鍵盤交互的動畫效果。知識目標(biāo)思政目標(biāo)培養(yǎng)學(xué)生多角度思考問題的能力和面對困難敢于拼搏、敢于挑戰(zhàn)的精神。任務(wù)分析了解事件偵聽機制、函數(shù)的作用及調(diào)用方法;掌握為實例命名的方法、在“動作”面板選擇常用動作腳本的方法。02難點剖析“動作”面板Animate中“動作”面板的“代碼提示”,提供了大量的常用代碼段,幾乎可以滿足初級階段學(xué)習(xí)者對代碼的需求。通過代碼提示,可以在零基礎(chǔ)的情況下,通過鼠標(biāo)選擇的方式制作很多常用動畫效果。若想要取得一定的成績,需要對ActionScript有更多、更深入的了解;如果要做優(yōu)秀的ActionScript編程人員,就需要付出更多的時間、精力,更重要的是要有一種態(tài)度:不懈地追求完美。

難點剖析03相關(guān)知識

Animate中的編程環(huán)境事件和事件處理ActionScript3.0編程基礎(chǔ)1.Animate中的編程環(huán)境1.AS腳本AS即ActionScript,是針對Animate的編程語言,AS是內(nèi)嵌在Animate中的語言,又叫做腳本程序、代碼、指令。通過ActionScript設(shè)置動作可以實現(xiàn)交互、流程管理、元件控制、數(shù)據(jù)管理及其他功能。ActionScript每一行的代碼都可以從ActionScript面板中直接調(diào)用。使用動作面板上的按鈕,無需編寫任何動作腳本就可以插入動作。相關(guān)知識

2.“動作”面板

方法一:【F9】鍵。

方法二:右擊關(guān)鍵幀,選擇“動作”命令。

方法三:“窗口”→“動作”。1.Animate中的編程環(huán)境3.“輸出”面板

提供腳本編寫輔助功能,通過trace()語句,在“輸出”面板中輸出內(nèi)容,供測試和調(diào)試代碼使用。相關(guān)知識4.“編譯器錯誤”面板如果輸入腳本有誤,當(dāng)測試動畫時,會在“編譯器錯誤”面板提示錯誤信息。2.ActionScript3.0編程基礎(chǔ)1.ActionScript3.0代碼添加規(guī)則只能在關(guān)鍵幀輸入代碼且只能在英文輸入法狀態(tài)下輸入。只能通過實例名稱對影片剪輯元件實例、按鈕元件實例、動態(tài)文本、輸入文本等進行控制。相關(guān)知識2.ActionScript3.0基本語法

①區(qū)分大小寫。②

面向?qū)ο蟮木幊陶Z言,通過點運算符(.)訪問對象的屬性和方法。③

使用分號(;)來結(jié)束一個程序語句。

支持單行注釋//、多行注釋/**/.2.ActionScript3.0編程基礎(chǔ)3.?dāng)?shù)據(jù)類型相關(guān)知識表4-1基元數(shù)據(jù)類型數(shù)據(jù)類型含義數(shù)字int表示整數(shù)。存儲為32位整數(shù),取值范圍:-2147483648~2147483647,默認(rèn)值0uint表示無符號的整數(shù)(非負(fù)整數(shù))。存儲為32位整數(shù),取值范圍:0~4294967295,默認(rèn)值0Number表示整數(shù)、無符號整數(shù)和浮點數(shù)。存儲為64位整數(shù),-9,007,199,254,740,992~9,007,199,254,740,992,默認(rèn)值NaN字符串String表示16位字符的序列。字符串在數(shù)據(jù)的內(nèi)部存儲為Unicode字符,并使用UTF-16格式布爾值Boolean包含兩個值:true(真)和false(假),或者1和0。已聲明但未初始化的布爾變量的默認(rèn)值為falsevoidvoid表示無類型的變量。void型變量僅可用做返回類型,默認(rèn)值nullnullnull表示空值,只有一個值null。是String數(shù)據(jù)類型和用來定義復(fù)雜數(shù)據(jù)類型的所有類(包括Object類)的默認(rèn)值

2.ActionScript3.0編程基礎(chǔ)相關(guān)知識4.變量變量的命名規(guī)則

變量名第一個字符必須是字母、下畫線_或

美元符號$,其后的字符可以是字母、數(shù)字、下畫線或其他符號。聲明變量的格式:

var變量名:數(shù)據(jù)類型;變量的賦值使用賦值運算符(=)為變量賦值例如:vari:int;i=10;5.常量在程序中始終保持不變的數(shù)值,用const定義為常量。例如,定義整型常量MAXIMUM。constMAXIMUM:int=100;2.ActionScript3.0編程基礎(chǔ)相關(guān)知識6.函數(shù)函數(shù)是可以完成某個特定功能的代碼集合。在需要實現(xiàn)該功能的地方直接調(diào)用函數(shù)名即可。Animate不僅提供了豐富的內(nèi)置函數(shù),還可以編制自定義函數(shù)以擴展函數(shù)的功能。(1)函數(shù)名的命名規(guī)則函數(shù)名的命名類似于變量。一般采用駝峰命名結(jié)構(gòu)。駝峰,指的是當(dāng)定義的變量名由多個單詞組成時,第一個單詞全部小寫,其余單詞的第一個字母大寫,其余字母小寫。(1)定義函數(shù)function函數(shù)名(參數(shù)1:參數(shù)類型,參數(shù)2:參數(shù)類型...):返回類型{

//函數(shù)體}注意:函數(shù)被調(diào)用之前,不會執(zhí)行;調(diào)用函數(shù),函數(shù)的功能才能夠?qū)崿F(xiàn)。(2)調(diào)用函數(shù)無參函數(shù)調(diào)用格式:函數(shù)名();

注意:圓括號,被稱為“函數(shù)調(diào)用運算符”。2.ActionScript3.0編程基礎(chǔ)相關(guān)知識8.路徑點運算符(.)用來連接對象與嵌套在對象中的子對象,以及訪問對象與對象的屬性和方法,用這種方法體現(xiàn)出來的對象的層次關(guān)系和位置關(guān)系稱為對象的路徑。①_root,代表主時間軸的關(guān)鍵字。以_root開始的路徑,即主時間軸的路徑稱為絕對路徑。②This,代表當(dāng)前對象的關(guān)鍵字。相對路徑是目標(biāo)對象相對于AS動作腳本所在對象的路徑。This表示當(dāng)前對象(AS所在對象)自身,可以省略。9.舞臺stage、主時間軸root的關(guān)系舞臺(stage)

每個Animate影片,只有一個舞臺對象,而且在Animate的執(zhí)行環(huán)境(AnimatePlayer)中,也只有一個舞臺。主時間軸(root)

每個Animate影片都有一個主時間軸,在程序中通過顯示對象(如影片片段、文字字段、按鈕等)的root屬性來存取。舞臺和主時間軸的關(guān)系:播放Animate影片時,AnimatePlayer會自動把影片的主時間軸掛載在舞臺之下,換句話說,主時間軸是舞臺的唯一子對象(child)。3.事件和事件處理1.事件包括用戶事件和系統(tǒng)事件兩類。用戶事件是指用戶直接與計算機交互操作而產(chǎn)生的事件,如單擊按鈕或敲擊鍵盤等由用戶的操作所產(chǎn)生的事件。系統(tǒng)事件是指AnimatePlayer自動生成的事件,它不是由用戶生成的,如動畫播放到某一幀或影片剪輯被加載到內(nèi)存中。

2.事件處理函數(shù)為了使應(yīng)用程序能夠?qū)κ录龀龇磻?yīng),必然編寫與事件相對應(yīng)的事件處理程序(函數(shù))。事件處理程序是與特定對象和事件關(guān)聯(lián)的動作腳本代碼。3.響應(yīng)在觸發(fā)作用下做出的反應(yīng)。例如,在鼠標(biāo)按下按鈕,動畫開始播放,鼠標(biāo)按下就是觸發(fā),動畫播放就是響應(yīng)。常用的事件如下:KEY_DOWN:按任一鍵時。ENTER_FRAME:播放頭移到新的幀上時。CLICK:鼠標(biāo)單擊實例。MOUSE_OVER:鼠標(biāo)懸停到實例上方。MOUSE_OUT:鼠標(biāo)離開實例。相關(guān)知識3.事件和事件處理4.事件偵聽機制事件偵聽是Animate互動的核心。在AS3.0中使用addEventListener()方法來偵聽事件并觸發(fā)響應(yīng)。要將事件附加到事件處理程序,需要使用事件偵聽器,事件偵聽器等待事件發(fā)生,在事件發(fā)生時就會運行對應(yīng)的事件處理函數(shù)。(1)編寫事件偵聽代碼的注意事項首先,需要確定事件偵聽的對象。其次,需要確定偵聽的事件。最后,需要設(shè)置處理事件的偵聽函數(shù)。(2)事件偵聽的格式被偵聽的對象.addEventListener(需要偵聽的事件,當(dāng)該事件發(fā)生后需要觸發(fā)的函數(shù)名);(3)在事件發(fā)生時運行的特殊函數(shù)被稱為事件處理函數(shù),事件處理函數(shù)的格式:

function函數(shù)名(event:事件):void{//執(zhí)行代碼;}(4)移除事件偵聽器

與addEventListener()方法相對應(yīng)的是移除事件偵聽器的removeEventListener()方法。當(dāng)事件偵聽器不再被使用時,可以使用removeEventListener()方法將該事件偵聽器移除。相關(guān)知識例如:單擊實例名為bn的按鈕時,執(zhí)行函數(shù)f1。bn.addEventListener

(

MouseEvent.CLICK

,

fl

);functionfl

(

event:MouseEvent

):void{

trace("Clickme!");}04案例實現(xiàn)生成隨機數(shù)鍵盤事件——方向鍵控制影片剪輯實例的移動鼠標(biāo)事件——按鈕控制太陽升落1.生成隨機數(shù)學(xué)習(xí)目標(biāo):掌握根據(jù)“動作”面板“代碼片斷”按鈕選擇動作腳本的方法。實現(xiàn)效果:測試動畫時,在“輸出”面板生成隨機數(shù)。注意:+,字符串連接符;將字符串"幸運學(xué)號:"和隨機數(shù)值連接2.鼠標(biāo)事件——按鈕控制太陽升落學(xué)習(xí)目標(biāo):掌握按鈕控制動畫的代碼選擇方法。效果實現(xiàn):單擊“上升”按鈕,太陽上升;單擊“下落”按鈕,太陽下落。設(shè)計思路:對太陽實例命名sun、按鈕實例命名up、down;在“動作”面板,通過“代碼提示”選擇鼠標(biāo)單擊事件,獲得該事件的偵聽格式;最后修改代碼。2.鼠標(biāo)事件——按鈕控制太陽升落//設(shè)定太陽實例的初始位置sun.x=280;sun.y=250;//單擊按鈕實例up,觸發(fā)函數(shù)flup.addEventListener(MouseEvent.CLICK,fl);functionfl(event:MouseEvent):void{

sun.y-=5; //向上移動5個像素}//單擊按鈕實例down,觸發(fā)函數(shù)f2down.addEventListener(MouseEvent.CLICK,f2);functionf2(event:MouseEvent):void{

sun.y+=5;

//向下移動5個像素

}

屬性意義alpha影片剪輯實例的透明度rotation影片剪輯的旋轉(zhuǎn)角度(以度為單位)visible確定影片剪輯的可見性height影片剪輯的高度(以像素為單位)width影片剪輯的寬度(以像素為單位)xscale影片剪輯的水平縮放比例yscale影片剪輯的垂直縮放比例x影片剪輯的X坐標(biāo)y影片剪輯的Y坐標(biāo)3.鍵盤事件——方向鍵控制影片剪輯實例的移動學(xué)習(xí)目標(biāo):掌握使用鍵盤控制Animate的方法。實現(xiàn)效果:通過鍵盤上、下、左、右4個方向鍵控制對象的移動,并顯示按鍵對應(yīng)的ASCII碼值。設(shè)計思路:使用鍵盤控制Animate,就需要使用鍵盤事件偵聽。鍵盤的敲擊事件是由舞臺來感知的,所以應(yīng)該為stage添加鍵盤事件偵聽機制。

fish.x=200;fish.y=200;fish.width=60;fish.height=60;stage.addEventListener(KeyboardEvent.KEY_DOWN,onKeyHandler);functiononKeyHandler(event:KeyboardEvent):void{

switch(event.keyCode){ caseKeyboard.UP://向上方向鍵UP fish.y-=20; break; caseKeyboard.DOWN://向下方向鍵DOWN fish.y+=20; break; caseKeyboard.LEFT://向左方向鍵LEFT fish.x-=20; break; caseKeyboard.RIGHT://向右方向鍵RIGHT fish.x+=20; break; }

trace(event.keyCode);//輸出鍵盤ASCII值 }

屬性意義alpha影片剪輯實例的透明度rotation影片剪輯的旋轉(zhuǎn)角度(以度為單位)visible確定影片剪輯的可見性height影片剪輯的高度(以像素為單位)width影片剪輯的寬度(以像素為單位)xscale影片剪輯的水平縮放比例yscale影片剪輯的垂直縮放比例x影片剪輯的X坐標(biāo)y影片剪輯的Y坐標(biāo)05任務(wù)總結(jié)任務(wù)總結(jié)使用簡單的AS代碼使動畫具有交互性是必有的能力。對于沒有掌握面向?qū)ο缶幊趟枷氲耐瑢W(xué),直接編寫程序難度很大。Animate在“動作”面板提供了很多常用的代碼塊,本章要求掌握選擇代碼片斷的方法即可。對于有一定編程基礎(chǔ)的同學(xué),可以深入學(xué)習(xí),在網(wǎng)絡(luò)上找一些小游戲類的案例,參照提示來自己修改、制作。06提高創(chuàng)新幀頻事件——觸發(fā)連續(xù)動作幀頻事件——觸發(fā)連續(xù)動作學(xué)習(xí)目標(biāo):掌握幀頻觸發(fā)事件代碼段的選擇方法。效果實現(xiàn):太陽上升,當(dāng)太陽升到適當(dāng)?shù)奈恢脮r,太陽停下來。設(shè)計思路:對太陽實例命名:sun,在“動作”面板通過“代碼提示”選擇Enter_Frame事件,獲得該事件的偵聽格式;再修改代碼。1.ENTER_FRAME事件實現(xiàn)//設(shè)定太陽的初始位置sun.x=200;sun.y=200; sun.addEventListener(Event.ENTER_FRAME,f);functionf(event:Event):void{//太陽持續(xù)上升,一次上升5像素sun.y-=5;//當(dāng)太陽上升到45時,刪除事件偵聽

if(sun.y<45){sun.

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論