基于ActionScript技术的虚拟电子实验室构建研究

时间:2022-10-20 12:36:35

基于ActionScript技术的虚拟电子实验室构建研究

摘要:论文较为详细论述了ActionScript技术的特点以及基于ActionScript技术的虚拟电子实验室构建的意义、可行性、及开发思路方法等内容。

关键词:ActionScript;虚拟;电子实验室

中图分类号:TP37 文献标识码:A 文章编号:1009-3044(2016)19-0255-02

1 绪论

虚拟实验室是一种运用虚拟现实技术模拟真实环境实验的计算机辅助教学软件,它采用多媒体信息技术在计算机上建立虚拟实验教学环境,使学生在计算机模拟环境中通过接近真实的人机交互界面完成实验。

虚拟实验室具有仿真性、开放性的特点,并可多次重复使用。在该虚拟平台上,学生可自己动手完成实验设备的安装调试,观察实验效果,并对实验数据进行相应的分析。虚拟实验室的构建可以在很大程度上弥补目前学校实验设备不足的问题。

2 虚拟电子实验室构建的意义

在目前的电子实验室中,普遍存在着软件不足的问题,所开设的电子实验主要以基础训练为主,缺少较为综合的设计型实验。学生大多在已经安装完成的固定实验台上进行操作,缺乏创新。而引入虚拟电子实验室,则可以很好地解决上述问题。在虚拟电子实验室中,不需用到任何实际的电子元器件,也不需实际搭建电路,不需使用测试仪器进行测试,学生就可以判断该电子设计方案是否正确,而不再受限于实际测试时特殊仪器设备的短缺、破坏性测试的不经济性、电路噪声与负载的限制;可以更为全面地了解电路的性能;对电路进行最优化设计;帮助学生完成电路结构和概念的构思和验证,完善各种设想。通过虚拟电子实验室,学生可以拥有各种实验仪器设备,只需指定信号输入点或测试点即可,远比真实仪器的使用简便可靠。而当虚拟电子实验测试完成后,再进行相应的实际电路搭建调试,则可大大提高实验效率,减低实验成本,节省大量的实验时间和费用,同时也可以更好地培养学生大胆尝试,积极探索,敢于创新的精神。

目前虽然市场上有一些电路仿真软件,但针对性不是很强,开发虚拟电子实验室,可以根据课程需要,独立开发实验项目,在实验中注重的是实验操作的交互性和实验结果的仿真性。利用虚拟电子实验室,学生可以像在真实的实验环境中一样通过虚拟实验平成各种实验项目,可以取得与实际环境中几乎等价的实验效果。

3 ActionScript的特点以及在虚拟实验室构建中的作用

FLASH技术所创建的元素是采用矢量来描述的,与位图图像不同,矢量图形不仅体积小,同时可以任意缩放而不会影响图形的质量。同时它采用流媒体技术,适合在网络上使用。通过使用组件技术和关键帧等使得生成动画文件很小。另外Flash技术支持多种音频视频格式,可以方便地制作出集声音、动画、视频等融为一体的作品。此外,还有最关键的一点是Flash利用Actionscript脚本语言,从而增强了对交互事件的控制。Actionscript语言是一门面向对象编程语言,功能强大,它可以创建真正具备完全交互性的应用程序。

与其他开发技术的价格高昂,很难在普通高校中得到开发和有效应用相比,基于Flash ActionScript技术而开发的虚拟实验室则具有开发成本较低,适用范围广,易于普及等特点。鉴于这种情况,在众多的仿真实验构建软件中,选择基于ActionScript技术开发虚拟电子实验室。通过使用ActionScript可以控制Flas中的对象、创建导航和交互元素,能形象地模拟动画状态,开发周期短。这种特性使得它适合交互式虚拟实验室的建立,从而为我们提供一个成本低、具有推广价值的仿真实验开发平台。

4 基于ActionScript技术的网络虚拟电子实验室开发思路

虚拟电子实验室分为实验室管理模块、课件与教学模块、仿真实验模块、交流评价模块等。在教学模块中,放置相关的教学视频及动画,供用户学习;在仿真实验模块中,利用计算机技术和多媒体技术来完成各种虚拟实验场景的构建。提供大量预设的实验情景用于指导学生的思维;以鼠标的点击拖动,将虚拟实验室中的各种仪器按实验要求和过程组成一个完整的试验系统,其中包括各种元件的添加、参数的设置等,同时对实验的数据进行采集以及对实验结果的分析处理,充分体现学生的主体地位;学生在独立完成实验的同时,还可以通过互动模块与教师进行交流,教师可以实现在线答疑并及时对学生的实验完成情况进行评价反馈。

5 基于ActionScript的虚拟电子实验室构建关键技术

1)鼠标交互事件

在虚拟电子实验室的使用过程中,会有大量鼠标拖拽元器件的操作,即监听鼠标按下事件,并开始监听移动,同时为了让弹起时不再拖动,还要监听弹起事件。

mc.addEventListener(MouseEvent.MOUSE_DOWN,onMouseDownHandler);

mc.addEventListener(MouseEvent.MOUSE_UP,onMouseUpHandler);

//mc添加两个鼠标事件:鼠标按下时 可以拖动;鼠标松开 停止拖动;

private function onMouseDownHandler(evt:MouseEvent):void

{evt.currentTarget.startDrag(false);

//stargDrag指定可拖动影片剪辑是锁定到鼠标位置中央 (true),还是锁定到用户首次点击该影片剪辑的位置上 (false)。 }

private function onMouseUpHandler(evt:MouseEvent):void

{evt.currentTarget.stopDrag();}

2)使flash适应不同的分辨率大小

虽然在设计界面时是可以设置好自动适应两种或者几种分辨率的,但较为繁琐,以下给出通过ActionScript脚本使其自动适应多种分辨率的方法。

stage.scaleMode=StageScaleMode.NO_SCALE

//不变形处理

function myfunction(){

//A的位置

A.x=0

A.y=0

} //自定义一个函数来控制MC的位置

stage.addEventListener (Event.RESIZE,test);

//对舞台的改变进行侦听

function test (e:Event):void {

myfunction ();

} //舞台改变时,重新设置MC的位置

3)从外部加载显示元素

在构建虚拟实验室的过程中,需要使用到大量的外部可显示资源,可以将这些资源放置在Flash库中,作为内部资源使用,但这样会使生成的swf文件体积增大,造成不好的用户体验,同时不利于后期维护。鉴于以上原因,可通过使用Loader类,从外部动态加载可显示资源。

{Var loadimg:Loader=new Loader();//创建一个Loader实例对象

Var url:string=”a1.gif”;//将外部显示元素地址包装成URLRequest对象

Var urlReq:URLRequest=new URLRequest (url); //启动加载动作

Loadimg.load(urlreq);//在舞台上显示

Addchild(loadimg);}

4) 在flash中实现3D效果

在虚拟电子实验室中,需要构建大量的虚拟实验设备,虚拟设备应在外型上能模拟真实设备,而flash并没有3D的应用程序编程接口,可通过ActionScript函数调用,从而模拟三维效果,另外也可以通过其他软件进行3D建模,实现3D效果。例如需要制作三维模型旋转效果,可以先利用3Dmax软件进行建模,完成三维旋转,然后导出序列帧。最后导入到flash里面,即可实现。

6 结论

基于ActionScript技术的虚拟电子实验室可以作为一种辅助的实验手段来弥补真实实验课程的不足,并且可以构建复杂的难以开展的实验。Flash ActionScript技术手段是实现仿真实验的一种简单有效的途径,其所开发的虚拟实验具有形象生动的特点,可激发学生兴趣,从而有效地提高课程的教学效果和质量。

参考文献:

[1] 王璁.基于Flash的高电压虚拟实验室探索[J].电气电子教学学报,2013(4).

[2] 陈一民.增强虚拟现实技术研究及其应用[J].上海大学学报,2011,17(4).

[3] 孟祥宇.虚拟现实技术在现代教育中的应用研究[J].重庆科技学院学报,2011(5).

[4] 张春.仿真实验系统的设计与开发[J].煤炭技术,2013(6).

[5] 蒋耘晨.虚拟实验室技术[M].北京理工大学出版社,2011.

[6] 母诗源.虚拟实验综合辅助教学的设计与应用[D].北京邮电大学,2012.

[7] 布劳恩斯坦(美).ActionScript3.0宝典[M].清华大学出版社,2012.

[8] 赵冬利.基于flash技术的NMR虚拟实验室的构建[D].大连理工大学,2013.

上一篇:基于Unity 3D的虚拟楼盘漫游和碰撞检测研究 下一篇:课程建设的探索实践与研究