当前位置:甜馍馍地理信息网 >> 地理信息系统GIS >> 知识体系 >> 正文 >>  [阅读资讯:多视图的三维GIS的虚拟现实 多视图方法]

多视图的三维GIS的虚拟现实 多视图方法

[ 来源:互联网 | 时间:2009年04月24日 | 收藏本文 ] 【

3 系统设计

为了实现上述概念,我们正在设计名为Karma VI 的3D GIS和VR 系统,系统采用标准的GIS 、VR 和CAD 组件。

然而,遗憾的是除在研究领域外,并不存在具有完全3D 能力的 GIS ,多数系统都具有2.5D 能力。所以我们在CAD 系统中选择了标准的 GIS 并模拟和存储建筑物及其它空间对象的全三维图像,把CAD 数据和GIS 数据结合起来。这意味着可在需要的时候将CAD 的数据输入到可视化的模块中。在GIS 中保持了2.5D 的CAD 数据。这种显示方法也适用于对模型视图进行模型关联。图2 显示了组件和不同的视图。

3.1 GIS

对于GIS ,该系统选择一个中央数据服务器,这样Karma VI 系统可以作为客户/服务器结构的客户端,利用相同的数据进行GIS 应用。而且,如果空间和属性数据能存储在一个中央数据库中,数据的一致性和完整性会保持得更好。另外,许多用户可同时访问相同的数据。

系统用ESRI 的空间数据库引擎( SDE )作为GIS 数据库服务器。SDE 可以在集中维护的数据库中存储和检索空间和属性数据,这个数据库是基于开放的关系数据库管理系统(RDBMS )标准,我们用Oracle 作为RDBMS 。
Karma VI 作为SDE 的客户端应用通过SDE 的客户包连接到服务器上。在服务器端是SDE 的服务程序、关系数据库管理系统和数据(图3 )。SDE 采用协同处理,这意味着处理同时发生在SDE 的客户端和服务器端,看哪个更决。

SDE 用连续的空间模型将空间数据增加到一个关系数据库管理系统中。在关系数据库模型中,数据存储在包含行和列的表中。行表示地物,列包含了地物的属性。属性可以有很多类,如日期型、字符串型和数字型。地物的几何形状是另一种取值类型,存储在列中用于确定几何数据的类型。

SDE 用独立的表存储几何数据和空间索引,用形状列中的一个关键字进行连接。几何数据用(x,y )坐标存储。点记录成单个的(x,y) 坐标,线是有序的坐标串,面是起点和终点相同的组线段的(x , y )坐标构成。形状数据可以是2D 也可能是2.5D 。

3.2 VR

为了VR 的可视化,正在开发许多构件来支持不同的视图。这些构件利用一个VR 的工具包。这些构件运行在所有可获得的设备上,如简单的监视器或较专用的设备,如CAVE 或虚拟的工作台。如果必要的话,每个系统可用多屏幕提供所有的视图。

这里选用WorldToolKit ( WTK )作为VR 的工具包。WTK 是用于可视化模拟和虚拟现实的可移植、跨平台的系统。Karma VI系统的交互和可视化的特征用WTK 的存储功能建立。对于不同的平台,如桌面工作台/PC ,虚拟工作台和CAVE 需要不同的用户交互方式和界面。在WTK 中用的数据模型的设计用于支持3D 模型的可视化和交互。如同其它需要可视化的对象一样,几何数据也存储在一个分层的“透视图”中(如图4 )。这个“透视图”由不同类型的节点构成,每种节点有不同的作用和功能。比如,几何数据可存储在一个几何节点中,一个“组”节点用来分组存放几种几何数据。一个“详细程度节点”( LOD )存储相同对象的几种表示方法。在任何给定的点上根据可视化要求的详细程度只能见到一种表示法。另外,每个节点也包括了用户自定义的数据。
尽管3D 的数据可以输入,但还需要和GIS 系统中的 2D 和2.5D 的数据保持一致。为了保持一致,GIS 坐标用来确定WTK 的平面、模型和现实视图的几何平面位置。从GIS 的数据中提取的形状属性数据用于正确地形成和显示2 . 5D 和3D 数据的几何形状。

3.3 CAD

CAD 模型数据从外部的CAD 系统输入。在这个阶段,3D 的CAD 模型的操作本身不是Karma VI系统的一部分。将来可能增加额外的功能用于操作来自该系统内的3D CAD 数据。

对于平面视图,由 2D 的形状数据产生 2D 多边形。这是面状地物的基本任务。然而,由于在WTK 中的几何体仅用到平面,点和线状地物必须做转换。所以,点用小三角形表示,对线进行缓冲处理。在模型视图中,这些 2D 的面由一个属性值突出出来,形成了2.5D 的几何体。在现实视图中, 2D 面用于定位3D CAD 对象。“高度”属性用于确定CAD 几何体的高度和模型的比例尺。在SDE 中用一个单独的表把CAD 对象与原始的GIS 形状联系起来,并将CAD 模型及其方向比例等参数存储在这个表中。

视图不同的几何显示存储在一个单独的“透视图”中,可用WTK 提供的LOD 节点结构方式来实现这个目的。LOD 节点为一个对象的几种几何显示的存储提供了可能性。我们可以根据特定的功能(比如视距)进行这些几何显示的变换。在Karma 系统中,应用了LOD 节点对2D 、2.5D 和3D 几何模型进行分组。LOD 节点包括了形状的数据库关键字,及2D 地理坐标的中心(图5 )。数据库关键字对于使Karma 和SDE 系统在传递查询和结果时保持对象一致性是必要的。每个几何模型以存储在LOD 节点中的地理坐标的中心定位。当移动其中一个模型时,这些坐标被更新,因而移动了所有模型,同时显示的视图在任何时候均保持一致。
经常有这样的现象,代表GIS 中的多种形状只有一个单一的CAD 对象。因此分割这个对象或为每种形状建立单独的CAD 的模型是不现实的。所以,CAD 模型能由一系列不同的形状共享。CAD 模型与数据库中的每个形状相关联。模型的中心通过存储在LOD 节点中这些形状的中心坐标平均值来计算。

Karma 中的“透视图”的基本结构如图6 所示。根节点分为四个子树或组。每个子树或组有自己的功能。“GIS ”组包括了所有加载的GIS 表,表本身包含有三种几何显示的LOD 节点。在透视图中还存储有用于可视化和用户交互的其它几项。

首先在“透视图”中加上一个或多个球状光资源,以充分照亮场景。在不久的将来,将增加“3D 用户界面”组,这个组包括3D 专用接口工具集,以支持在虚拟工作台和CAVE 系统中虚拟现实用户界面,某种程度上也可支持桌面系统虚拟现实用户界面。为了加强现实视图,许多其它的非GIS 相关的对象也将加入到“透视图”中。比如云、人、交通和植被。这些对象有的必须栩栩如,而且很多对象必须能发出声音。这样的现实视图特殊对象存储在“真实性”组中。
4 系统的应用

Karma 的一个重要特征是支持在VR 环境中对GIS 数据的操作和编辑。很多功能已经发展到可以直接通过VR 的界面操作、模拟和分析2D / 2.5D 数据。实际的操作、建模、分析在SDE 数据库中进行,而操作、建模、分析参数的设置在VR 环境中。比如当用户在模型视图中移动和旋转一个对象时,只将变换参数传送到SDE 数据库中,进行原始数据更新。为此我们采用客户/服务器结构,也可用外部的GIS 编辑和分析数据。

4.1 对象操作

目前Karma 系统只有GIS 对象基本的移动和旋转操作功能。通过这些功能,可以操作单个或一组GIS 对象。成组对象可以像单个对象一样进行移动和旋转。因为在2D / 2.5D 空间中定义所有的对象,所以只允许沿着垂直轴(Z )进行旋转。

4.2 缓冲操作

执行 2D 空间查询或缓冲是Karma 系统前端典型的GIS 操作,用户选择单个的GIS对象并设置缓冲参数,这些参数包括缓冲的半径和所要执行的空间查询的图层。参数信息发送到GIS 数据库,产生一个临时的缓冲对象,并且计算在这个缓冲对象中包含哪些对象,并高亮度突出显示这些对象。

4.3 不规则三角网

不规则三角网(TIN )是由许多相互连接的三角形组成一种2.5D 几何显示。TIN 通常用来对地表建模,在Karma 系统中TIN 能够可视化显示,可用于对一个区域进行直观分析。比如,一个包括树的位置的 2D 数据集可在TIN 模型上进行定位。这样,景观规划者可以分析对一片森林进行部分砍伐的视觉效果。

4.4 量测距离

如果精度不成问题,量测距离是简单的GIS 分析,能容易地整合到VR 环境中。在Karma VI 系统中,用户可通过点击或画一条3D 的线测量 2D 或3D GIS 对象之间的距离。这可以实现快速分析对象与对象的距离、CAD 模型维数和分析对象高度。

5 展 望

目前,这个3D GIS 和VR 的原型运行在PC 、虚拟的工作台上和CAVE 环境中。GIS 数据的基本几何操作只是移动和旋转,还有空间缓冲查询等。为了支持更多的操作功能,必须开发基于约束条件的模型,以支持“智能”几何操作。不久的将来,将更深入开发3D GIS 功能,比如3D 网络分析、3D 缓冲、体积计算等。为了显示分析的结果,需要一个具有渲染和制作纹理工具的通用指令集。

为了更精确地分析和模拟,系统采用通用应用界面会更方便,这将允许远程从数据库检索GIS 数据进行模拟,然后将数据以3D 对象形式、对象移动、符号可视化形式返回结果。

由于空间数据量大,可视化显示 GIS数据会出现问题。继GIS 数据之后还有巨大的CAD 数据必须可视化显示。所以,为了真实的显示,保证具有足够的图形操作功能,必须优化系统。WTK 中保障LOD 技术的应用;对具有不同详细程度的相同对象分不同版本进行存储,但在任何给定的时间只有其中的一个可以显示。任何时候观察者要靠近对象,可以选择详细程度高的几何体。详细程度低的几何体由较少的面组成,所以比较详细的几何体需要较少的计算时间。相似的技术,如动态对象加载,当详细的 GIS或CAD 对象不可见时,它们只占用内存和有限的处理器时间。为减少内存的应用,只有当观察者离这些对象足够近才能看见它们的时候,才把它们加载到内存中。

下一步是优化系统的图形操作功能,还将开发这些用户界面。这些界面应该是易于使用、直观和有效的。这在桌面系统中是个大问题,在真正的VR 环境(如虚拟工作台或CAVE )中就更困难。比如,在CAVE 系统中用键盘进行文本的输入是不可能的。必须开发执行语音命令的语音识别系统。需要开发一种图形和语音的综合对话框,让用户进行特定的查询。还有,在3D 环境中显示字母数字结果是个问题,特别是当大量的信息返回的时候。信息必须以这样一种方式提交给用户,就是用户不能失去他的沉浸感觉。这意味着信息只满足用户视野的一小部分,或者信息完全融入到3D 现实中。除了解决结构语言和口语的输入和输出外,还要开发可视化的工具来使用户访问GIS 数据和获取系统的模拟功能。

下一步将向该系统提供技术方面的界面,供设计制定者使用,帮助制定政策和决策的界面也是有用的。如果不同的设计方案的景观可以显示和进行评价,那么该系统将是解决互操作问题的一个有价值的工具。

上一页
本文共 2 页,第  [1]  [2]  页

【推荐本文】 【打印本页】 【返回顶部
最新文章
推荐文章