论文部分内容阅读
Flash是基于平面的矢量图形动画,其动画是以平面图形的形式来表现的。从函数图像的数学描述角度上讲,凡是具有y=f(x)形式的函数,像数学上的正弦、余弦、双曲线、椭圆、指数等函数的图像,在Flash课件中都可以有效地演示出来。在Flash课件中有多种方法可以完成数图的绘制,本文重点就在平面直角坐标系下,用duplicate Movie Clip()命令对函数图像进行处理的方法与技巧做出分析说明。
传统课堂教学过程中函数图像的生成
单纯从基于传统的课堂教学过程中数学函数图像的生成过程来看,对于给定的y=f(x)的函数图像,一般是建立平面直角坐标系,标出其坐标原点及X轴和Y轴上相应的点和单位,根据函数形式来确立一些关键的对应的坐标点,再将各个点连接起来,最终形成完整、连续的函数图像。在课堂教学,由于教师对所绘制的图像一般比较了解,所以对于一些简单的、基本的函数图像大都可以基于经验快速绘制;而对于比较复杂的函数图像,教师通过手绘快速完成几乎是不可能的。
计算机课件中函数图像的生成
从计算机课件的角度上讲,对于函数图像,只要能将函数图像在计算机屏幕中显示出来就可以了。在Flash课件中,可以通过多种方式来实现函数图像的绘制。
利用Flash的基本工具这种方法在Flash课件制作中非常简单。比如制作一个正弦函数图像,在图符1中利用直线工具绘制一个直角坐标系,并用文本工具添加上坐标原点及X轴和Y轴上的坐标点,再在图符2中利用圆形工具绘制圆形并对圆的边界曲线经过调整、修改后,分别绘制出正弦曲线,将它们按数学关系放置在坐标系中。课件演示时看到的就是图像正弦函数。
定义画笔对象这种方法的特点是定义一个画笔对象,并进行相关语句的设置,这时鼠标就变成一枝画笔,通过拖动画笔,来完成各种函数图像的绘制。由于受鼠标可控性的影响,比如画一条弧线就很困难,这种方法只能简单来摹仿函数图像。这对高年级学生而言,因其已具备很高的抽象思维能力,应用起来还可以理解,而对低年级学生而言,应用起来就不好理解。
利用动画片断的复制来演示函数图像在Flash课件中,可以充分利用对动画片断的相关命令的应用,如duplicate Movie Clip()命令,将动画片断进行复制,同时结合着文本变量、循环语句的应用,将这些复制动画片断放置在以函数关系形成的计算机屏幕上,最终形成函数图像。
相比而言,利用第3种方法得到的函数图像快速、准确,应用面广,下文进行详细说明。
动画片断的duplicate Movie Clip()命令及输入文本变量在演示平面函数图像中的应用
以正弦函数为例来说明。对于y=Asin(ωx Φ0),振幅、周期(或角频率)、初相发生变化时,都将会形成函数图像的变化。为了动态演示在任意情况下,也就是振幅、周期(或角频率)、初相为任意值时,显示函数的图像,在Flash中,可以借助对动画片断的控制命令duplicate Movie Clip()和动画片断的属性设置及输入文本变量的应用,来实现对函数图像的显示。为了实现函数图像的动态显示,具体的操作步骤为:
利用输入文本设定变量对于正弦函数而言,其中的周期、振幅、初相都可以作为变量来处理。在主场景中,分别制作3个输入文本,并为它们指定相应的变量名:角频率(frequency)、振幅(swing)、初相(phase)。这3个输入文本的作用是当课件运行时,通过键盘输入数值,输入的数值将会传递给角频率、振幅、初相3个变量。
绘制平面直角坐标系对于直角坐标系而言,仍然采用直线工具来绘制坐标系,并注意记录下坐标原点在计算机屏幕上的位置,如(20,120)。
制作动画片断制作一个只有一帧的动画片断,该动画片断利用圆形工具作一个长与宽各为1个像素的圆,其在计算机上显示为一个点。在主场景中将其调入,为其指定对象名如point,当动画片断实例被指定名称后,其就可以作为对象来使用,point对象就是用来显示一个点。
利用duplicate Movie Clip()命令复制point对象在主场景中做一个按钮,给按钮施加如下的角本:
on (press) {
x=Number(phase); // 得到初相值
y= Number(swing); //得到振幅值
z= Number(frequency); //得到角频率值,间接得到周期值。
i=1; //设定横坐标起
do {duplicateMovieClip("Point", "Point" i,360 i);
setProperty("Point " i,_x, 20 j); //设定横坐标
setProperty("Point " i, _y, 120 y*Math.sin(((z *i x)/180)*Math.PI)); //设定纵坐标
i=i 1;}while(i<360);
每次只要输入3个变量值之后,通过点击主场景中的按钮,就可以即时生成新的不同周期、振幅、初相位的图像。
坐标原点的确立及循环变量的控制
坐标原点的确立对于计算机屏幕而言,左上角为(0,0),如当Flash影片设置大小为(800,600)时,其右下角为(800,600)。在建立直角坐标系时,原点的确立应充分考虑计算机屏幕坐标的影响。如上例中,(20,120)为函数图像的坐标原点,函数中其他所有的点都应以该点为参照原点。
循环变量的控制在上例中,当输入的角频率为1,函数的周期为2π,利用set Property("Point " i, _y, 120 y*Math.sin(((z *i x)/180)*Math.PI))语句确立动画片断在纵坐标轴上的位置,其i为360时,对应的角度为2π。所以循环变量终值选择为360,共确立360个对应的(X,Y)坐标点,并将复制的动画片断定位在这些点上,从而形成一个周期的正弦函数图像。如果i的初值为-360,则得到的是从-2π到2π的函数图像。
结束语
利用动画片断的复制命令及循环语句的控制来生成函数图像,要注意几个要点。
1)动画片断本身只是显示一个点的作用,在制作时应尽可能小,以长、宽各为1个像素的圆为宜。如果动画中的点做得比较大,动画片断就会相互覆盖,绘制的图像就会不连贯。
2)坐标原点的确立依问题而定。如以屏幕中心为坐标原点,则应以(400,300)来建立坐标轴(相对于800,600的屏幕)。
3)循环变量的初始值以函数本身来确定,即定义域的作用范围。这在不同的函数中是不同的,但从绘制图像的角度上讲,计算机屏幕的最大宽度为800时,其i值超过800后的图像将不再显示。
总之,y=f(x)类的数学函数图像可以通过上述介绍的方法来进行绘制。在set Property()命令中,根据具体函数来确定对应的纵坐标值,这样绘制的函数图像不仅效率高,而且准确,比较适宜于课堂教学。
(作者单位:河南周口师范学院教育科学系)
传统课堂教学过程中函数图像的生成
单纯从基于传统的课堂教学过程中数学函数图像的生成过程来看,对于给定的y=f(x)的函数图像,一般是建立平面直角坐标系,标出其坐标原点及X轴和Y轴上相应的点和单位,根据函数形式来确立一些关键的对应的坐标点,再将各个点连接起来,最终形成完整、连续的函数图像。在课堂教学,由于教师对所绘制的图像一般比较了解,所以对于一些简单的、基本的函数图像大都可以基于经验快速绘制;而对于比较复杂的函数图像,教师通过手绘快速完成几乎是不可能的。
计算机课件中函数图像的生成
从计算机课件的角度上讲,对于函数图像,只要能将函数图像在计算机屏幕中显示出来就可以了。在Flash课件中,可以通过多种方式来实现函数图像的绘制。
利用Flash的基本工具这种方法在Flash课件制作中非常简单。比如制作一个正弦函数图像,在图符1中利用直线工具绘制一个直角坐标系,并用文本工具添加上坐标原点及X轴和Y轴上的坐标点,再在图符2中利用圆形工具绘制圆形并对圆的边界曲线经过调整、修改后,分别绘制出正弦曲线,将它们按数学关系放置在坐标系中。课件演示时看到的就是图像正弦函数。
定义画笔对象这种方法的特点是定义一个画笔对象,并进行相关语句的设置,这时鼠标就变成一枝画笔,通过拖动画笔,来完成各种函数图像的绘制。由于受鼠标可控性的影响,比如画一条弧线就很困难,这种方法只能简单来摹仿函数图像。这对高年级学生而言,因其已具备很高的抽象思维能力,应用起来还可以理解,而对低年级学生而言,应用起来就不好理解。
利用动画片断的复制来演示函数图像在Flash课件中,可以充分利用对动画片断的相关命令的应用,如duplicate Movie Clip()命令,将动画片断进行复制,同时结合着文本变量、循环语句的应用,将这些复制动画片断放置在以函数关系形成的计算机屏幕上,最终形成函数图像。
相比而言,利用第3种方法得到的函数图像快速、准确,应用面广,下文进行详细说明。
动画片断的duplicate Movie Clip()命令及输入文本变量在演示平面函数图像中的应用
以正弦函数为例来说明。对于y=Asin(ωx Φ0),振幅、周期(或角频率)、初相发生变化时,都将会形成函数图像的变化。为了动态演示在任意情况下,也就是振幅、周期(或角频率)、初相为任意值时,显示函数的图像,在Flash中,可以借助对动画片断的控制命令duplicate Movie Clip()和动画片断的属性设置及输入文本变量的应用,来实现对函数图像的显示。为了实现函数图像的动态显示,具体的操作步骤为:
利用输入文本设定变量对于正弦函数而言,其中的周期、振幅、初相都可以作为变量来处理。在主场景中,分别制作3个输入文本,并为它们指定相应的变量名:角频率(frequency)、振幅(swing)、初相(phase)。这3个输入文本的作用是当课件运行时,通过键盘输入数值,输入的数值将会传递给角频率、振幅、初相3个变量。
绘制平面直角坐标系对于直角坐标系而言,仍然采用直线工具来绘制坐标系,并注意记录下坐标原点在计算机屏幕上的位置,如(20,120)。
制作动画片断制作一个只有一帧的动画片断,该动画片断利用圆形工具作一个长与宽各为1个像素的圆,其在计算机上显示为一个点。在主场景中将其调入,为其指定对象名如point,当动画片断实例被指定名称后,其就可以作为对象来使用,point对象就是用来显示一个点。
利用duplicate Movie Clip()命令复制point对象在主场景中做一个按钮,给按钮施加如下的角本:
on (press) {
x=Number(phase); // 得到初相值
y= Number(swing); //得到振幅值
z= Number(frequency); //得到角频率值,间接得到周期值。
i=1; //设定横坐标起
do {duplicateMovieClip("Point", "Point" i,360 i);
setProperty("Point " i,_x, 20 j); //设定横坐标
setProperty("Point " i, _y, 120 y*Math.sin(((z *i x)/180)*Math.PI)); //设定纵坐标
i=i 1;}while(i<360);
每次只要输入3个变量值之后,通过点击主场景中的按钮,就可以即时生成新的不同周期、振幅、初相位的图像。
坐标原点的确立及循环变量的控制
坐标原点的确立对于计算机屏幕而言,左上角为(0,0),如当Flash影片设置大小为(800,600)时,其右下角为(800,600)。在建立直角坐标系时,原点的确立应充分考虑计算机屏幕坐标的影响。如上例中,(20,120)为函数图像的坐标原点,函数中其他所有的点都应以该点为参照原点。
循环变量的控制在上例中,当输入的角频率为1,函数的周期为2π,利用set Property("Point " i, _y, 120 y*Math.sin(((z *i x)/180)*Math.PI))语句确立动画片断在纵坐标轴上的位置,其i为360时,对应的角度为2π。所以循环变量终值选择为360,共确立360个对应的(X,Y)坐标点,并将复制的动画片断定位在这些点上,从而形成一个周期的正弦函数图像。如果i的初值为-360,则得到的是从-2π到2π的函数图像。
结束语
利用动画片断的复制命令及循环语句的控制来生成函数图像,要注意几个要点。
1)动画片断本身只是显示一个点的作用,在制作时应尽可能小,以长、宽各为1个像素的圆为宜。如果动画中的点做得比较大,动画片断就会相互覆盖,绘制的图像就会不连贯。
2)坐标原点的确立依问题而定。如以屏幕中心为坐标原点,则应以(400,300)来建立坐标轴(相对于800,600的屏幕)。
3)循环变量的初始值以函数本身来确定,即定义域的作用范围。这在不同的函数中是不同的,但从绘制图像的角度上讲,计算机屏幕的最大宽度为800时,其i值超过800后的图像将不再显示。
总之,y=f(x)类的数学函数图像可以通过上述介绍的方法来进行绘制。在set Property()命令中,根据具体函数来确定对应的纵坐标值,这样绘制的函数图像不仅效率高,而且准确,比较适宜于课堂教学。
(作者单位:河南周口师范学院教育科学系)