王洪根
江蘇省大豐高級(jí)中學(xué) 江蘇大豐 224100
用Flash模擬“平均速度逼近瞬時(shí)速度”的過程
王洪根
江蘇省大豐高級(jí)中學(xué) 江蘇大豐 224100
本文簡(jiǎn)要介紹了用Flash模擬“平均速度逼近瞬時(shí)速度”過程的設(shè)計(jì)思路及程序設(shè)計(jì)中的核心語(yǔ)句。
Flash 平均速度 瞬時(shí)速度 逼近 模擬
在中學(xué)物理教學(xué)中,有關(guān)平均速度與瞬時(shí)速度之間關(guān)系的認(rèn)識(shí)和理解一直是學(xué)生認(rèn)知上的一個(gè)難點(diǎn)。究其原因是由于學(xué)生日常生活中缺少這方面的認(rèn)識(shí)和體驗(yàn),而在中學(xué)階段用實(shí)驗(yàn)來直觀演示“平均速度逼近瞬時(shí)速度”的過程目前還比較困難。對(duì)傳統(tǒng)教育方式、教育媒體來說,教師即使想采用建構(gòu)主義的學(xué)習(xí)方法也無(wú)能為力。實(shí)際教學(xué)中我們利用Flash MX 2004制作了“平均速度逼近瞬時(shí)速度過程模擬”教學(xué)軟件(界面如圖所示),在模擬環(huán)境中,讓學(xué)生“感受”了物體平均速度逐步向瞬時(shí)速度逼近的過程,從而幫助學(xué)生很快在頭腦中構(gòu)建了兩者的關(guān)系,收到了良好的效果。下面簡(jiǎn)要介紹軟件的制作思路和核心語(yǔ)句。
在Flash MX 2004場(chǎng)景中主要設(shè)置下列元件:影片剪輯wt、zgb,wt為運(yùn)動(dòng)物體,zgb為遮光板內(nèi)嵌在影片剪輯wt中,兩者右邊沿對(duì)齊放置,注冊(cè)點(diǎn)均設(shè)置在各自的最右端;按鈕tj、kz、tt,tj用于調(diào)節(jié)遮光板的寬度,kz用于控制物體的運(yùn)動(dòng)和復(fù)位,tt為記錄時(shí)間用的探頭。此外場(chǎng)景中還應(yīng)再建立幾個(gè)文本框分別用于記錄、顯示遮光板實(shí)時(shí)寬度、遮光板通過探頭所用時(shí)間以及由此計(jì)算得到的平均速度大小。
模擬時(shí),通過按鈕讓物體開始運(yùn)動(dòng)(軟件中設(shè)計(jì)物體做勻加速直線運(yùn)動(dòng)),當(dāng)遮光板前沿通過探頭時(shí)刻開始計(jì)時(shí),后沿通過探頭時(shí)刻結(jié)束計(jì)時(shí)。這樣由記錄到的時(shí)間差及先前調(diào)節(jié)遮光板寬度時(shí)測(cè)出的遮光板寬度值并可以計(jì)算出本次遮光板通過探頭過程中的平均速度。讓物體回復(fù)原位,不斷改變(減小)遮光板寬度,重復(fù)上述過程,并可以得到遮光板越來越窄、通過探頭時(shí)間越來越短情況下各次的平均速度值……經(jīng)此對(duì)比即可發(fā)現(xiàn)當(dāng)時(shí)間間隔趨于零時(shí),平均速度趨于一個(gè)穩(wěn)定值——瞬時(shí)速度,最終建立瞬時(shí)速度概念,從而理解平均速度與瞬時(shí)速度之間關(guān)系。
軟件設(shè)計(jì)的關(guān)鍵是獲取物體開始運(yùn)動(dòng)后,遮光板何時(shí)通過探頭及遮光板前后沿通過探頭的兩個(gè)時(shí)刻值。為達(dá)此目的,使用了onEnterFrame函數(shù)——一個(gè)以影片剪輯幀頻不斷觸發(fā)的事件處理函數(shù)來實(shí)現(xiàn)。具體語(yǔ)句及注釋如下:
this.onEnterFrame = function() {
//以SWF 文件的幀頻重復(fù)調(diào)用
if ((wt._x+-tt_x>=0) and (wt._x-zgb._width-tt_ x<=0)) {
//遮光板通過探頭期間
x = wt._x-tt_x;
//越過探頭的遮光板部分寬度,wt._x、tt_x分別為物體及探頭位置橫坐標(biāo)
t1 = Math.sqrt(2*(tt._x-wt_x0)/a);
// wt_x0為wt初始位置橫坐標(biāo),a為運(yùn)動(dòng)加速度
t2 = Math.sqrt(2*(wt._x-wt_x0)/a);
t = t2-t1;
v = x/t;
delete this.onEnterFrame;
//執(zhí)行完畢后,刪除this.onEnterFrame,以釋放內(nèi)存和CPU占有率
}
};
//
wt.onEnterFrame = function() {
//以SWF 文件的幀頻重復(fù)調(diào)用
with (this._parent) {
i = i+1/ftp_swf;
//i以1/ ftp_swf步長(zhǎng)進(jìn)行累加,ftp_ sw為SWF文件的幀頻
wt._x = wt_x0+0.5*a*i*i;
// wt以加速度a做勻加速直線運(yùn)動(dòng)
if (wt._x>=800) {
wt._x = 800;
delete wt.onEnterFrame;
}
}
};
以上onEnterFrame函數(shù)被巧妙使用了兩次,前者用于檢測(cè)遮光板通過探頭的過程,后者是讓物體(包括遮光板)在場(chǎng)景范圍內(nèi)形成勻變速直線運(yùn)動(dòng)。在Flash課件制作中如能合理使用onEnterFrame函數(shù),則不僅方便而且將大大提高編程及運(yùn)行效率。
book=79,ebook=28