引言。建構(gòu)主義理論認(rèn)為,教師要成為學(xué)生意義建構(gòu)的幫助者,應(yīng)從以下兩個方面發(fā)揮主導(dǎo)作用:(1)激發(fā)學(xué)生的學(xué)習(xí)興趣,幫助學(xué)生形成學(xué)習(xí)動機(jī);(2)通過創(chuàng)設(shè)符合教學(xué)內(nèi)容要求的情景和提示新舊知識之間聯(lián)系的線索,幫助學(xué)生建構(gòu)當(dāng)前所學(xué)知識的意義[1]??梢姡ぐl(fā)學(xué)生興趣和創(chuàng)設(shè)問題情景成為在新形勢下教學(xué)所亟待解決的問題。傳統(tǒng)的CAI課件制作往往是在Authorware多媒體制作平臺上,結(jié)合Animation Studio二維動畫和3DSMAX三維動畫軟件來實現(xiàn)單機(jī)版課件的動畫設(shè)計。用Animation和3D制作出的動畫雖然生動逼真,可其占據(jù)的龐大存儲空間使得Athorware開發(fā)出的課件難以實現(xiàn)網(wǎng)上傳送和瀏覽[2]。
課件的設(shè)計與制作1 運(yùn)用flash制作物理仿真動畫。主要有四個方面的工作:(1)結(jié)合教材內(nèi)容,將物理實驗現(xiàn)象用Action Script腳本語言設(shè)計成動畫內(nèi)容,制作元件庫。(2)創(chuàng)建多個圖層,將動畫內(nèi)容按一定程序制作成仿真動畫。(3)通過Action Script腳本語言的編寫實現(xiàn)對動畫播放的控制,使其具有交互性。(4)調(diào)試,對動畫的細(xì)節(jié)進(jìn)行修改,使其更逼真、更科學(xué),發(fā)布影片。
1.難點分析。橫波怎樣振動和傳播既是學(xué)生理解的難點,也是本課件設(shè)計的關(guān)鍵。要動態(tài)的實現(xiàn)波的振動,需要將物理現(xiàn)象轉(zhuǎn)換成數(shù)學(xué)模型。本課件的運(yùn)行效果是用小球沿著正弦曲線的圖像路徑動態(tài)排列來模擬、描繪正弦曲線的圖像。通過改變振幅A和正弦曲線的初相位€%?可以得到不同的動態(tài)曲線[3]。
2.場景設(shè)計。設(shè)計要求:要實現(xiàn)交互,改變周期、振幅、波長等參數(shù),速度的顯示數(shù)據(jù)和圖像要實時的響應(yīng)變化;各圓形按鈕要控制動畫的播放、暫停和停止,以便于研究某一時刻的振動圖像,這些都需要Action Scrip腳本語言來實現(xiàn)對按鈕元件的控制。
主要組成部分及實現(xiàn)方法
整體效果如圖1
action圖層用于編程,設(shè)置各項參數(shù),按鈕圖層只放按鈕元件,用于控制流程,ball圖層放置實例小球,背景可放置其他顯示部分。
幀動作的定義
第一幀:
stop();//運(yùn)行時先停留在第一幀,下面對參數(shù)變量的初始值進(jìn)行設(shè)定,完成對小球的復(fù)制和排列。
t = 4;//給周期T賦初始值。
a = 2;//給振幅A賦初始值。
уd= 14;//給波長уd賦初始值。
flag=1;//波動方向控制。
loop = 0;//給循環(huán)變量loop賦初始值。
y=[];
this[“ball”]._x = 78.6;//球的橫坐標(biāo)x位置。
for (n=0; n<60; n++) {
duplicateMovieClip(“ball”, “ball”+n, n);//復(fù)制“ball”到“ball”+n,復(fù)制后的副本層深為n
this[“ball”+n]._x = this[“ball”+(n-1)]._x+15;//設(shè)置“ball”的x位置,使后一個小球的x軸坐標(biāo)值為前一個副本的x軸坐標(biāo)值再加15
this[“ball”+n]._y = 299.5;//設(shè)置“ball”+n的y軸坐標(biāo)為299.5,for語句實現(xiàn)循環(huán),得到水平排列的60個小球。
}
ball._visible = 0;
ball._width = 15;
ball._height = 15;//設(shè)置小球不可見,并設(shè)置小球的寬和高。
mycolor = new Color(“ball”+15);
mycolor.setRGB(0xff0000);//設(shè)置“ball”+15球顏色為紅色,便于對某個特定質(zhì)點的運(yùn)動進(jìn)行觀察。
第二幀:
loop = loop+0.01;//循環(huán)變量增加0.01
v = 0.01*flag*уd/t;//設(shè)置速度的大小,用flag的正負(fù)實現(xiàn)對方向的控制。
for (n=0; n<60; n++) {
y[n] = -Math.sin(2*Math.PI*(9*loop/t)-flag*(14*n/(уd*3)))*20*a;
this[“ball”+n]._y = y[n]+299.5;
}//計算變量y[n]的值。y[n]+299.5是“ball”+n在y軸上的坐標(biāo)值,從而得到60個沿y軸方向上下波動的小球。
第三幀:
gotoAndPlay(2);//跳轉(zhuǎn)到第二幀實現(xiàn)循環(huán),使60個小球開始波動。
至此,動畫的主要部分已經(jīng)完成。
按鈕動作的定義
開始、暫停和停止按鈕的腳本語言很簡單,這里也不再詳細(xì)描述,下面以振幅增加和減少按鈕為例,介紹一下按鈕腳本語言的編寫。
振幅增加按鈕動作腳本:
on (release) {
if (a<8) {
a++;
} else {
a = 8;
}
}//振幅依次遞增,最大值為8。振幅減少按鈕腳本:on (release){if (a>0) {a--;} else {a = 0;}}//振幅依次遞減,最小值為0。
至此,關(guān)鍵部分已經(jīng)設(shè)計完畢,調(diào)試后發(fā)布。
運(yùn)用Flash Action Script編寫的仿真動畫,雖然不能代替真實的實驗現(xiàn)象,但它做到了實驗現(xiàn)象的真實再現(xiàn),有利于幫助學(xué)生理解抽象的物理現(xiàn)象,并且其具有的交互性,能夠增強(qiáng)學(xué)生主動思考的意識,從而達(dá)到良好的教學(xué)效果。
參考文獻(xiàn):
[1] 張承芬.教育心理學(xué)[M].濟(jì)南:山東教育出版社,2007,1.
[2] 林南.用交互式動畫模擬物理實驗的設(shè)計與實驗[J].閩江學(xué)院學(xué)報,2002,23(2).
[3] 繆亮,賈朝蓉,張先為.Flash MX課件制作實用教程[M].北京:清華大學(xué)出版社,2004,3.
作者單位:山東師范大學(xué)物理與電子科學(xué)學(xué)院