收藏 分销(赏)

虚拟现实及其应用总复习.pptx

上传人:a199****6536 文档编号:10265266 上传时间:2025-05-07 格式:PPTX 页数:116 大小:621.63KB
下载 相关 举报
虚拟现实及其应用总复习.pptx_第1页
第1页 / 共116页
虚拟现实及其应用总复习.pptx_第2页
第2页 / 共116页
点击查看更多>>
资源描述
Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,虚拟现实技术,虚拟现实中,“,现实,”,是泛指在物理意义上或功效意义上存在于世界上任何事物或环境,它能够是实际上可实现,也能够是实际上难以实现或根本无法实现。而,“,虚拟,”,是指用计算机生成意思。所以,虚拟现实是指用计算机生成一个特殊环境,人能够经过使用各种特殊装置将自己,“,投射,”,到这个环境中,并操 作、控制环境,实现特殊目标,即人是这种环境主宰。,虚拟现实技术(,Virtual Reality,)简称,VR,技术,是,20,世纪末逐步兴起一门综合性信息技术,融合了数字图像处理、计算机图形学、人工智能、多媒体、传感器、网络以及并行处理等多个信息技术分支最新发展结果。,虚拟现实是人们经过计算机对复杂数据进行可视化、操作以及实时交互环境。与传统计算机人,机界面(如,键盘,、,鼠标,器、图形 用户界面以及流行,Windows,等)相比,虚拟现实不论在技术上还是思想上都有质飞跃。传统人,机界面将用户和计算机视为两个独立实体,而将界面视为信息交换,媒介,,由用户把要求或指令输入计算机,计算机对信息或受控对象作出动作反馈。虚拟现实则将用户和计算机视为一个整体,经过各种直观工具将信息进行可视化,形成一个逼真环境,用户直接置身于这种三维,信息空间,中自由地使用各种信息,并由此控制计算机。,虚拟现实及其应用总复习,第1页,1.1,虚拟现实技术发展史,1929,年,,Edward Link,设计出用于训练飞行员模拟器,使乘坐者感觉和坐在真飞机上是一样。,1956,年,,Morton Heilig,开发出,摩托车仿真器,Sensorama,,,Sensorama,含有三维显示及立体声效果,并能产生振动和风吹感觉。,1968,年,,Ivan Sutherland,研制成功了带跟踪器头盔式立体显示器(,Head Mounted Display,,,HMD,),1972,年,,Nolan Bushnell,(,Ivan Sutherland,学生)开发出第一个交互式电子游戏,Pong,,在一台机器上模拟乒乓球,,,1977,年,,Dan Sandin、Tom DeFanti和Rich Sayre研制出第一个数据手套,Sayre Glove,20,世纪,80,年代,美国国家航空航天局(,NASA,)组织了一系列相关,VR,技术研究:,1984,年,,NASA Ames,研究中心,M.McGreevy,和,J.Humphries,开发出用于火星探测虚拟环境视觉显示器;,1987,年,,Jim Humphries,设计了双目全方位监视器(,BOOM,)最早原型。,虚拟现实及其应用总复习,第2页,1965,年,,Ivan Sutherland,发表论文,“,Ultimate Display,”,(终极显示),1965,年,,Ivan Sutherland,在篇名为,The Ultimate Display,(终极显示)论文中首次提出了包含含有交互图形显示、力反馈设备以及声音提醒虚拟现实系统基本思想,从此,人们正式开始了对虚拟现实系统研究探索历程,.,1966,年,美国,MIT,林肯试验室在海军科研办公室资助下,研制出了第一个头盔式显示器,(HMD),,随即又将模拟力和触觉反馈装置加入到系统中,.,1967,年,美国北卡罗来纳大学开始了,Grup,计划,研究探讨力反馈,(Force Feedback),装置。该装置能够将物理压力经过用户接口引向用户,能够使人感到一个计算机仿真力。,1990,年,在美国达拉斯召开,Siggraph,会议上,明确提出,VR,技术研究主要内容包含实时三维图形生成技术、多传感器交互技术和高分辨率显示技术,为,VR,技术发展确定了研究方向。,从,20,世纪,90,年代开始,,VR,技术研究热潮也开始向民间高科技企业转移。著名,VPL,企业(发出第一套传感手套命名为,“,DataGloves,”,,第一套,HMD,命名为,“,EyePhones,”,。,20,世纪,90,年代,快速发展计算机软件、硬件系统使得基于大型数据集合声音和图像实时动画制作成为可能,越来越多新奇、实用输入输出设备相继进入市场,而人机交互系统设计也在不停创新,这些都为虚拟现实系统发展打下了良好基础。其中,利用虚拟现实技术设计波音,777,取得成功,是近几年来又一件引发科技界瞩目标伟大结果。,虚拟现实及其应用总复习,第3页,1.2,虚拟现实技术概念,1,、虚拟现实技术是指利用计算机生成一个模拟环境,并经过各种专用设备使用户,“,投入,”,到该环境中,实现用户与该环境直接进行自然交互技术。,VR,让用户使用人自然技能对虚拟世界中物体进行操作,并能提供视觉 听觉 触觉 等直观自然实时感知。,2,、一个完整,虚拟现实系统,由虚拟环境、以高性能计算机为关键虚拟环境处理器、以,头盔显示器,为关键视觉系统、以语音识别、声音合成与声音定位为关键听觉系统、以方位跟踪器、,数据手套,和数据衣为主体身体方位姿态跟踪设备,以及味觉、嗅觉、触觉与力觉反馈系统等功效单元组成。,3,、,BOOM,可移动式显示器:,它是一个半投入式视觉显示设备。使用时,用户能够把显示器方便地置于眼前,不用时能够很快移开。,BOOM,使用小型阴极射线管,产生像素数远远小于液晶显示器,图像比较柔和,分辨率为,12801024,像素,彩色图像。,TELETACT,手套,它是一个用于触觉和力觉反馈装置,利用小气袋向手提供触觉和力觉刺激。这些小气袋能被快速地加压和减压。当虚拟手接触一件虚拟物体时,存放在计算机里该物体力模式被调用,压缩机快速对气袋充气或放气,使手部有一个非常准确触觉。,数据衣,为了让,VR,系统识别全身运动而设计输入装置。数据衣对人体大约,50,多个不一样关节进行测量,包含膝盖、手臂、躯干和脚。经过光电转换,身体运动信息被计算机识别。经过,BOOM,显示器和数据手套与虚拟现实交互数据衣,虚拟现实及其应用总复习,第4页,1.3,虚拟现实技术特征,VR,技术三角形,交互性(,Interactivity,),指用户对虚拟环境中对象可操作程度和从虚拟环境中得到反馈自然程度(包含实时性)。,主要借助于各种专用设备(如头盔显示器、数据手套等)产生,从而使用户以自然方式如手势、体势、语言等技能,如同在真实世界中一样操作虚拟环境中对象。,沉醉感(,Immersion,),又称临场感,是指用户感到作为主角存在于虚拟环境中真实程度。,VR,技术最主要特征。,VR,“,沉醉感,”,特征使它与普通交互式三维图形有较大不一样:用户能够沉醉于数据空间,能够从数据空间向外观察,从而能够使用户能以更自然、更直接方式与 数据交互。利用沉醉功效,使用户暂时与现实隔离,投入到虚拟环境中去,从而能更真实地注视数据。,VR,界面也能够给技术人员及创作人员提供真实数据,方便正 确创建虚拟环境,这么有利于用户更加快、更全方面地分析了解数据。所以,,VR,技术将从根本上改变人与计算机系统交互操作方式。,想象力(,Imagination,),指用户在虚拟世界中依据所获取各种信息和本身在系统中行为,经过逻辑判断、推理和联想等思维过程,伴随系统运行状态改变而对其未来进展进行想象能力,随意构想客观不存在或不可能发生环境。,对适当应用对象加上虚拟现实创意和想象力,能够大幅度提升生产效率、减轻劳动强度、提升产品开发质量。,虚拟现实及其应用总复习,第5页,1.4,虚拟现实系统分类,1.4.1,桌面式,VR,系统,使用个人计算机和低级工作站来产生三维空间交互场景。,用户会受到周围现实环境干扰而不能取得完全沉醉感,但因为其成本相对较低,桌面式,VR,系统依然比较普及,与普通用户接过。,最大优点:廉价,。,1.4.2,沉醉式,VR,系统,利用头盔显示器、洞穴式显示设备和数据手套等交互设备把用户视觉、听觉和其它感觉封闭起来,而使用户真正成为,VR,系统内部一个参加者,产生一个身临其境、全心投入并沉醉其中体验。系统中有个用户替身。用户在系统外面,用户与替身在感觉上有一个距离,这个距离越小。沉醉感超强,当用户与替身完全重合是。用户就完全进入到系统中了,与桌面式,VR,系统相比,沉醉式,VR,系统主要特点在于高度实时性和沉醉感。,1.4.3,增强式,VR,系统,允许用户对现实世界进行观察同时,将虚拟图像叠加在真实物理对象之上。,为用户提供与所看到真实环境相关、存放在计算机中信息,从而增强用户对真实环境感受,又被称为叠加式或补充现实式,VR,系统。,能够使用光学技术或视频技术实现。,1.4.4,分布式,VR,系统,指基于网络构建虚拟环境,将位于不一样物理位置多个用户或多个虚拟环境经过网络相连接并共享信息,从而使用户协同工作到达一个更高境界。,主要被应用于远程虚拟会议、虚拟医学会诊、多人网络游戏、虚拟战争演练等领域。,虚拟现实及其应用总复习,第6页,第二章,VRML,基础知识,2-1,什么是,VRML,VRML,(,Virtual Reality Modeling Language,),即虚拟现实建模语言。是一个用于建立真实世界场景模型或人们虚构三维世界场景建模语言,也含有平台无关性。是当前,Internet,上基于,WWW,三维互动网站制作主流语言。,2-2 vrml,发展历史,1993.12,Parisi,和,Pesce,开始开发第一个,VRML,测览器,;1994.03,首届,WWW,大会在日内瓦召开,提出,VRML;1994.06,开始,VRML,邮件列表,;1994.10,产生了基于,SGI,Open Inventor,文件格式,VRMLl,0,第一稿,;1996.03,VRML,结构组经过,Moving World,,并就,VRML2,0,标准进行投票,;1996.08,经过,VRML2,0,标准。,1998,年,12 vrml,组织,-web3d vrml+java+xml-x3d,2.3 VRML,工作原理,Vrml,设计是从,WEB,上观赏实时,3D,图象开始,,VRML,能够是一个浏览器插件,也是一个独立应用程序,它与传统虚拟现实中使用一样,3D,着色引擎,使它从三维建模和动画分离出来,三维建模与动画应用中能够预先对场景着色。不过不能选择方向。而,VRML,提供,6+1,个自由度。能够三个方向移动 也能够转动,还能够与其它,3D,超链接。,VRML,定义一个把,3D,图形与多媒体集成一起文件格式。从语法角度看。,VRML,定式定义组织,3D,多媒体对象。又语义看:,VRML,描述基于时间交互式,3D,多媒体信息抽象功效行为。这个,3D,空间就称为虚拟境界。,虚拟现实及其应用总复习,第7页,VRML,使用场景图来建立,3D,境界,它是一个代表全部,3d,世界静态特征节点等级:几何关系 材质 纹理 转换 光线 视点等,几乎全部,3D,厂家 不论,CAD,动画 建模,VR,,它们关键都有场景图。,VRML,中对象属性用节点来描述。节点按一定规则组成场景图。场景图有二类节点:一是用于视觉与听觉角度表现对象,反应空间结构,另一类对于事件和路由。确定虚拟世界随时间动态改变。,对三维虚拟世界描述,建模 渲染 交互 动画 细节及碰撞 超链接,-4 VRML,浏览器,Cortona3d,CosmoPlayer,Bitmanagment,VRML,工具,VRMLPAD,虚拟现实及其应用总复习,第8页,VRML,文件,VRML,文件主要包含,VRML,文件头,造型,事件,路由,事件体系,脚本,原型等体系元素。,1.VRML,文件类型,.VRML,文件是由通用文本编辑系统或专用,VRML,开发工具编辑,ASCII,文件格式场景描述性语言,其文件类型扩展名为,.wrl,或,.wrz,普通使用,.wrl,文件扩展名。,2.VRML,文件头,#VRML V2.0 utf8,VRML,文件头由四部分组成,各部分意义说明以下,:,1)VRML,文件头由,“,#,”,字符起始,“,#,”,字符说明后为一个文本型说明字符串,.,(2)VRML,文件头第二部分是,“,VRML,”,字符串,该字符串提醒浏览器该文件是一个,VRML,文件,.,(3)VRML,文件头第三部分是,“,V2.0,”,字符串,该字符串提醒浏览器该,VRML,文件遵照,VRML,规范,2.0,版本,.,(4)VRML,文件头第四部分是,“,utf8,”,字符串,该字符串提醒浏览器该,VRML,文件是一个使用国际标准,UTF-8,字符集文件,.,UTF-8,英文全称是,UCS Transform Format,而,UCS,是,Universal Character Set,缩写,.,虚拟现实及其应用总复习,第9页,VRML,节点,。每个,VRML,文件都是一个基于时间三维空间表示,它包含了可经过各种机制动态改变由视、听和对象组成虚拟环境。,VRML,节点名称,DEF,节点名称节点,经过,VRML,建模虚拟环境专业上又称之为,场景图,。场景图由一系列无序节点组成,节点则用以描述环境中对象及其属性。,VRML,造型,VRML,中场景由造型组成,而造型则由节点,(Node).,在最高抽象层,VRML,定义了一组节点机制用于三维场景制作,再由浏览器进行实时渲染,.,VRML,中全部节点都能够有零个或多个域,(Field).,每个域取域值,不一样域对应不一样域值类型,.,VRML,定义了,20,种基本数据类型,也分为两类,:,以,SF,开头是单值类型,该类型只有一个单一数或数组,;,以,MF,开头是多值类型,该类型指定一个数或数组列表,SFBool,SFColor,MFColor,SFFloat,MFFloat,SFImage,SFInt32,MFInt32,SFNode,MFNode,SFRotation,MFRotation,SFString,MFString,SFTime,MFTime,SFVec2f,MFVec2f,SFVec3f,MFVec3f.,VRML,事件、路由、事件,体系,.,节点除含有域属性外,还含有事件,(event),属性。,事件是,VRML,实现用户交互与场景动态改变最主要内容。事件为节点提供了接收外界信息以及外界发送信息能力。节点经过事件入口接收入事件,经过事件出口发送出事件。入事件要求节点改变自己某个域取值,而出事件则要求改变其它节点域值。,VRML,对节点说明中经常包含标有,”,exposedField,”,公共域,该类型域隐含着与下面两种系统缺省定义事件相关。,路由为创作者提供了一个独立于场景层次体系系统机制,经过这种机制,事件得以蔓延传输从而引发其它节点改变。,虚拟现实及其应用总复习,第10页,VRML,脚本,为使,VRML,含有更强人机交互能力和可控性,能够在事件发生器与事件接收器之间插入脚本,(Script),节点。脚本节点实际上是一个外壳,它包含一组利用脚本描述语言,如,Java,,,JavaScript,编写函数或方法。,VRML,原型,用户能够经过,VRML,原型机制扩充,VRML,标准节点类型集。原型节点定义应对其中需要使用域、入事件和出事件分别加以说明,原型定义既能够在引用该原型文件中进行,也能够在外部文件中定义而后在其它场景文件中引用。,程序注释为,VRML,文件添加注释要求以,”#”,字符开头,并结束于该行,末尾。,VRML,空间,VRML,场景建设默认情况下使用,VRML,系统缺省空间坐标系,用户也能够使用,Transform,节点对缺省空间进行变换,以形成相对于父坐标系子坐标系。,1.VRML,空间坐标系。,VRML,系统默认坐标系为一个立体三维空间坐标系。该坐标系原点位于,VRML,平面浏览器中心位置,,X,轴正向由原点指向屏幕右侧,,Y,轴正向由原点指向屏幕上方,,Z,轴正向由原点垂直指向用户。,2.VRML,空间计量单位。,VRML,造型大小、方位均使用,VRML,空间计量单位。空间计量单位又分为长度计量单位和角度计量单位两种。,长度计量单位也之为,VRML,单位,用来度量造型空间位置及大小尺寸。,角度单位用以计量,VRML,空间变换坐标系旋转角度。,VRML,角度使用常规弧度计量单位百分比。,虚拟现实及其应用总复习,第11页,SFImage,一个,SFImage,域含有非压缩二维彩色图像或灰度图像。一个,SFImage,域,首先列出三个整数值,前两个表示图片宽度和高度,第三个整数表 示组成图像格式元素个数(,1-4,),随即,按(宽度高度)格式列出一组,16,进制数,数与数之间以空格分隔,每一个,16,进制数表示图像中一个单独 像素。图像格式元素个数表示这张图像是灰度图还是彩色图,以及是否包含透明像素或半透明像素。单元素图像中每一个像素用一个,16,进制字节表示,所表 示是一个像素亮度。比如:,0XFF,表示最高亮度(白色),而,0X00,表示最低亮度(黑色)。双元素图像用两个字节表示一个像素。第一个字节表示亮度,第二个字节表示透明度。表示透明度时,字节为,0 xFF,表示完全透明,而,0 x00,表示不透明。所以,0 x40C0,表示,1/4,亮度(暗灰)和,3/4,透明度。三元 素图像每个像素有三个字节表示,每个字节表示像素颜色中红绿蓝分量(所以,0 xFF0000,表示红色)。四元素图像是在红绿蓝三色值之外再加一个表示透 明度字节(所以,0 x0000FF80,表示办透明蓝色)。和双元素图像一样,透明度字节为,0 xFF,表示完全透明,而,0 x00,表示完全不透明。为了提升可 读性,最好把全部,16,进制字节都写全,包含前导,0,。然而,写出每个字节有时是无须要。比如能够把一个三元素图像蓝色像速写成,0 xFF,而不是,0 x0000FF,。像素排列要求从左到右、从底到顶次序。第一个,16,进制数描述一个图像最左下角像素,最终一个则描述右上角像素。例:,1 2 1 0XFF 0X00,一个像素宽,两个像素高灰度图像,底部像素是白,顶部像素是黑。,2 4 3 0XFF0000 0X00FF00 0 0 0 0 0XFFFFFF 0XFFFF00,两个像素宽,四个像素高,RBG,图像,左下角像素是红色,右下角像素是绿色,中间两行是黑色,左上角像素是白色,右上角像素是黄色。,在任何脚本节点或原型内都能够使用这种类型域,不过,使用详细地点只能在,PiexlTexture,(像素纹理)节点。,SFImage,域输出事件初始值为(,0,,,0,,,0,)。,虚拟现实及其应用总复习,第12页,域值类型,SFBool,一个,SFBool,域只含有一个,Bool,值。,TRUE,和,FALSE,(不带引号也不带任何标点符号)是,SFBool,域仅有两个有效值。,SFBool,输出事件初始值是,FALSE,。注意:普通程序设计重用和表示,True,和,False,值,在,VRML,中不允许。,SFColor,和,MFColor,SFColor,域是只有一个颜色值单值域。,SFColor,值和,RGB,值一样,由一组三个浮点数组成。每个数都是从,0.0-1.0,,极值包含在内,分别表示组成颜色红绿蓝三个分量。,MFColor,域是一个多值域,包含任意数量,RGB,颜色值。比如:,1.0 0.0 0.0,,,0 1 0,,,0 0 1,表示三种颜色红绿蓝组成。,SFColor,域输出事件初始值是(,0,,,0,,,0,)。而,MFColor,域输出事件初始值是,。,SFFloat,和,MFFloat,一个,SFFloat,域含有一个,ANSI C,格式单精度浮点数。一个,MFFloat,域含有零个或多个,ANSI C,格式单精度浮点数。即允许空白,不赋任何值。,SFFloat,域输出事件初始值为,0.0,。,MFFloat,域输出事件初始值为,。,SFInt32,和,MFInt32,一个,SFInt32,域含有一个,32,位整数。一个,SFInt32,值是由一个十进制或十六进制(以,OX,开头)格式整数组成。一个,MFInt32,域是多值域,由任意数量以逗号或空格分隔整数组成。比如:,17,,,-0 xE20,,,-518820,SFInt32,域输出事件初始值为,0,,,MFInt32,域输出事件初始值为,。,虚拟现实及其应用总复习,第13页,SFNode,和,MFNode,一个,SFNode,域含有一个单节点,必须按标准节点句法写成。一个,MFNode,域包含任意数量节点。例:,Transform translation 1 0 0,,,DEF PANDORA box,,,USE PANDORA,一个,SFNode,允许包含一个关键字,NULL,,此时,表示它不包含任何节点。注意:一个组或一个变换,children,域也就是列出一组节点,MFNode,域。把,SFNode,域放入一个脚本节点,就使节点脚本能够直接存取列在,SFNode,域节点,而不需要一个,ROUTE,语句。,SFNode,域 输出事件初始值为,NULL,,,MFNode,域输出事件初始值为,。,SFRotation,和,MFRotation,SFRotation,域要求一个绕任意轴任意角度旋转。,SFRotation,值含有四个浮点数,各数之间以空格分隔。前三个数表示旋转轴(从原点到给定点向量);第四个数表示围绕上述轴旋转多少弧度。例:,绕,y,轴旋转,180,度,;,表示为,0 1 0 3.1416,MFRotation,域可包含任意数量这类旋转值。注意:视点旋转是从缺省视点方向开始,该方向是从(,0,,,0,,,10,)沿,-z,轴观察。,SFRotation,域输出事件初始值为(,0 0 1 0,),,MFRotation,域输出事件初始值为,。,SFTime,和,MFTime,SFTime,域含有一个单独时间值。每个时间值是一个,ANSI C,格式双精度浮点数,表示是从,1970,年,1,月,1,日(,GMT,,格林威治平均时)子夜开始计时,延续当前时间秒数。,MFTime,域包含任意数量时间值。,SFTime,域输出事件初始值为,-1,,,MFTime,域输出事件初始值为,。,虚拟现实及其应用总复习,第14页,SFString,和,MFString,SFString,域包含一串字符,各字符遵照,UTF-8,字符编码标准(,ASCII,是,UTF-8,子集,能够因为,SFString,域),SFString,值含有双引号括起来,UTF-8 octets,字符串。任何字符(包含,“,#,”,和换行符)都可在双引号中出现。为了在字符中使用双引号,在它之前加一个反斜杠,“,”,。为了在字符串中使用反斜杠,连续打两个反斜杠,“,”,。比如:,One,Two,Three,123.He asked,Who is#1?,MFString,域含有零个或多个单值,每个单值都和,SFString,值格式一样。,SFString,域输出事件初始值为,“”,,,MFString,域输出事件初始值为,。,SFVec2f,和,MFVec2f,SFVec2f,域定义了一个二维向量。,SFVec2f,值是两个由空格分隔浮点数。,MFVec2f,域是多值域,包含任意数量二维向量值。比如:,0 0,,,1.2 3.4,,,98.6-4e1,SFVec2f,域输出事件初始值为,(0 0,),,MFVec2f,域输出事件初始值为,。,SFVec3f,和,MFVec3f,SFVec3f,域定义了一个三维空间向量。一个,SFVec3f,值包含三个浮点数,数与数之间以空格分隔。该值表示从原点到所给定点向量。,MFVec3f,域包含任意数量三维向量值。比如:,0 0 0,,,1.2 3.4 5.6,,,98.6-461 451,SFVec3f,域输出事件初始值为,(0 0 0,),,MFVec3f,域输出事件初始值为,。,虚拟现实及其应用总复习,第15页,VRML时间体系,Vrml场景中。时间推移经过时间检测器(timesensor)随时间流逝产生事件,每一个事件随带有一个时间戳(timestamp),用于标志事件产生时间,浏览器依据时间对事件决定对事件处理次序。,时间0.0等于格林尼治时间1970.1.1 00:00:00.时间戳为t事件产生大于或等于t 事件。,虚拟现实及其应用总复习,第16页,VRML,关键字,DEF:给后续节点命名,这个名字就是节点名,经典格式为:DEF 节点名 节点,USE:引用DEF定义节点名,经典格式为:USE 节点名,TRUE:表示“真”,“”,“是”等,用于给SFBool域赋值。,FALSE:表示“假”,“0”,“否”等,用于给SFBool域赋值。,NULL:表示空值,用于给SFNode域赋空值。,PROTO:用于声明自定义节点原型,经典格式为:PROTO 节点名称 域自定义(包含其缺省值)事件自定义节点实体,EXTERNPROTO:用于预解释引用外部定义节点原型,经典格式为:EXTERNPROTO 节点名称 域自定义(不包含其缺省值)事件自定义 外部节点资源定位其中域、事件类型和名称必须与引用外部节点中定义一样。外部节点资源定位格式为:URL/URN或URL/URN,URL/URN,。资源定位可认为URL或URN格式,当使用URL/URN或URL/URN,URL/URN,数组形式时,浏览器使用数组中第一个正确寻获资源。资源形式也可以写为:URL/URN#externProtytypeName,externProtytypeName为引用外部节点名称,这时候,可以使用与外部节点定义名称不一样 节点名称。,虚拟现实及其应用总复习,第17页,VRML,关键字,ROUTE,:组成事件通路。经典格式为:,ROUTE fromNode.fromEvent TO toNode.toEvent,fromNode,为发出事件节点名称。,fromEvent,为事件输出名称。,toNode,为接收事件节点名称。,toEvent,为事件输入名称。,TO,:见,ROUTE,说明。,eventIn,:定义事件输入,经典格式为:,eventIn,数值类型 事件名,eventOut,:定义事件输出,经典格式为:,eventOut,数值类型 事件名,field,:定义私有域,经典格式为:,field,数值类型 域名 缺省值,exposedField,:定义公共域,经典格式为:,exposedField,数值类型 域名 缺省值,IS,:用于原型申明中,把自定义域和事件与执行体中节点域和事件等同起来。经典格式为:,执行体中节点域或事件,IS,自定义域或事件,虚拟现实及其应用总复习,第18页,Shape,节点,(1)Shape,节点语法格式以下:,Shape,appearance NULL#exposedField SFNode,geometry NULL#exposedField SFNode,Shape,节点由两个主要属性组成,即造型外观属性和几何属性。,造型外观属性由,appearance,域域值设置:指定另一个外观节点,Appearance,节点,缺省为,NuLL,,表示不包含任何外观节点,此时系统使用缺省造型 外观属性,(,白色发光,),。,造型几何属性由,geometry,域域值设置:指定另一个造型节点,如,Box,、,Sphere,节点等,其缺省为,NULL,,表示不包含任何造型节点,即不创建任何造型。,Shape,节点功效在于创建,geometry,域设置造型,并将,Appearance,节点指定外观属性应用到,geometry,域造型节点上。,虚拟现实及其应用总复习,第19页,ImageTexture,假如不使用textureTransform对纹理图进行缩放处理,浏览器会自动调整纹理图大小,使其恰好填充好造型表面。只有需要缩小纹理图,使其小于造型表面时,才需设置repeatS,repeatT,虚拟现实及其应用总复习,第20页,VRML,基本几何造型,空间造型:,VRML,可见形体基本组成模块是造型,由节点和域描述组成。空间造型节点定义几何形体形状,任何一个,VRML,虚拟场景中空间造型都必须使用,Shape,节点加以创建,场景造型包含基本几何造型,(,立方体、球体、圆柱体、圆锥体,),,文本造型以及点、线、面方式结构任意几何造型。,1.Box,节点,用于创建标准立方体几何造型。,Box,节点语法格式以下:,Box,size 2.0 2.0 2.0#field SFVec3f,size,域值指定一个以,VRML,空间坐标系原点为中心,且每个面均与坐标平面平行三维,2.Sphere,节点,用以创建标准球体几何造型。,Sphere,节点语法格式以下:,Sphere,radius 1.0#field SFFloat,Sphere,节点仅包含一个,radius,私有域,,radius,域域值指定一个以,VRML,空间坐标系原点为中心球 体半径尺寸,其缺 省值为,1.0,。,虚拟现实及其应用总复习,第21页,基本几何造型,3.Cylinder,节点,用于创建标准圆柱体几何造型。,Cylinder,节点语法格式以下:,Cylinder,radius 1.0#field SFFloat,height 2.0#field SFFloat,top TURE#field SFBool,side TURE#field SFBool,bottom TURE#field SFBool,Cylinder,节点共有,5,个私有域。,标准,Cylinder,节点创建是底圆半径为,1,个,VRML,长度单位,高度为,2,个,VRML,长度单位以空间坐标系原点为中心、以,y,轴为中心轴圆柱体。,4.Cone,节点,用以创建标准圆锥体几何造型。,Cone,节点语法格式以下:,Cone,bottomRadius 1.0#field SFFloat,height 2.0#field SFFloat,side TRUE#field SFBool,bottom TRUE#field SFBool,Cone,节点共有,4,个私有域。,标准,Cone,节点创建是底圆半径为,1,个,VRML,长度单位,高度为,2,个,VRML,长度单位以空间坐标系原点为中心、以,Y,轴为中心轴圆锥体。,虚拟现实及其应用总复习,第22页,基本几何造型,size,域值指定一个以,VRML,空间坐标系原点为中心,且每个面均与坐标平面平行三维,长方体长、宽、高尺寸。缺省值为,(2.0 2.0 2.0),,分别表示长方体在,x,、,y,、,z,轴方向上长度值。,虚拟现实及其应用总复习,第23页,基本几何造型,Sphere,节点仅包含一个,radius,私有域,,radius,域域值指定一个以,VRML,空间坐标系原点为中心球 体半径尺寸,其缺 省值为,1.0,。,虚拟现实及其应用总复习,第24页,基本几何造型,radius,域:以,y,轴为中心轴圆柱体底圆半径尺寸,(,缺省值为,1.0),height,域:圆柱体在,y,轴上高度,(,缺省值为,2.0),top,域:是否绘制顶圆,(,缺省值为,TRUE),side,域:是否绘制圆柱侧面,(,缺省值为,TRUE),bottom,域:是否绘制底圆,(,缺省值为,TRUE),虚拟现实及其应用总复习,第25页,基本几何造型,bottomRadius,域:以,y,轴为中心轴圆锥体底圆半径尺寸,(,缺省值为,1.0),height,域:圆锥体在,y,轴上高度,(,缺省值为,2.0),side,域:是否绘制锥面,(,缺省值为,TRUE),bottom,域:是否绘制底面,(,缺省值为,TRUE),虚拟现实及其应用总复习,第26页,文本造型,1.Text,节点,Text,节点用来在,VRML,场景中创建文本造型,通常作为,Shape,节点,geometry,域域值使用。,Text,节点语法格式以下:,Text,string,length,maxExtent 0.0,fontStyle NULL,1.Text,节点,String,域域值使用,UTF-8,编码设置要创建文本内容。每一行字符都由双引号界定,引号内回车符。,Length,域域值设置每一行字符长度,以,VRML,长度单位进行度量。,Length,域域值要与,string,域域值一一对应,即,length,域一个域值控制,string,域一行字符长度。该域值缺省为空列表,即不另外设置文本行长度,渲染时由浏览器自动设置。,maxExtent,域域值设置文本造型中任意一行在主要方向上最大范围,一样以,VRML,长度单位进行计量,该域值必须大于等于,0.0,。,虚拟现实及其应用总复习,第27页,fontStyle,fontStyle,域用来定义文本造型字体特征,其域值要指定另一个,FontStyle,节点。通常设定,FontStyle,节点属性能够改变由,Text,节点创建文本造型默认特征。,2.FontStyle,节点,FontStyle,节点只用做,Text,节点,fontStyle,域域值属性,经过设置,FontStyle,节点能够改变由,Text,节点创建文本造型默认字体特征。,FontStyle,family,“,SERIF,”,style,“,PLAIN,”,size 1.0,spacing 1.0,horizontal TRUE,leftToRight TRUE,topToBottom TRUE,justify ,“,BEGIN,”,language,“”,虚拟现实及其应用总复习,第28页,Family,域域值设置,Text,节点文本造型使用字符集,字符集包含”,SERIF”,、”,SANS”,和”,TYPEWRITER”,三种,浏览器将在要求字符集中选择特定字体进行渲染。,Style,域域值用来设置所创建文本字体格调,包含”,PLAIN”,、”,BOLD”,、”,ITALIC”,和”,BOLDITALIC”,四种。,Size,域域值用来设置所创建字符大小尺寸。,Spacing,域域值用来设置所创建文本字符行间距。,Horizontal,域域值决定文本行是水平生长还是垂直生长。,leftToRight,域域值决定文本块或其中字符是从左到右排列还是从右到左排列。,topToBottom,域域值决定文本块或其中字符是从上到下生长还是从下到上生长。,Justify,域域值决定文本造型中字符块对齐方式,这是相对,XOZ,平面或,YOZ,平面进行定义。,Language,域域值设置,VRML,所使用语言,虚拟现实及其应用总复习,第29页,编组节点,前面创建,VRML,场景都仅由一个单一几何造型组成,这显然不能满足,VRML,对真实世界复杂场景虚拟要求。,使用,Group,编组节点能够将多个相同或不一样,VRML,节点进行编组,以捆绑创建复杂造型。,VRML,空间变换,VRML,场景中每一个造型都是基于当前坐标系进行创建,而单一坐标系使用将在很大程度上限制用户空间想象力和创造力发挥。假如希望场景中造型在空间中改变方位,则需要进行,VRML,空间变换,也即变换造型创建所基于空间坐标系。,虚拟现实及其应用总复习,第30页,Group,节点,Group,编组节点语法格式以下:,Group,children,bboxCenter 0.0 0.0 0.0,bboxSize-1.0-1.0-1.0,addChildren#eventIn MFNode,removeChildren#eventIn MFNode,Group,编组节点包含一个公共域、两个私有域以及一个入事件和一个出事件:,Children,域域值设置包含在该编组节点
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服