DEF cyl Transform {
children [
Shape {
appearance Appearance {
material Material {
diffuseColor 1 1 0
}
}
geometry Box {} \*由于圆柱体看不太清旋转,所以这里用立方体代替,如果需要,改变形状即可
}
]
}
DEF clock TimeSensor {
cycleInterval 5
enabled TRUE
loop TRUE
}
DEF czq OrientationInterpolator {
key [0,0.5,1]
keyValue [0 1 0 0, 0 1 0 3.1415926, 0 1 0 6.283,]
}
ROUTE clock.fraction_changed TO czq.set_fraction
ROUTE czq.value_changed TO cyl.rotation
VRML源程序文件主要由VRML文件头、造型、脚本以及路由等构成 。
VRML是虚拟现实造型语言(Virtual Reality Modeling Language) 的简称。
VRML (Virtual Reality Modeling Language)是在Internet上营造虚拟环境的技术。它在Web网上创建可导航的、超链接的三维虚拟现实空间。VRML的基本工作原理可概括为:文本描述、远程传输、本地计算生成。所谓文本描述指VRML并不是用三维坐标点的数据来描述三维物体的,因为这样会有很大的数据量,在Internet上传输会遇到很多困难,VRML用类似HTML标记文本语言来描述三维场景,就象我们的编程语言,比如,一个立方体的描述文本是:Box(size 3.0 3.0 3.0)。VRML就是一种描述语言标准,规定了用来描述三维场景的文本描述语言;远程传输是指用户浏览VRML描述的虚拟场景时,需要通过Internet将描述场景的文本传送到本地,一般来说,文本描述是嵌在WEB页面中,在浏览器请求相应页面时与页面描述文本一起传送本地;本地计算生成是指描述虚拟场景的数据传送到本地后,浏览器对它进行解释计算,动态地生成虚拟场景,比如,描述球形的文本,浏览器会在屏幕上绘制一个立体的球形。目前,主流的高版本的浏览器都集成了VRML解释器,但在一些低版本的浏览器中,要想浏览VRML场景,需要安装一个VRML解释器插件。
VRML文件主要包括四个主要成分:VRML文件头、原型、造型节点和脚本、路由。在这四个要素中,只有文件头部分是必须的,它用来告诉浏览器该文件符合的规范标准以及使用的字符集等信息。原型定义了创建了带有指定名称、接口和整体的新节点类型,一旦成功地定义了原型,它就可以在VRML文件的其他地方随意使用。造型节点是VRML中的基本建造模块,它构成了VRML文件的主体部分,正是由于造型节点定义而产生了虚拟的VRML空间。脚本可以看作是一个节点的外壳:它有域、eventIn事件、eventOut事件。其本身没有任何动作,然而你可以通过程序脚本来赋予你脚本节点的动作。这里的程序脚本是一种简化了的应用程序,一个典型的脚本是由Java或JavaScript编程语言写成的程序。路由是一种文本描述的消息,一旦在两个节点之间创建了一个路由,第一个节点可以顺着路由传递消息给第二个节点,这样的消息被称为事件。VRML还可以包含下列条目:注释、节点和域值、定义的节点名、使用的节点名等。
设计VRML虚拟场景时,最简单的方法是直接使用文本编辑器来编辑描述文本,它类似于程序设计,这种方法简单方便,但不是很直观,对设计者的空间想象能力要求也较高,设计的效率不高。现在有很多的可视化的VRML设计工具,如CosmoWorld和HomeSpace等,这些工具将VRML的标准节点都做成可视的组件,用户设计时,只需要将这些组件组全自己需要的虚拟场景就可以了,而且设计的效果在设计时就可以看到。设计完毕后,系统自动将这些可视的虚拟场景生成标准的VRML描述文本,这样,这些文本传送到用户的浏览器后,便会在用户的屏幕上重现这个虚拟场景。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)