金宜亮
摘要:隨著信息技術(shù)的迅猛發(fā)展,多媒體技術(shù)在教育教學(xué)上的應(yīng)用變得越來(lái)越廣泛,也越來(lái)越重要。互聯(lián)網(wǎng)上有關(guān)畫簡(jiǎn)諧運(yùn)動(dòng)圖像的課件由于所用的腳本多為as1.0腳本,十分落后于flash腳本語(yǔ)言的發(fā)展,在編程上顯得繁瑣,交互性也不強(qiáng),而且繪圖過(guò)程也不真實(shí)。鑒于此,本文講述了用最新的flash腳本語(yǔ)言——as3.0腳本語(yǔ)言,制作繪制彈簧振子的簡(jiǎn)諧運(yùn)動(dòng)圖像的過(guò)程和方法以及利用本課件師生如何進(jìn)行課堂交互和探究學(xué)習(xí)的flash課件的方法。
關(guān)鍵詞:flash課件;as3.0腳本;交互;探究
中圖分類號(hào):TP37 文獻(xiàn)標(biāo)志碼:B 文章編號(hào):1674-9324(2012)01-0205-02
隨著信息技術(shù)的發(fā)展,多媒體教學(xué)越來(lái)越受到老師們的喜愛(ài)。而flash,因?yàn)槠湓O(shè)計(jì)制作的課件具有交互性強(qiáng)、界面美觀、形象生動(dòng)等特點(diǎn)也成為老師們的至愛(ài),我在學(xué)習(xí)flash腳本時(shí),曾經(jīng)在網(wǎng)上發(fā)現(xiàn)了一個(gè)繪制簡(jiǎn)諧運(yùn)動(dòng)振動(dòng)圖像的課件,發(fā)現(xiàn)其腳本是as1.0的,一個(gè)并不復(fù)雜的動(dòng)畫,分布在各處的代碼足足有五六百行,而且交互性并不好,動(dòng)畫也不太真實(shí)。我根據(jù)自己上課的需要,用最新的flash cs5軟件和as3.0腳本設(shè)計(jì)制作了一個(gè)畫彈簧振子做簡(jiǎn)諧運(yùn)動(dòng)的振動(dòng)圖像并可以進(jìn)行課堂探究、交互性較強(qiáng)的課件。下面我將設(shè)計(jì)思路和設(shè)計(jì)過(guò)程和大家分享,不當(dāng)之處請(qǐng)各位老師批評(píng)指正。
一、教學(xué)需求分析
課件能實(shí)時(shí)繪出做簡(jiǎn)諧運(yùn)動(dòng)的振動(dòng)圖像;課件應(yīng)能通過(guò)鍵盤輸入數(shù)字,改變玻璃板的運(yùn)動(dòng)速度;課件應(yīng)能對(duì)比在玻璃板以不同速度運(yùn)動(dòng)時(shí),振動(dòng)圖像的區(qū)別,并進(jìn)行探究分析;課件還應(yīng)具有清除所畫圖像以及玻璃板可拖動(dòng)的功能等。
二、界面部分的制作
1.啟動(dòng)flash cs5,新建flash3.0文檔。設(shè)置文檔大小為800px×600px,背景色為藍(lán)色0x669900,幀頻為24.
2.在場(chǎng)景圖層1上新建三個(gè)影片剪輯元件。輕質(zhì)彈簧、振子和玻璃板,分別命名為tanhuan、zhenzi和paper。
3.新建圖層2,從公用庫(kù)—按鈕里拖出三個(gè)按鈕,放到圖層2合適的位置。分別命名為start_btn,clear_btn,stop_btn,用來(lái)控制播放和進(jìn)行交互。
4.新建圖層3,在圖層3上用文本工具拉出一個(gè)輸入文本框,將框命名為v_txt。
5.制作一個(gè)課件使用說(shuō)明的影片剪輯,命名為shmwz,再畫一個(gè)按鈕元件,取名為shum_btn,也拖到舞臺(tái)上。
至此,舞臺(tái)上的演員已經(jīng)布置完畢,下面就輪到as3.0腳本大顯身手了,它可實(shí)現(xiàn)動(dòng)作和交互。
三、flash腳本的編寫
首先新建圖層4,將該圖層改名為as。下面的腳本代碼全部寫在as圖層的第一幀上。(當(dāng)然你也可以把代碼寫在外部的as類文件上)為便于讀者讀代碼,我在代碼上加了一些必要的注釋。
var pp:Point=new Point();
var pp1:Point=new Point();
var line:Shape=new Shape();
var p:Point=new Point();
var t:Number=0;
var flag:Boolean=false;
paper.oldy=paper.y;
paper.oldx=paper.x;
tanh.Width=tanh.width;
mc.oldx=mc.x;
mc.oldy=mc.y;
start_btn.addEventListener(MouseEvent.CLICK,onstart);
clear_btn.addEventListener(MouseEvent.CLICK,onclear);
function onstart(e){
paper.addEventListener(Event.ENTER_FRAME,paperframe);
mc.addEventListener(Event.ENTER_FRAME,mcframe);
addEventListener(Event.ENTER_FRAME,frame);
}
//清除所畫圖線
function onclear(e){
removeEventListener(Event.ENTER_FRAME,frame);
mc.removeEventListener(Event.ENTER_FRAME,mcframe);
paper.removeEventListener(Event.ENTER_FRAME,paperframe);
init();
flag=!flag;
flag?line.graphics.clear():0;
}
function frame(e)
{
p.x=mc.x;
p.y=mc.y;
var p1:Point=paper.globalToLocal(p);
line.graphics.lineTo(p1.x,p1.y);
paper.addChild(line);
}
function mcframe(e){
t+=0.15;
mc.x=mc.oldx;
mc.x=paper.x+60*Math.sin(t);
tanh.width=mc.x-tanh.oldx;
}
function paperframe(e)
{paper.y+=v;
if (paper.y> paper.height/2)
{
paper.removeEventListener(Event.ENTER_FRAME,paperframe);
}}
好,腳本到此結(jié)束。右側(cè)兩圖是課件運(yùn)行時(shí)的兩幅截圖。有了as3.0腳本,課件的交互性更強(qiáng)了,課件也更有“魂”、更有“神”了。