基于X3D的网络虚拟汽车展示系统的设计_第1页
基于X3D的网络虚拟汽车展示系统的设计_第2页
基于X3D的网络虚拟汽车展示系统的设计_第3页
基于X3D的网络虚拟汽车展示系统的设计_第4页
基于X3D的网络虚拟汽车展示系统的设计_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于X3D的网络虚拟汽车展示系统的设计【摘要】基于第二代虚拟现实设计语言X3D和JSP动态网页设计语言来开发虚拟汽车展示系统,系统利用X3D语言来设计三维场景、JavaScript和X3D的内部Script节点来负责网页事件与场景之间的信息传递、JSP及JDBC技术来负责数据的查询和展示。系统将展现一个可以交互控制的虚拟汽车展厅及试车场地。【关键词】虚拟现实;X3D;JSP1.前言随着虚拟现实技术和互联网的发展,基于互联网的虚拟现实慢慢进入人们的视野。人们通过互联网,足不出户就可以游览逼真度很高的虚拟博物馆、虚拟城市等虚拟现实场景。网络虚拟现实技术主要靠虚拟现实建模语言(VirtualRealityModelingLanguage,VRML)来实现,VRML拓宽了虚拟现实技术的应用领域。面对越来越多的需求,VRML逐渐暴露出如不支持XML编码,交互性差等缺点。于是X3D1(Extensible3D)标准应运而生,X3D是VRML的继承和发展。针对传统汽车导购网站以二维图片形式展示的弊端,本文利用新的X3D标准来设计的展示系统能够使浏览者仿佛置身于真实车展当中,充分体现虚拟现实的沉浸性、交互性。2.X3D简介及开发环境X3D整体结构2包括核心特性集、VRML97特性集、应用程序接口和扩展集四个部分。(1)核心特征集:定义了VRML97的54个节点中最为关键的23个节点,形成核心组件,并将其封装为一个小型的、可扩展的内核,运行时占用很少的系统资源;(2)VRML97特征集:将内核以外的VRML97节点设计为可拔插的组件,通过扩展内核,完整地实现了VRML97规范定义的功能,从而确保了X3D与已有的VRML应用兼容;(3)应用程序接口:X3D是描述几何体行为的一种文件格式,由于使用了XML编码,文档对象模型为X3D提供了一组应用程序接口,外部应用程序可以通过DOM访问X3D文件节点元素;(4)扩展集:在内核之上进行特性集扩展,用户可以添加其他的扩展或自定义新的硬件渲染技术,以实现复杂的功能。整个系统的虚拟场景有许多的X3D文件组成,X3D文件结构3包含文件头、文件体及注释等内容,在主程序概貌中包括头文档、组件、说明以及场景等。在场景中利用基本几何节点、复杂节点、组节点、纹理节点、效果节点、组件节点、人性化节点以及动态感知节点等创建虚拟现实三维立体场景。系统前台的三维呈现采用与浏览器完美兼容的BSContact引擎,BSContact引擎对X3D扩展节点提供了很好的支持。BSContact为JavaScript提供了一个EAI(ExternalScriptinginterface)外部编程接口,这个接口允许外部程序JavaScript读取和改变X3D内部已被命名节点的任何域的值。系统承载容器选用流行的Tomcat服务器,数据的处理将使用SQLServer2005数据库。3.系统设计与实现3.1系统架构虚拟展示系统采用客户端层、中间件层及数据库层三层架构模式,客户端层负责接收用户点击事件及三维场景显示,中间件层根据不同请求将从数据库层获取的相应信息返回给客户端层。图1为系统的架构示意图。3.2数据采集及处理需要采集的数据包括汽车三视图、汽车各项性能参数信息、场景及汽车零部件贴图。三视图用于汽车的建模参考,贴图则用于增加场景真实感,性能参数信息使用户了解汽车模型无法表现的性能信息。这些数据由JSP采集页面收集并传递给服务器的servlet,在servlet中通过JDBC代码将数据保存到数据库中。系统提供车型查询功能,用户可以从数据库中查询出自己想了解的汽车产品的型号在客户端里面察看,同时也可以在展厅里同时查询出两种车型进行对比展示,使用户对两款汽车有更直观的认识和了解。实现查询原理是当用户针对不同车型发起请求时,服务器负责查询的servlet将从数据库中获取相应的数据返回给客户端浏览器,相应JSP页面展现给用户所需信息。3.3汽车场景建模及建模工具3DStudioMax,常简称为3dsMax或MAX,是Autodesk公司开发的基于PC系统的三维动画渲染和制作软件。广泛应用于广告、影视、工业设计、建筑设计、多媒体制作、游戏、辅助教学以及工程可视化等领域。系统场景由大量三维实体模型组成,主要有汽车、展厅及内部装饰、山地、小型城镇等,所以系统中汽车、展厅等复杂的物体采用强大的3DSMAX工具来建模。模型需要转换为X3D格式的文件,由于3DSMAX对X3D不支持复杂材质的导出,所以导出的X3D模型文件需要使用X3D标准提供的材质节点进行处理,例如为模型增加贴图、光泽度、灯光等使场景更加逼真。模型建好之后使用X3D的Inline节点将其组合到场景中。X3D的另一个作用是在场景中添加对一些用户点击事件的处理节点、完成一些模型的移入和移出动作、对场景及模型进行细节的调整。图2、3为场景效果图。3.4X3D场景交互设计本系统各种交互事件主要靠X3D的内部Script节点4来完成。内部Script节点是一个特殊的可编程节点,它不能直接感应用户的操作,在三维空间中也不可见,但可以嵌套为模型节点的下级子节点并可与任意节点进行连接。当Script节点收到一个输入事件时,首先将事件值传到URL指定的文件中,通过这个脚本设置该Script节点输出事件的值。在编写用户自定义脚本和设定虚拟模型的传感事件时,Script节点的输入、输出域和其他感受器节点的输入、输出域的数据类型必须严格匹配5。JSP页面脚本程序与场景交互的一般步骤是首先在脚本程序获取浏览器对象,通过浏览器对象加载场景;然后通过浏览器对象访问场景对象;其次由场景对象访问节点对象;最后由节点访问域对象,包括设置域值、监听事件等。图4、5分别为交互原理图和内部Script节点交互测试用例,用户通过点击JSP页面控件来改变虚拟场景。例如,改变场景中物体的颜色、显示或隐藏物体、旋转物体等效果。系统采用同样的原理来对虚拟展厅和虚拟试车场进行控制。例如改变展厅汽车的角度、改变漫游路线和视角等。4.结束语X3D标准作为新一代Web三维图形的标准,基于它制作的虚拟场景文件体积小,交互功能强大,且具有平台无关性,其发展前景广阔。本文构建的网络虚拟汽车展示系统除实现了基本的汽车展示功能外,还利用X3D的内部节点功能完成系统的交互功能。系统真实感还有待增强,是下一步需要完善的重点工作。参考文献1ISO/IECFDIS19775-1.2:2008Informationtechnology-Computergraphics,imageprocessingandenvironmentalrepresentation-Extensible3D(X3D)-Part1:ArchitectureandbasecomponentsS.2008.2刘广涛,吴升.基于X3D的场景交互技术在虚拟生物博物馆中的应用.系统仿真学报,2008,20:348-351.3Web3DConsortium.IntroductionEB/OL.(2007-12).http://x3d/specifications/ISO-IEC-FDIS-19775-1.2-X3D-Abstract-Specification/Part01/introduction.html.4李海庆,殷国富,胡瑞飞

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论