首页 百科知识 的文件组成与事件运行方式

的文件组成与事件运行方式

时间:2022-10-05 百科知识 版权反馈
【摘要】:文件头的内容为“#VRML V2.0 utf8”,其中“#VRML V2.0”是VRML文件的版本标记,“utf8”表示此文件采用的是utf8编码方案。处理VRML文件时,浏览器根据文件的场景图在三维空间确定造型形体的大小、位置及其他属性,并将它们正确地显示在计算机屏幕上。其中的Script节点是VRML和其他高级语言与数据库的接口。节点是VRML文件最基本的组成要素,VRML通过节点描述对象某一方面的特征,比如形状、材质和颜色等。VRML的场景往往由一组具有一定层次结构的节点构成。

1. VRML的文件组成

一个VRML文件由几个主要功能部件组成:文件头(header)、场景图(Scene graph)、原型(Prototype)、事件的路由event routing及脚本等。其中,文件头是必需的。

(1)文件头

每一个VRML文件都必须有文件头,且写法统一,这是VRML的标志。文件头的内容为“#VRML V2.0 utf8”,其中“#VRML V2.0”是VRML文件的版本标记,“utf8”表示此文件采用的是utf8编码方案。

(2)场景图

场景图又称造型,是一种用来描述三维对象和世界的层次化的数据结构。VRML把一个“虚拟世界”看作一个场景,把场景中的一切看作对象(即节点),节点按照一定规则构成场景图。处理VRML文件时,浏览器根据文件的场景图在三维空间确定造型形体的大小、位置及其他属性,并将它们正确地显示在计算机屏幕上。

(3)原型

原型是用户自定义的一种新的节点类型。进行原型定义相当于扩充了VRML自带的标准节点类型集。原型的定义可以包含在使用该原型的文件中,也可以在外部进行。另外,原型可以根据其他的VRML节点来定义,也可以利用特定于浏览器的扩展机制来定义。尽管ISO/IEC 14772中有标准格式能辨认这种扩展,但它的实现仍然是依赖浏览器的。

(4)事件

事件是按照定义的路由,由一个节点发往另一个节点的消息。事件标志着外部刺激、域值变化或节点之间的交互。

(5)路由

路由不是节点,而是产生事件和接受事件的节点之间的连接通道。事件的路由ROUTE可以使VRML程序具有交互性。路由将一些节点产生的事件传给另外的节点,并引起其他节点的变化。事件一旦产生,就按事件顺序向路由的目标节点发送,并被接收节点处理,这种处理可以改变节点状态、产生其他时间或修改场景图结构。事件通过改变其某些域的属性值,使三维空间里的物体产生运动或特殊效果,即动画和交互,从而使得虚拟世界更具有真实感。

(6)脚本

脚本是一套程序。其中的Script节点是VRML和其他高级语言与数据库的接口。在Script节点中利用Java或Java Script语言编写脚本可以扩充VRML的功能。

2. VRML事件运行方式

VRML文件中最重要的两个基本要素是节点(Node)和域(Field)。节点是VRML文件最基本的组成要素,VRML通过节点描述对象某一方面的特征,比如形状、材质和颜色等。VRML的场景往往由一组具有一定层次结构的节点构成。

节点由节点名、节点类型、域、事件接口等部分组成。其中,域的取值决定了节点的取值,域值指明了节点所描述的对象的特征;事件则为节点提供了接收外界信息以及向外界发送信息的能力。事件其实就是各种信号,用于在节点之间产生交互的影响,它也是VRML实现用户交互以及场景动态变化的最主要内容。节点通过事件入口接收入事件(event In),通过事件出口发送出事件(event Out)。入事件要求节点改变自己某个域的取值,而出事件则要求节点改变其他节点的域值。

某个节点的事件出口和其他节点的事件入口之间用于传递事件的通道称为路由(Route),路由通过简单的语法结构,建立两个节点之间的时间传送途径。

通过节点、时间和路由,可以在创建三维模型的同时,为其添加某种变化的过程和规律,从而使建立的虚拟场景更接近于现实。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈