吴国舜
在中学物理教学中,飞机投弹情境无法通过实验完成,学生不易理解,教师语言描述又不够直观,用课件演示形象生动,具有很好的教学效果。
课件演示效果如下图所示。
下载地址
http://y9b.com/BBS/dispbbs.asp?boardid=7&id=881
课件功能
模拟演示一架飞机在空中沿水平方向运动,在相同的时间间隔里逐个水平抛出炸弹,在空气阻力不计的理想状态下炸弹、飞机间的相对运动情况,炸弹相对飞机做自由落体运动,炸弹在空中排成一竖直线,炸弹落地点间距相等的场景。
使用方法
在课件中设置了五个交互性控制按钮,可以对课件的使用起辅助研究的作用。
设计思路
首先明确课件制作方案,明确课件需要达到的教学效果。制作版本:Flash MX 6.0。制作方法如下:
1.建立元件库,飞机元件可在Flash的内置元件库中找到,比较方便省事。炸弹元件用Flash本身的画图功能画出,轨迹的描点元件用小圆点表示即可。再建立一条竖直线元件用来跟踪平抛炸弹与飞机的水平间距。在共享按钮库中拖出一个按钮以备交互。
2.将各元件属性命名,并编写脚本控制。本课件关键的脚本是飞机和炸弹的运动轨迹点的确定,由于篇幅限制,只能选择飞机轨迹的脚本进行说明:
t=0.5*i;//设置时间变量
x=x0+(vx*t); y=y0; xd= x0+(vx*t);
if(t<= 5){
yd =y0;
}else{
yd=y0+(((0.5*a)*(t-5))*(t-5));
}
th=math.sqrt((2*h)/a);
if(yd>=h){
xd=x0+(vx*(th+5));
yd=y0+(((0.5*a)*th)*th);
}
if(x>=600){
i=0;
}//以上设置飞机轨迹点的水平竖直坐标duplicateMovieClip("fjgj","fjgj"+i,i);
/*复制飞机轨迹点的表达式。
这里介绍一下该语法结构:duplicateMovieClip(target,newname,depth);
1.target:指被用来复制的来源影片片断分身。如本程序中的"fjgj";
2.newname:指所复制完成新影片片断分身对象的名称。如"fjgj" +i;
3.depth:为堆叠参数。指定新完成的对象与其他对象重叠时的显示层次,depth越大时,显示越上层。若有两个显示层次相同的影片片断,则先复制的影片片断会被后建立的取代。如:i;/*。
setProperty("fjgj"+i,_x,x);
setProperty("fjgj"+i,_y,y0);
setProperty("fjgj"+i,_alpha,/:n);
i=(i+1)-/fjtdwz/kz/:xxx;
炸弹轨迹点的设置亦类似。编程思路要解决的问题是:飞机在运动场景中可显示投放的炸弹数目,每个炸弹的运动情况都是做平抛运动,但初始位置不同,必须通过程序控制。
3.将各元件在场景中的位置进行合理安排,使界面简洁明了,容易操作。
最后就可以测试发布了。
注意:该课件虽小,但涉及的编程对象较多,所以在设计时一定要理顺各对象的属性,在设计中养成定时保存的习惯,每处理完一个对象就测试一下效果,以免出错时不知在什么位置。