




已阅读5页,还剩48页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Ch2VRML基本知识,开发及运行VRML所需工具示例程序基本概念,VRML的运行环境,VRML对硬件与软件的环境要求都较低,一般计算机都可以运行,但配置较高时,运行速度较快。一般推荐配置为:(1)硬件环境:建议采用Pentium4以上的计算机,主频2G以上、内存128M以上、显存64M以上、硬盘10G以上。(2)软件环境:操作系统可采用Windows2000/XP/2003等,但要求安装VRML相关浏览插件。(3)网络环境:浏览VRML场景时可以采用拨号、宽带、无线等网络接入方式,网络浏览器可采用Windows操作系统自带的IE浏览器或Netscape浏览器。,开发及运行VRML所需工具,编辑工具:记事本或vrmlpad2.0浏览工具:安装浏览器插件:cortvrml安装过程中取默认值即可选软件加速,VRML场景的编辑与浏览,VRML程序是一种ASCII码的描述程序,可以使用计算机中任何一种具有文本编辑器的编辑器(如Windows中自带的记事本(NotePad)、写字板(WordPad)等)来编辑VRML源程序代码。但要求程序存盘时文件的扩展名必须是.wrl(world的缩写)或.wrz,否则VRML的浏览器将无法识别。在实际工作中,由于建造复杂场景时,VRML的建模语法繁琐、结构嵌套复杂,而且命令中的关键字都很长、用普通的文本编辑软件编辑不易输入和纠错。针对VRML的编程需求,为了提高编辑效率,我们常采用功能强大并且使用简便的开发设计软件VrmlPad。,VRML的编辑器,VrmlPad是由ParallelGraphics公司开发的基于文本式的、支持即时预览的VRML专用开发工具,另外还有如CosmoWorld、Internet3DSpaceBuilder等可视化场景创作工具。同时,主流的三维建摸软件如3DSmax、Maya、Blender等通过插件的方式都支持场景的VRML格式输出。VrmlPad最新版本是2.1,官方正式版为英文版。VrmlPad2.1具有VRML代码下载、编辑、预览、调试功能,是当今VRML源代码编辑的最强工具之一,如图所示。,VrmlPad编辑器的主界面,VrmlPad编辑器的主要功能有:,文件管理功能,(2)文件编辑功能,(3)具有预览功能,(4)方便快捷的材质编辑功能,(5)方便下载VRML资源,7.2.2VRML场景的浏览器,要在浏览器中观察VRML场景,需要安装VRML浏览器插件。下面的清单列出了目前常用的VRML/X3D浏览器插件。,BitManagementBSContactX3D/VRML97插件,支持InternetExplorer(Windows)OctagaX3D/VRML浏览器,支持InternetExplorer(Windows)CRCFreeWRLX3D/VRML浏览器,基于C语言开发,开源,支持MacOSX,Linux平台Xj3DforX3D/VRML97开源浏览器,是用于制定X3D规范的试验工具,2.0版本采用Java,其它浏览器:ParallelGraphicsCortona3DVRML97插件,支持Netscape与InternetExplorercortnaPlayerVersion4.2。blaxxunContactVRML97插件,支持NetscapeorInternetExplorerCosmoPlayerVRML插件,是对VRML97标准支持程度最高的一款浏览器,已停止开发,支持Firefox与InternetExplorerOpenVRML一个跨平台的VRML/X3D运行环境(MacOSX,Linux,FreeBSD),第二节示例程序P11,#VRMLV2.0utf8DEFqiutiTransformchildrenShapeappearanceAppearancematerialMaterialdiffuseColor011geometrySphereradius1.1DEFtimeTimeSensor#时间传感器cycleInterval2.0loopTRUEDEFbianhuaPositionInterpolator#移动位置节点key0.0,1.0#相对时间的逻辑值keyValue00-10#空间坐标的位置值与相对时间的逻辑值对应006ROUTEtime.fraction_changedTObianhua.set_fractionROUTEbianhua.value_changedTOqiuti.set_translation,第三节VRML2.0基本概念,VRML空间计量单位文件结构VRML的域VRML数据类型对象和事件路由,在构建虚拟场景中,构成场景的造型有大小的差别,物体间有相对位置的不同,并且造型还会有旋转、移动等运动。这就涉及到物体的空间坐标系、相应的长度、角度及颜色等。在VRML中,采用空间直角坐标系确定造型的位置,并且用特定的计量单位定量表示长度。,VRML的空间坐标与计量单位,VRML的空间坐标与计量单位(1)VRML空间坐标系在VRML场景中,空间直角坐标满足右手螺旋法则,就是说,右手四指从X方向转到Y方向,则拇指的指向是Z方向。在默认情况下,X坐标向右为正;Y坐标向上为正;而Z坐标指向观察者,如图所示。,长度及坐标的计量单位采用VRML单位计量,在三维空间中,它是统一的,简称为单位。需要注意的是,这里表示的单位和实际环境中的计量没有任何可比性,和一些三维建模软件如3DSMAX的计量单位也没有可比性。在VRML场景中,只有物体间的大小和相对位置都用VRML单位计量,才能模拟出真实的现实。,(2)VRML长度单位,(3)VRML角度单位在VRML中,使用的角度不是普通的角度,而是用弧度表示,这是浏览器接受的角度描述。当在VRML中使用角度单位中,要先将其换算成弧度后,再将其写入到VRML源程序中。VRML中的360角度等于2弧度,由此,1弧度约等于57。,(4)空间立体着色在VRML三维空间中,无论是背景、光线的颜色、物体,它们的颜色都是由红、绿、蓝(RGB)组合而成,它们分别对应3个浮点数,其域值为0.0-1.0之间,由这三原色组合成各种颜色。,VRML三维空间坐标系,VRML采用笛卡儿坐标系统,在空间的正中间定义了默认的原点,并以此基点建立了笛卡儿坐标系。空间的每一个点的位置用一组由三个实数构成的组表示,作为该点相对于原点的坐标。形式为(XYZ)。第一个数X为横坐标,表示对象在空间中的左右位置,第二个数Y为纵坐标,表示对象在空间中的上下位置,第三个数Z表示对象在空间中的远近位置。,VRML空间计量单位,长度单位VRML三维立体空间长度单位是统一的,只有一个单位标量,即VRML单位。VRML长度单位不是一个绝对尺寸的大小,即VRML尺寸与现实中的长度单位不具有可比性,只有在VRML单位之间才具有可比性。通常可理解为米角度单位弧度,空间背景结点,BackgroundskyAngle天空角1,天空角2,skyColor天空色0,天空色1,天空色2,groundAngle地面角1,地面角2,groundColor地面色0,地面色1,地面色2,,结点说明,天空色0为0度天空位置的颜色地面色0为0度地面位置的颜色天空色1,2,对应天空角1,2,地面色1,2,对应地面角1,2,系统自动过渡相邻位置的颜色角度的单位为弧度颜色由r、g、b分量合成颜色分量的数值范围:0.01.0,一些常用角度的弧度值(弧度=角度*/180),制作VRML网页bk.wrl。(空间背景),例题,参考源代码,#VRMLV2.0utf8GroupchildrenBackgroundskyAngle1.0471.570#60度,90度skyColor0.00.01.0,0.20.20.8,1.01.01.0groundAngle1.3961.570#80度,90度groundColor0.01.00.0,0.00.50.2,1.01.01.0,二、VRML的语法结构,VRML语法主要包括有文件头、节点、原型、脚本和路由等。当然并不是所有的文件都必须是这六个部分,只有文件头是必须的。VRML的立体场景与造型由节点构成,再通过路由实现动态的交互与感知,或是使用脚本文件或外部接口进行动态交互。在VRML文件中,节点是核心,没有节点,VRML也就没有意义了。VRML场景可以由一个或多个节点组成,VRML中还可以通过原型节点创建新的节点。,一个较为通用的VRML文件语法结构:,#VRMLV2.0utf8#VRML文件的第一行必须有这一行,这是VRML文件标志节点名#VRML的的各种“节点”域域值#对应“节点”的“域”与“域值”Script#脚本Script节点ROUTE#路由:把入事件与出事件相关联在这个VRML文件结构中,包括有以下几个内容。它是一个很典型的VRML文件。它表达了下述几个方面的含义:,1、文件头VRML文件中的第一行#VRMLV2.0utf8,这是VRML文件头,任何VRML文件都必须有这样的文件头,并且必须放在第一行,它表述了以下三个含义:(1)#这个#不是注释,而是VRML文件的一个部分;(2)VRML表示告诉浏览器,这是个vrml文件;(3)V2.0表示告诉浏览器,这个文件使用vrml2.0版的规范完成;(4)utf8表示文件是使用国际UTF-8的字符集。,2.文件结构,#VRMLV2.0utf8节点名#各种类型的节点域域值相应节点的域和域值.Script#脚本Script节点ROUTE路由,实现动态效果,2.文件结构,由文件头、造型、原型、事件和路由五部分组成文件头:VRMLV2.0utf8表示之后是注解;在它之后的每一个字都会被忽略,一直到换行符。造型:物体的造型即场景图,场景图由描对象及其属性的节点组成。,专用名词,节点域,节点(Node)是VRML文档基本的组成单元,它描述对象某一方面的特征:如形状、材质等。VRML虚拟世界的对象往往由一组具有一定层次结构关系的节点来构造。节点具有节点名、节点类型、域、事件接口和实现五个组成部分。节点可以用DEF语句命名,用USE语句引用。,节点,节点是VRML最基本的单位,是VRML的精髓和核心。节点用来完成某个功能,节点是实现功能的最小单位和场景图的基本组件。节点是现实世界中各种事务、对象、概念的抽象描述。VRML文件就是若干表现功能各异的节点层层嵌套构成节点包括域和事件。,节点格式,节点名#各种类型的节点域名域值域值类型说明.如:geometrySphereradius1.5,域,域定义了节点的各个属性,每个域都代表了不同的属性类似于高级语言中的“变量”或“数组”域的类型1)普通域(field)2)公共域(exposedField)除脚本节点外,其余节点内的每个域的类型是预定的。域名:节点内域名是唯一的,是VRML中的关键字域值:域的取值,和VRML的数据类型有关。除脚本节点外,其余节点内的每个域有自己的默认值。,同一个节点中的域的特点,无序性可选性(有默认值)域名的唯一性具有不同的类型,例,#VRMLV2.0utf8ShapeappearanceAppearancematerialMaterialdiffuseColor100geometrySphereradius1.5,VRML的数据类型(域的类型),单值类型:以“SF”开始,只包含单值。单值:一个独立的数,一个向量、颜色的几个数多值类型以“MF”开始,包含多个值用方括号括起来的一系列用逗号和空格隔开的单值,域的类型,SFBoolSFFloat和MFFloatSFInt和MFIntSFVec2f和MFVec2fSFVec3f和MFVec3fSFColor和MFColorSFRotation和MFRotation,对象和事件,对象:具有属性(如高度、宽度、颜色等)、行为动作的实体或模型。VRML中的节点就是对象。例题2-1中的qiuti、time、bianhua等。对象具有收发信息的功能。通过事件完成。,事件(Event),在VRML中,“事件”是操作者、节点、系统本身、程序代码产生的行为动作。如:鼠标点击、实践传感器的时间到等。,事件(Event),在VRML中,每一个节点一般都有两种事件,“入事件”(eventIn)和“出事件”(eventOut),每个节点通过这些“入事件”和“出事件”来改变节点自己的域值。如节点的颜色可以改变,可以表示为接收了这样一种事件:set_color。当节点被改变了,会对改变的状态有所反应,送出一些事件,比如发出信号,颜色改变了:Color_changed。,事件(Event),事件相当于高级程序语言中的函数调用。其中,“入事件”相当于函数调用的入口参数,而“出事件”相当于函数调用时返回的参数。在VRML中的每一个节点内部有些域被定义为“暴露域”,即指它能够接收事件,也能输出事件。事件的调用是临时的,事件的值不会被写入VRML中。事件的命名规律:“入事件”以set_开头,“出事件”以_changed结尾。,事件的引用,对象本身的引用直接使用对象名称;对象的事件、属性、方法引用使用“.”操作符,如:对象名.事件名对象名.属性名对象名.方法名MFNode类型的节点,对象引用涉及数组。P18例题。,路由,路由的功能是连接一个节点的“入事
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年绿色低碳出租车租赁与维护一体化服务合同
- 2025年绿色能源运输与维护服务合同范本
- 2025年健康体检中心会员服务及增值服务协议书
- 2025年LED全彩广告屏创意设计、制作与投放一体化合同
- 2025年校园网络布线与升级改造工程合同范本
- 2025宜宾市商业门面与仓储租赁一体化项目合同
- 2025年文化产业金融支持政策解析与融资创新模式研究报告
- 2025年智慧港口自动化装卸设备与人工智能融合发展趋势报告
- 2025年空气采样试题及答案
- 2025南京房屋租赁合同
- 子宫多发性平滑肌瘤的个案护理
- 要素式强制执行申请书(申请执行用)
- 慢性根尖周炎病例汇报
- 2025年秋数学(新)人教版三年级上课件:第1课时 几分之一
- 公司项目谋划管理办法
- 2025年职业指导师考试试卷:职业指导师专业能力
- 小学英语人教版四年级下册 巩固强化练(含答案)
- 2025-2026学年粤教粤科版(2024)小学科学二年级上册(全册)教学设计(附目录)
- 2025年山东高考历史试卷真题讲评及备考策略指导(课件)
- 供养中心考试题及答案
- 2025年云南省中考英语试卷真题(含标准答案及解析)
评论
0/150
提交评论