第24卷第7期
2008年4月
甘肃科技
Gansu Science and Technology
VDZ.24
Apr.
No.7
2008
基于VR ML的立体网页实现
,
“:.
(三门峡职业技术学院,河南三门峡472000)
翟利红
摘要:文章给出了虚拟现实技术的概述,并对VRML(即Virtual Reality Modeling Language,虚拟现实建模语言)
中的基本概念进行了介绍,然后通过一个基于VRML的立体网页实现来说明用VRML建模的具体过程,并对
VRML的发展和应用进行了展望. ’
关键词:虚拟现实技术;VRML;建模
中图分类号:TP312
虚拟现实技术(Virtual Reality),又称为“灵镜
技术”、“虚拟环境”、“赛博空间”等,是20世纪以来
1 VRML概述
科学技术进步的结晶,集中体现了计算机技术、计算
VRML(Virtual Reality Modeling Language)是
机图形学、传感技术、人工智能、网络、并行处理及人
机交互理论等多个领域的最新成果。
一种虚拟现实建模语言,它的基本目标是建立因特
网上的交互式三维多媒体。VRML与二维、三维图
一个典型的虚拟现实系统主要有以下五大部分
像技术、动画技术和多媒体技术的结合,在Web环
组成:虚拟世界、Computer、虚拟现实软件(包括建
境中创建虚拟城市、虚拟校园、虚拟图书馆以及虚拟
模软件、VR软件和虚拟环境数据)、输入设备及输
商店。专家已经预言,在未来十年,三维网页将取代
出设备。如图1所示:
现在的二维网页成为主要的网页模式。
’.VRML是一种面向对象语言,它的“对象”叫做
节点,节点是VRML中的最基本单位,每个节点还
户
包含子节点和描述节点属性的字段,VRML中有以
下节点:shape and geometry(几何节点)、Appear—
ance(外观节点)、Grouping(群节点)、Environment
(环境节点)、Animation and Interaction(动态交互
图1虚拟现实系统示意
虚拟现实系统对计算机的内存、CPU速度、显
卡等处理图形的能力方面的硬件有一定要求,建议
采用Pentium4以上的计算机,主频2G以上、内存
节点)和Others(其他节点)。
VRML中的每个节点一般都有两种事件,即一
个“人事件”和一个“出事件”。“人事件”请求节点改
变它自己某个域的值,而“出事件”则是请求别的节
点改变它的某个域值。路由是产生事件和接受事件
128M以上、显卡64M以上、硬盘10G以上。
的节点之间的连接通道。
虚拟现实技术具有三个突出特性:即沉浸性
.VRML的交互和动画执行都是事件驱动的,如
(Immersion)、交互性(Interactivity)和想象性(I—
图2所示为VRML的执行模式。
magination)。沉浸性指用户感觉到好像完全置身于
VRML场景可以接受两种事件驱动:从路由语
虚拟世界之中一样,被虚拟世界所包围。交互性即
句传过来的人事件和由外部程序(Java)接口写入的
用户在虚拟现实世界中所感受到的信息,经过大脑
直接事件。路由其实是一条传递消息的路径,从某
的思考和分析,形成自己想要实施的动作或策略,通
个节点的出事件域(EventOut)传出的信息传递到某
过输入界面反馈给系统。想象性指用户从定性和定
个节点的人事件域(Eventln)。场景中传感器节点
量综合集成的环境中得到感性和理性上的认识,进
通常定义了触发事件,它通过路由发送到场景图中
而使人能深化概念、产生新意和想象,最大限度发挥
其他节点的人事件域。Script节点的处理过程就是
人类的创造性和想象力。
用Javascript或Vrmlscript语法编写的脚本程序。
˝
•
‰
˚
第7期
翟利红:基于Web数据挖掘的信息处理技术研究
63
网站了。
3 VRML实例分析
本文所用到的工具有,VrmlPad编辑器、浏览器
IE和Cortona浏览器插件等。虚拟现实的最大特点
就是它的交互能力,使用户能随心所欲地操纵、控制
VRML环境中的物体。传感器便是VRML中提供
用户与虚拟世界中的物体进行交互的机制。VRML
中要实现动画就要使用到插补器节点与时间传感器
节点,但这些节点只能产生相对规则的动画,对于复
杂的动画就显得比较局限,Script节点解决了这个
问题,它可以嵌入Java等脚本语言,赋予脚本节点
动作,让动画角色进行复杂的动作。
!
下面的实例实现了简单的人机交互.在VRML
浏览器界面可以看到一个不停转动的风车,点击风
车,它停止转动,再次点击风车又继续转动。程序中
用到了TouchSensor触感器,用于感知用户点击鼠
标动作,OrientationInterpolator朝向插补器,控制
方位变换,使风车沿着KeyValHe所设的方向旋转,
TimeSensor时间检测器,控制风车的断与续。由于
篇幅有限源程序的关键代码在这里就不在列出。-’’
在虚拟世界中,一些VRML节点会因为环境的
变化或响应用户动作而产生事件。为了保证虚拟世
界的真实性,各节点不能孤立地响应外界的变化,事
件的路由(ROUTE)提供了一种机制,可以让发生事
件的节点通过路由传递事件到相关节点,从而使虚
拟世界保持一致。该实例的路由可以用图3表示:
图3路由实例图解
、
图2
VRML的执行模式结构图
Script节点还可以通过url域引入Java程序(.class
文件)进行事件处理。Script节点把处理的结果作
为出事件传递数据,继续路由到其他需要该数据的
节点,比如传递给节点实体改变它的位置、形状,由
外部程序接口写入的直接事件不需要路由传递可以
直接作用于场景,但其他执行过程都是一样的。若
需要外部程序的响应,该程序应该有能够读取节点
出事件域数据的接口。
2应用VRML创建立体网页的过程
1)源程序的编写。VRML源文件是一种
ASCII码的描述语言,可以使用一般计算机中都具
有的文本编译器编写VRML源程序,保存为*.wrl
为后缀名的文件格式就行,这种方法设计的效率不
高。VRML专用编辑器一般采用VrmlPad,Vrml-
Pad自带压缩功能将文件进行压缩,具体操作步骤
是:单击“File”一>“Save As”菜单,在弹出的“Save
As”对话框中选中“Compress”选项,单击“Save”按
钮之后,即可完成VRML文件的优化压缩。3DS
MAX、DXF等图形软件可以导出VRML文件,命令
export,保存为*.wrl后缀名的文件。
,.2)VRML文件的发布。VRML文件运行无误
后,就可以发布到网络上,一般它与HTML一起使
用,主要有两种方法,一是在网页的HTML源文件
中加入“
一
64
甘肃科技
第24卷
ensor,作为改变时间检测器的信号。TimeSensor的
现技术相比,在构建Web虚拟场景方面,VRML具
初始状态是处于开启的,并且不断地运行。当用户
有很强的能力。并且,可以嵌入Java、JavaScript等
第一次点击鼠标后,TimeSensor内的enabled值变
语言,其表现能力得到极大的扩充,不仅仅限于虚拟
成FALSE,时间检测器则停止运行。上面的程序
的三维场景,还能实现动画,更为重要的是,它能够
中,就是使用JavaScript程序不断地控制TimeSen-
实现人机交互,形成更为逼真的虚拟环境。_|-,!。,。
sot节点中的enabled字段的值,使其在断和续之间
VRML的出现及其发展改变了网络的二维平
不断循环。在每个cycleInterval周期的开始,时间
面世界,实现真正的三维立体网络世界、动态交互与
传感器发出fration—changed事件(值为o),一个周
智能感知,是计算机网络、多媒体技术与人工智能等
期内,浏览器允许传感器产生一个事件时(通常每帧
技术的完美结合,已成为把握未来网络、多媒体及人
一次),fration_changed的值从0增加到1,1表明当
工智能的关键技术。’
前周期已完成,新的周期开始。0rientationInterpo—
参考文献:
lator节点用来描述一系列在动画中使用的旋转值。
该节点不创建任何造型,在一组SFRotation值之间
[1]吴启迪.系统仿真与虚拟现实[M].北京:化学工业出
版社,2002.10.
.,
进行插值,通过使用该节点,可以使造型旋转。Ori—
[23严子翔.VRML虚拟现实网页语言[M].北京:清华大
entationInterpolator节点中的Key域的值指定了一
学出版社,2001.8.
。
张浮点时刻关键值列表,与从TimeSensor接受到的
[3] 申蔚,夏立文.虚拟现实技术[M].北京:北京希望电子
set_fraction对应:时刻值一般在0.0和1.0之间
取值。keyValue域的值指定了一个旋转关键值的
列表。每一个旋转关键值是一个4个值的组。前三
个值指定了一个旋转轴的X、Y和Z分量,第四个值
指定了旋转轴的一个旋转角度。当人事件set_frac—
tion接受到一个时刻值时,OrientationInterpoIator
节点根据关键时刻列表和与其对应的关键旋转值列
出版社,2002.9.。
[4]韦有双,杨湘龙,王飞.虚拟现实与系统仿真[M].北
京:国防工业出版社,2004.1.
[5]胡小强.虚拟现实技术[M].北京:北京邮电大学出版
社,2005.7.’。
一‘
[6]赛博科技工作室.VRML与JAVA编程技术[M].北
京:人民邮电出版社,2002.1.
[7]白忠建,敬万均.VRML教学演示系统[J]:计算机应
表,计算出一个关键旋转值子列表,并通过value—
用,2000增刊,20(8):250-252.
changed事件出口输出新算出的旋转列表。该旋转
[8]唐军芳,赵方.基于VRML的多媒体课件制作[J].浙
列表中的值经过路由传递到实体风车的叶,风车就
江树人大学学报,2006,6(1):13—16.
按该旋转列表所规定的方向进行转动。
4结论’
虚拟现实建模语言VRML的设计源于虚拟现
实技术。与其他在Web中实现虚拟现实环境的实
[9]洪炳熔,蔡则苏,唐好选.虚拟现实及其应用[M].北
京:国防工业出版社.2005.5.
。,
[10] 黄文丽,卢碧红,杨志刚.VRML语言入门与应用
[M].北京:中国铁道出版社,2003.11.
,…
(上接第102页)工作的各个环节、步骤,而且还应
务工作方面,都要努力做到人元我有,人有我优,人
掌握各门类档案、各种载体档案的管理方法,在务实
优我新,使档案工作常常变,时时新,这样才能使档
基础上促进创新,努力使专职档案人员成为一名掌
握科学的、先进的工作方法,一专多能的档案工作人
案工作立于不败之地。
参考文献:’r‘
才i..’
,、}
[1]周向群.档案工作在创新中发展.秘书工作,2002,
1综上所述,只有不断地创新,档案工作才能有高
(10).
度、有特色,档案事业才能真正实现可持续发展。因
[2]苟桂英,张建茹.创新是档案工作求发展的必由之路.
此,档案部门无论是在业务工作方面,还是在管理服
兰台世界,2007,(9).’,.+
˝
•
‰
˚