vrml的基本知识

上传人:san****019 文档编号:70810551 上传时间:2019-01-18 格式:PPT 页数:57 大小:639.01KB
返回 下载 相关 举报
vrml的基本知识_第1页
第1页 / 共57页
vrml的基本知识_第2页
第2页 / 共57页
vrml的基本知识_第3页
第3页 / 共57页
vrml的基本知识_第4页
第4页 / 共57页
vrml的基本知识_第5页
第5页 / 共57页
点击查看更多>>
资源描述

《vrml的基本知识》由会员分享,可在线阅读,更多相关《vrml的基本知识(57页珍藏版)》请在金锄头文库上搜索。

1、Ch2 VRML基本知识,开发及运行VRML所需工具 示例程序 基本概念,VRML的运行环境,VRML对硬件与软件的环境要求都较低,一般计算机都可以运行,配置较高,运行速度较快。一般推荐配置为: (1)硬件环境:建议采用Pentium 4以上的计算机,主频2G以上、内存128M以上、显存64M以上、硬盘10G以上。 (2)软件环境:操作系统可采用Windows2000/XP/2003等,安装VRML相关浏览插件。 (3)网络环境:浏览VRML场景时可以采用拨号、宽带、无线等网络接入方式,网络浏览器可采用IE浏览器或Netscape浏览器。,开发及运行VRML所需工具,编辑工具: 一般的文本编辑

2、器如记事本NotePad或写字板WordPad,编辑VRML源程序代码。程序存盘时文件的扩展名必须是.wrl(world的缩写)或.wrz vrmlpad2.0 浏览工具: 安装浏览器插件: cortonaPlayer Version 4.2 安装过程中取默认值即可,VRML的编辑器,VrmlPad是由Parallel Graphics 公司开发的基于文本式的、支持即时预览的VRML专用开发工具,另外还有如Cosmo World、Internet3D Space Builder等可视化场景创作工具。 主流的三维建摸软件如3DSmax、Maya、Blender等通过插件的方式都支持场景的VRML

3、格式输出。文件/导出,选择wrl格式即可. VrmlPad常用版本是2.0.,VrmlPad编辑器的主界面,VrmlPad编辑器的主要功能有:, 文件管理功能,(2)文件编辑功能,(3) 具有预览功能,(4) 方便快捷的材质编辑功能,(5) 方便下载VRML资源,7.2.2 VRML场景的浏览器,要在浏览器中观察VRML场景,需要安装VRML浏览器插件。下面的清单列出了目前常用的VRML/X3D浏览器插件。,BitManagement BS Contact X3D/VRML97插件,支持Internet Explorer(Windows) Octaga X3D/VRML浏览器,支持Intern

4、et Explorer(Windows) CRC FreeWRL X3D/VRML浏览器,基于C语言开发,开源,支持MacOSX, Linux平台 Xj3D for X3D/VRML97 开源浏览器,是用于制定X3D规范的试验工具,2.0版本采用Java,其它浏览器: Parallel Graphics Cortona3D VRML97 插件,支持Netscape与Internet Explorer cortnaPlayer Version 4.2 。 blaxxun Contact VRML97 插件,支持Netscape or Internet Explorer Cosmo Player

5、VRML 插件,是对VRML97标准支持程度最高的一款浏览器,已停止开发,支持 Firefox 与 Internet Explorer OpenVRML 一个跨平台的VRML/ X3D运行环境(MacOSX, Linux, FreeBSD),第二节 示例程序P11,#VRML V2.0 utf8 DEF qiuti Transform children Shape appearance Appearance material Material diffuseColor 0 1 1 geometry Sphere radius 1.1 DEF time TimeSensor #时间传感器 cyc

6、leInterval 2.0 loop TRUE DEF bianhua PositionInterpolator #移动位置节点 key 0.0,1.0 #相对时间的逻辑值 keyValue 0 0 -10 #空间坐标的位置值与相对时间的逻辑值对应 0 0 6 ROUTE time.fraction_changed TO bianhua.set_fraction ROUTE bianhua.value_changed TO qiuti.set_translation,第三节 VRML 2.0基本概念,VRML空间计量单位 文件结构 VRML的域 VRML数据类型 对象和事件 路由,在构建虚拟

7、场景时,构成场景的造型有大小差别,物体间有相对位置的不同,并且造型还有旋转、移动等运动。这就涉及到物体的空间坐标系、相应的长度、角度及颜色等。 在VRML中,采用空间直角坐标系确定造型的位置,并且用特定的计量单位定量表示长度。,VRML的空间坐标与计量单位,VRML的空间坐标与计量单位 (1)VRML空间坐标系 在VRML场景中,空间直角坐标满足右手螺旋法则,就是说,右手四指从X方向转到Y方向,则拇指的指向是Z方向。 在默认情况下, X坐标向右为正;Y坐标向上为正;而Z坐标指向观察者,如图所示。,VRML三维空间坐标系,VRML采用笛卡儿坐标系统,在空间的正中间定义了默认的原点,并以此基点建立

8、了笛卡儿坐标系。 空间的每一个点的位置用一组由三个实数构成的组表示,作为该点相对于原点的坐标。形式为(X Y Z)。 第一个数X为横坐标,表示对象在空间中的左右位置, 第二个数Y为纵坐标,表示对象在空间中的上下位置, 第三个数Z表示对象在空间中的远近位置。,长度及坐标的计量单位是一个VRML单位,在三维空间中,它是统一的,实际应用时由开发者统一协调. 需要注意的是,这里表示的单位和实际环境中的计量没有任何可比性,和一些三维建模软件如3DSMAX的计量单位也没有可比性。,(2)VRML长度单位,(3)VRML角度单位 在VRML中,使用的角度不是普通的角度,而是用弧度表示,这是浏览器接受的角度描

9、述。 当换算成弧度后,再将其写入到VRML源程序中。 VRML中的360角度等于2弧度,由此,1弧度约等于57。,一些常用角度的弧度值(弧度=角度*/180),(4)空间立体着色 在VRML三维空间中,无论是背景、光线的颜色、物体,它们的颜色都是由红、绿、蓝(RGB)组合而成, 对应3个浮点数,其域值为0.0-1.0之间,由这三原色组合成各种颜色。 常用颜色组合P13,空间背景结点,Background skyAngle 天空角1,天空角2, skyColor 天空色0,天空色1,天空色2, groundAngle 地面角1,地面角2, groundColor 地面色0,地面色1,地面色2,

10、,结点说明,天空色0为0度天空位置的颜色 地面色0为0度地面位置的颜色 天空色1,2,对应天空角1,2, 地面色1,2,对应地面角1,2, 系统自动过渡相邻位置的颜色 角度的单位为弧度 颜色由r、g、b分量合成 颜色分量的数值范围:0.01.0,制作VRML网页bk.wrl。(空间背景),例 题,参考源代码,#VRML V2.0 utf8 Group children Background skyAngle 1.047 1.570 # 60度 , 90度 skyColor 0.0 0.0 1.0 , 0.2 0.2 0.8 , 1.0 1.0 1.0 groundAngle 1.396 1.5

11、70 #80度 ,90度 groundColor 0.0 1.0 0.0 , 0.0 0.5 0.2 , 1.0 1.0 1.0 ,二、VRML的语法结构,VRML语法主要包括有文件头、节点、原型、脚本和路由等。只有文件头是必须的。 在VRML文件中,节点是核心,没有节点,VRML也就没有意义了。VRML场景可以由一个或多个节点组成,VRML中还可以通过原型节点创建新的节点。 节点之间过路由实现动态的交互与感知,或是使用脚本文件或外部接口进行动态交互。,通用的VRML文件语法结构:,#VRML V2.0 utf8 #VRML文件的第一行必须有这一 行,这是VRML文件标志 节点名 #VRML的

12、的各种“节点” 域 域值 #对应“节点”的“域”与“域值” Script #脚本Script节点 ROUTE #路由:把入事件与出事件相关联 在这个VRML文件结构中,包括有以下几个内容。它是一个很典型的VRML文件。它表达了下述几个方面的含义:,1.文件头 VRML文件中的第一行#VRML V2.0 utf8,这是VRML文件头,任何VRML文件都必须有这样的文件头,并且必须放在第一行. (1)# ,这个#不是注释,而是VRML文件的一个部分; (2)VRML表示告诉浏览器,这是个vrml文件; (3)V2.0表示告诉浏览器,这个文件使用vrml2.0版的规范完成; (4)utf8表示文件是

13、使用国际UTF-8的字符集。,专用名词,节点 域,节点(Node) 是VRML文档基本的组成单元,是VRML的精髓和核心。它描述对象某一方面的特征:如形状、材质等。 VRML文件就是若干表现功能各异的节点层层嵌套构成. 节点具有节点名、节点类型、域、事件接口和实现五个组成部分。 节点可以用DEF语句命名,用USE语句引用。,节点格式,节点名 #各种类型的节点 域名 域 值 域值类型说明 . . . . . . 如: geometry Sphere radius 1.5 ,域,域定义了节点的各个属性,每个域都代表了不同的属性 类似于高级语言中的“变量”或“数组” 域的类型 1)普通域(field

14、) 2)公共域(exposedField) 除脚本节点外,其余节点内的每个域的类型是预定的。 域名:节点内域名是唯一的,是VRML中的关键字 域值:域的取值,和VRML的数据类型有关。除脚本节点外,其余节点内的每个域有自己的默认值。,同一个节点中的域的特点,无序性 可选性(有默认值) 域名的唯一性 具有不同的类型,例,#VRML V2.0 utf8 Shape appearance Appearance material Material diffuseColor 1 0 0 geometry Sphere radius 1.5 ,单值类型: 以“SF”开始,只包含单值。 单值:一个独立的数,

15、或表示向量、颜色或旋转的视为一组的数. 多值类型 以“MF”开始,多个单独的数或多组 用方括号括起来的一系列用逗号和空格隔开的单值,VRML的数据类型(域的类型),SFBool SFFloat 和MFFloat SFInt 和MFInt SFVec2f 和MFVec2f SFVec3f 和MFVec3f SFString和MFString SFTime和MFTime SFColor和MFColor SFRotation和MFRotation,VRML的数据类型(域的类型),SFBool 单值布尔型,只有两个值:TRUE/FALSE TRUE(真)/FALSE(假) 不能用1 和0表示,SFFloat 和MFFloat SFFloat:单精度浮点数,如1.5 MFFloat:多个单精度浮点数,空格或逗号分割.如:0.1 0.5,如: field MFFloat abc 0.0 1.0 定义一个普通域, MFFloat类型,域名abc 可以以数组格式引用 abc0, abc1,SFString和MFString SFString字符串,用双引号括起来. “How Are You!” 字符串中有

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号