运用VRML提高模像直观的教学创新与研究
2011-10-17仝兆景王大虎
仝兆景 张 科 杨 艺 王大虎
河南理工大学 河南焦作 454000
运用VRML提高模像直观的教学创新与研究
仝兆景 张 科 杨 艺 王大虎
河南理工大学 河南焦作 454000
针对传统教学中模像直观在表达上不足,提出运用基于VRML的虚拟现实技术来增强建模对象的真实感,结合实例给出了逼真、生动模型的建模方法和丰富动态交互功能的实现方法。
VRML;模像直观;虚拟现实
随着社会的发展,高等教育理论方法的不断创新和素质教育的进一步推进,诸多新技术、新理念、新手段被不断地引入教育教学环节,极大地提高教育教学质量和效率。教学中常用的模像直观通过对事物的模拟性形象直接感知而进行的一种直观方式,例如图片、图表、模型、幻灯片和教学电影电视等的观察和演示等。通过模像直观的方式可以人为地排除无关因素,突出本质要素;可根据观察需要,通过大小变化、动静结合、虚实互换、色彩对比等方式扩大直观范围,不受实物直观的局限,提高直观效果,扩大直观范围,因此它已成为现代化教学的重要手段,是现代教育技术学研究的重要内容。但模像直观也有模拟形象与实际事物之间有一定描述差距的不足,如何减少这种差距,成为当前教学实践中要解决的首要问题。
虚拟现实技术诞生于20世纪90年代,它集计算机、传感与测量、仿真、微电子等技术于一体,它可利用计算机生成一个逼真的三维视觉、触觉以及嗅觉等感觉世界,让参与者从自己的视点出发,利用各种传感设备,在与现实世界对应的虚拟世界进行浏览和交互式互动。经实际使用证明,将基于VRML的虚拟现实技术用于教学实践,可极大提高教学对象的直观度,改善教学效果,提高教学质量。
1 基于VRML的教学对象建模
VRML虚拟场景应用节点(Node)建模,利用对象及其属节点构建复杂系描述。基于VRML的教学对象三维建模一般由Shape节点定义,这些特征定义了创建放置在虚拟空间中的造型。一个造型的确切几何尺寸和外观由给定节点和节点域的选择值控制。造型的外观由Appearance和Material节点来描述。VRML提供4种原始几何造型,它们是Sphere,Box,Cylinder和Cone节点。任何复杂的设备、传感器、仪表可通过Box,Cylinder,Sphere,Cone基本形体节点和Extrusion,IndexedFaceSet等生成复杂形体的节点进行分别实现。形状特殊的部件,还可以用3D成型软件如UG,Maya,Pro/E和SolidWorks,利用它们先进行三维建模,通过Export输出VRML文件(.wrl),再调入Vrmlpad进行编程,经过处理后参与整体的组合,这样可简化编程,对压力表的三维建模如图1所示。
图1 压力仪表的三维建模效果
2 动态交互功能的实现
在教学中不仅要求模拟对象有逼真的外观及效果,还应该有符合实际的动态交互功能,如设备仪表的拆装、器件的透明化处理、开关、按钮的交互操作、器件工作原理的模拟等。VRML2.0新增了许多动态交互功能,如通过路由实现的事件入、事件出体系,通过事件体系,事件可以蔓延传播从而引起其他节点的变化,形成交互操作;在实际操作中,也可结合VrmlScript与JavaScript实现虚拟场景的动态交互,它利用Script节点,控制场景和用户的交互过程的逻辑控制以及场景内三维物体的运动,VrmlScript或JavaScript脚本语言,通常作为一个事件级联的一部分而执行,实质上是一段可执行的程序;对于复杂交互动作实现,VRML2.0提供的外部编程接口,通过EAI利用Java Applet编程可以读取或发送三维场景中节点的事件消息,使VRML2.0虚拟世界与外部对象实现互动沟通。
VRML完成动态交互效果实质上是依靠触发一个给定的时间传感(TimeSensor)和一系列各种各样的插补器节点实现的关键帧动画,由时间传感器给出一个控制动画效果的时钟,这个时钟包含了关键动画的开始、停止时间、时间间隔和是否循环等动画控制参数,然后通过这个时钟的输出,通过将这些事件入TimeSensor节点的eventOut通过路由传到其他节点,当TimeSensor节点的时钟计时,可以在虚拟场景中驱动各种插补器节点,VRML浏览器根据插补器节点的设置通过线性插值的方法生成模型的位置或状态数据,并将数据输出至相应的模型节点,从而完成整体动态交互。
电机速度检测及停转报警是通过以下程序实现:
程序模块中定义名为Speedcontrol的Script节点,Script节点又定义了布尔型的域RotateEnable和SFTime型的入事件ClickIn和布尔型的出事件Control。电机处于转动状态时,转动的速度通过OrientationInterpolator节点的key[]和keyValue[]的域值结合时间传感器来控制:事件入口S e t_fraction接收一个时刻值时,朝向插补器节点根据关键时刻列表和与其对应的旋转关键值列表,计算出一个旋转关键值列表,并通过Value_changed事件出口输出新算出的旋转列表,从而使转子不停地转动,转速的大小由时间传感器TimeSensor节点的CycleInterval域的值决定。
由于布尔型的域RotateEnable在初始状态为TRUE,所以虚拟场景引入时电机处于转动状态,对电机停转情况的报警可从点击关闭电机开关这一事件分析起,点击电机开关这一动作由触动传感器传送到Script节点,ClickIn(value,ts)函数被调用,点击后RotateEnable取其反即FALSE,Script节点不会触发时间传感器,电机就会停下,一旦电机停下,“print('报警!电机停止转动');”语句就会被调入,通过Cortona控制台弹出状态窗口,提示:报警!电机停止转动(如图2所示)。相应的报警还可用于错误操作、压力异常、速度异常、液面异常等情况。
图2 电机停转报警
3 VRML在传感器技术教学中的应用
传感器技术是电子信息技术与仪器、测控等专业课程中的一门基本课程,主要讲授常用传感器及仪表的基本原理、基本结构、应用特性以及使用方法。传统教材上关于传感器的二维图表及图片对空间想象能力较差的学生来讲,对知识的掌握程度势必降低。而虚拟现实的引用较好实现了计算机对传感器模型及应用特性的表达,在学习者的控制下可以任意位置的观察三维模型并实现交互操作,这是传统教学所无法实现的。如图3所示,教学对象建模示意图,根据实际教学对象,运用VRML建立虚拟模型,这个模型在教学实践中不仅可用于学生观察和模拟操作,还能通过虚拟模型的信息反馈,强化学生在学习中对实际设备、传感器的认识,利于增进学生对实际器件性能的掌握,且不会因为误操作而损伤设备或仪器。教师在教学中可以依据信息反馈,对虚拟模型不断优化,甚至还能为实际传感器或仪表的参数优化提供建议。
图3 教学对象建模示意图
4 结束语
运用VRML建立的三维虚拟模像直观虚拟场景,充分体现了V R M L构建对象交互性强、灵活性大等优点,学生可按照自己的兴趣,根据自身的学习情况,在虚拟场景亲身参与和体验,从而轻松愉快地获得知识,提高知识的理解力和掌握程度。随着计算机技术的发展和人们对教学手段方法的创新和研究,基于VRML的虚拟现实将会在深化教学改革中发挥更大的作用。
[1]付焱晶,张雷.VRML语言在航空理论教学中的设计使用[J].中国科技创新导刊,2009,14:86
[2]江辉仙,张文开.基于VRGIS的虚拟校园三维仿真技术应用[J].福建师范大学学报(自然科学版),2006,22(2):109~113
[3]赵凤芝,彭巧梅.基于VRML的交互式虚拟实验环境的构建[J].大庆石油学院学报,2008,32(2):91~92
[4]汪兴谦.VRML与JAVA编程实例讲解[M].北京:中国水利水电出版社,2001
Abstract: Due to the insufficiency of expression in the traditional teaching, the virtual reality technology based VRML was presented to improve the third dimension, instances was given to describe how to conceive the vivid and pleasing model, and how to achieve the function of dynamic interaction in virtual world.
Key words: VRML; model simulation; virtual reality
Teaching research and innovation in using VRML to improve model simulation effect
Tong Zhaojing, Zhang Ke, Yang Yi, Wang Dahu
Henan polytechnic university, Jiaozuo, 454000, China
2010-11-08
仝兆景,硕士,讲师。
河南理工大学教育教学改革研究项目(编号:2008JG048)。