Flash动画在Authorware课件制作中的应用研究
2010-02-17杨强
杨 强
长江大学 湖北荆州 434023
Flash动画在Authorware课件制作中的应用研究
杨 强
长江大学 湖北荆州 434023
作为同一公司的产品,Authorware对Flash动画提供了很好的支持。两者相互结合,可实现优势互补,对开发CAI课件有很大帮助。文章简要介绍了Flash动画在Authorware多媒体课件制作中的体会。
Authorware;Flash动画;多媒体课件
Flash是目前互联网上最受欢迎的矢量图形和动画技术。由于其显示质量高、播放速度快并且具有交互性,正在得到越来越广泛的使用。Authorware通过Flash Xtra在程序中使用【Flash组件】设计图标,无须使用Flash播放器就可以在程序中对Flash动画进行播放和控制,甚至可以通过事件响应来控制用户与Flash动画进行交互的过程。
一、在Authorware中插入Flash动画
1.使用FlashAssetXtra控件
执行Insert→Media→Flash Movie命令,向流程线插入一个FlashMovie设计图标,并弹出【Flash Asset Properties】对话框,单击“Browse”按钮后选择并导入一个本地的Flash动画文件;也可以通过Internet按钮,导入位于互联网中的Flash动画文件。最后单击“确定”按钮,即可看到Authorware设计窗口流程线上插入的Flash图标。
2.利用ActiveX控件
执行Insert→Control→ActiveX…”,在弹出的“SelectActiveX Control”对话框提供的控件列表中选择“Shockwave Flash Object”控件,单击“OK”按钮,在出现的ActiveX ControlProperties对话框中单击“Custom…”按钮,会出现Authorware属性对话框,接着在“影片URL”一栏中输入要插入的Flash动画的路径及名称即可。
二、在Authorware中控制Flash动画
1.Authorware中控制Flash动画
在Authorware中插入Flash动画后,可能需要根据课件教学内容的需要,对动画进行控制,如:打开、播放、暂停、快进、快退操作。对这些操作我们可以通过在流程线上建立计算图标,并在计算图标中使用相应的函数予以控制。
(1)播放
双击“播放”分支的计算图标,在弹出的窗口中输入如下:
CallSprite (@“myflash”, #play)— —#play指定方法为play
输入完成后,将该窗口关闭,对程序代码进行保存。
(2)停止
双击“停止”分支的计算图标,在弹出的窗口中输入如下:
CallSprite (@“myflash”, #stop)— —#stop指定方法为stop
输入完成后,将该窗口关闭,对程序代码进行保存。
(3)旋转控制(可利用循环语句进行连续变化,下同)
双击“旋转控制”分支的计算图标,在弹出的窗口中输入如下:
SetSpriteProperty (@“myflash”,#rotation, 30)— —正向转30
SetSpriteProperty (@“myflash”,#rotation, -30)— —反向转30度
输入完成后,将该窗口关闭,对程序代码进行保存。
(4)缩放控制
双击“缩放控制”分支的计算图标,在弹出的窗口中输入如下:
SetSpriteProperty (@“myflash”, #scale,60)—缩小为原尺寸的60%
SetSpriteProperty (@“myflash”, #scale,0)—动画将缩小到最小
输入完成后,将该窗口关闭,对程序代码进行保存。
(5)跳转到指定帧,通过循环可实现快进或快退
双击“跳转”分支的计算图标,在弹出的窗口中输入如下:
CallSprite (@“myflash”, #gotoframe,16)—跳转到16帧
输入完成后,将该窗口关闭,对程序代码进行保存。
2.在控制过程中Flash向Authorware传递参数
严格来说,应该是Flash“动画作品”向Authorware“程序”传递参数,主要用在将用户在Flash动画中的交互操作的结果或数据,传递到Authorware程序中的相应变量,进行存储或进一步的交互操作。这是Authorware与Flash混合编程的一种最主要的手段,广泛应用于在Authorware中使用Flash动态菜单、将Flash动画中用户的操作结果(如游戏、模拟实验的最终结果等)传递至Authorware程序中处理。
其实现思路为:在Flash作品制作时,为事件设置相应的脚本代码(若是帧装载后响应,脚本代码直接写在帧脚本中,若是其它事件,如鼠标单击等,则将脚本代码写在对应的事件响应脚本下)。在Authorware中插入Flash动画后,再添加交互图标和交互响应,交互响应的类型为事件交互方式,根据Flash脚本中使用的方法和函数不同,在Authorware中接收事件的函数和实现方法上也略有区别,具体在Flash中可用如下3个语句之一来传送参数,其格式与功能实现分别如下:
(1)fscommand (“variable”,“XXXX”)
功能:将变量variable (实际应用中可改为其它变量名字)的值设为“XXXX”在Authorware中利用事件交互方式(事件交互的发送者应为ActiveX控件,即插入的Flash控件,下面两种方法类似),在Flash的事件触发后,完成相应的响应。使用如下函数和语句取得变量variable的值,并执行一定的交互:
EvalAssign (EventLastMatched [#command]^“: =EventLastMatched [#args]”)
(2)getURL (“URL”)
功能: Flash事件触发后,将向调用者传送“URL”字符串(可将参数“URL”替换成其它内容,如菜单的图标名称)。
在Authorware中加入事件交互,交互的发送者设为插入Flash动画的图标名称,使用EventLastMatched [#urlString]语句可获得Flash传递过来的URL字符串,用IconID@EventLastMatched [#urlString]语句可得到URL标识的图标的引用(例如用来跳转至指定的图标开始执行,即使用Flash动画作为Authorware的导航菜单)。
(3)Set (“变量名”,值)
功能:在Flash中为某一变量赋值,也可以直接用赋值语句赋值。
在Authorware中,用语句:
result: =CallSprite (@”Flash动画图标名”, #getVariable,”Flash变量名”)
将Flash中的变量的值保存到result中。
三、在Authorware中使用Flash动画应注意的几个问题
Flash动画播放的效果与它的设置有很大的关系,下面是一些在应用Flash动画时应当注意的问题:
第一,在满足需要的情况下,尽量使用较低的画面质量,这样可以获得较高的播放速度,使动画画面显得更为流畅。
第二,尽量使用Opaque(不透明)模式,由于透明模式需要更多的处理时间,因此在动画后面没有其他对象或动画背景与画面背景相同的情况下,尽量使用不透明模式。
第三,尽量使用“Direct to screen”属性,只要不涉及次控制或透明需要,就应当使用这种模式,因为它能够提供更快的播放速度。
第四,如果在Flash动画中没有动态画面,例如仅仅是一些文字或图片,那么就要设置动画图标具有Static属性,这样Authorware就不用反复刷新它了。
第五,当我们使用函数修改Flash动画属性时,尽量直接对Flash动画(sprite)进行设置,这比对Flash图标(icon)进行设置要更加快捷。
第六,Flash动画时,尽量避免同时播放其他内容,否则会影响到动画播放的效果。
第七,互控制时应避免使用热区响应,应采用热对象响应。若需要对Flash动画画面某一位置进行交互,可以绘制一个透明图形,并使之对热对象进行响应。
[1]王宏伟.Authorware与Flash混合编程技巧及应用[J].怀化学院学报,2007,25(5):77~78
[2]赵丽琴.Flash动画在Authorware课件制作中的应用[J].成都大学学报,2009,23(1):101~104
Application research of Flash animation in authorware courseware making
Yang Qiang
Yangtze university, Jingzhou, 434023,China
As the same company's products, authorware provides a good support for flash animation. The combination with each other may implement complementary advantages.In this paper, it briefly describes the experience of application on the flash animation in the authorware multimedia courseware making.
authorware;flash animation;multimedia courseware
book=47,ebook=341
2009-11-25
杨强,本科,讲师。