首页 理论教育 面向Web的可视化设计

面向Web的可视化设计

时间:2023-07-02 理论教育 版权反馈
【摘要】:目前,面向Web浏览器的三维可视化技术有多种,主要包括VRML技术、X3D技术和基于Java语言的Java3D及JOGL技术。其特点包括以下3个方面。综上所述,这3类网络可视化技术均可产生交互式的虚拟现实场景。但从本质上来讲,其中VRML、X3D仍然是承载着三维多媒体内容的数据文件,缺乏对运用可视化技术和可视化算法的直接支持。

面向Web的可视化设计

随着传统互联网应用的普及和新一代互联网技术的到来,Web技术正在从仅能够提供文字与静态图片浏览,逐渐发展成为可以支持丰富的影音数据流、海量的数据挖掘、远程实时交互的监测预警及控制等功能。目前,面向Web浏览器的三维可视化技术有多种,主要包括VRML(Virtual Reality Modeling Language)技术、X3D(eXtensible 3D)技术和基于Java语言的Java3D及JOGL技术。

(1)VRML技术。该技术采用文本信息进行三维场景的描述,并由VRML的浏览器按照VRML规范解释、生成三维场景。其实现过程为[34-36]:由网络服务器发布VRML文件(包含了VR世界的逻辑结构信息),客户端通过网络下载所需的文件,通过本地平台的浏览器对该文件描述的VR世界进行访问,从而实现VR功能。其特点包括以下3个方面。

1)基于ASCII码的低带宽可行性。VRML像HTML一样,用ASCII文本格式来描述世界,降低了数据量,从而在低带宽的网络上也可以实现。

2)良好的交互性。采用实时3D着色引擎,把VR的建模与实时访问更明确地隔离开来,并在交互过程中提供7个自由度

3)可扩充性。即可以根据需要定义自己的对象及其属性,并通过Java语言等方式使浏览器可以解释这种对象及其行为。

(2)X3D技术。该技术是一种专为万维网而设计的三维图像标记语言,在访问和组织方式上仍采用了文件格式进行几何数据和行为的描述,并通过浏览器端的插件进行显示。但从技术方面,它结合了最新商业图形硬件特性,并基于多年来VRML97开发团体反馈改进了应用程序的结构,引入了包括XML(eXtensible Markup Language)在内的多个文件编码进行模型的描述,是对VRML97规格新的修订。其特点包括以下3个方面[37-42]

1)X3D技术采用统一的API,定义了ECMA Script和Java绑定,其中ECMA Script是建立应用程序所必需的,这使执行更强健、更可靠。(www.xing528.com)

2)X3D技术支持多种文件编码,包括原VRML97规定格式、XML语言和压缩的二进制格式。

3)X3D技术采用组件(Component)和概貌(Profile)技术使结构更加模块化,为应用程序提供更好的扩展。

(3)基于Java语言的三维可视化技术。该类技术主要包括以Java3D为代表的Java API技术和以基于Open GL的JOGL为代表的图形接口技术,这两者均可广泛地应用于各种平台,并通过开发基于Web的应用程序与Internet进行集成。

1)基于Java3D的绘制技术[43-47],Java3D是Java语言在三维图形领域的扩展,是一组应用编程接口。Java3D API是用来开发三维图形编程接口,它提出了一种新的基于视平台的视模型和输入设备模型的技术实现方案,即通过改变视平台的位置、方向来浏览整个虚拟场景。它不仅提供了建造和操作三维几何物体的高层构造函数,而且利用这些构造函数还可以建造复杂程度各异的虚拟场景。Java3D是Java Media APIs中的一部分,汲取了已有图形接口的优点,即Java3D的底层图形构造函数不仅综合了底层APIs(如Direcrt3D、Open GL)的绘制思想,而且它的高层图形绘制还综合了基于场景图的思想,同时,它又引入了一些通用的图形环境所未考虑的新概念(如立体声等),这样将有助于提高用户在虚拟场景的沉浸感。

2)基于JOGL的绘制技术[48],JOGL是建立在OpenGL这一公共图形接口基础上的技术,是第一个被认可的Java对Open GL的绑定,得到Java创建者SUN公司和Open-GL创建者SGI公司的共同支持。JOGL在集成Java的AWT和SWING等界面组件的同时,还能够为采用Java开发的应用程序提供强大的三维图形硬件支持,并且对OpenGL 2.0规范中的API和几乎所有第三方开发商提供了访问接口。其运行实质[49]就是JOGL使用Open GL来展示三维模型,使用AWT或者SWING来进行窗口的建立,这就充分利用了OpenGL具有硬件加速、接口与硬件无关的特性,实现在Java运行环境下快速的三维绘制。

综上所述,这3类网络可视化技术均可产生交互式的虚拟现实场景。但从本质上来讲,其中VRML、X3D仍然是承载着三维多媒体内容的数据文件,缺乏对运用可视化技术和可视化算法的直接支持。而Java作为一种通用程序设计语言,它具有很强的可移植性,并且Java3D和JOGL等不仅能够像VRML一样支持视景图形处理,还能够支持高层次即时模式的图形处理。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈