三维GIS的基本问题探讨 三维GIS研发思路

1.1 三维GIS的研发思路与相关软件发展情况
随着GIS应用的深入,人们越来越多地要求从真三维空间来处理问题。在应用要求较为强烈的部门如采矿、地质、石油等领域已率先发展专用的具有部分功能的三维GIS,如加拿大LYNX Geosystems公司的LYNX软件,但由于它们一般是针对自己的领域开发的,没有从理论上加以系统完整的研究,没有面向通用平台进行设计,因此具有较强的局限性。这是由当时的应用要求、数据获取手段及相关的计算机技术发展条件决定的。
  由于二维GIS数据模型与数据结构理论和技术的成熟,图形学理论、数据库理论技术及其它相关计算机技术的进一步发展,加上应用需求的强烈推动,三维GIS的大力研究和加速发展现已成为可能。
  (1) 三维GIS研发思路
  当前研究和开发三维GIS的思路可归纳为两种:
  ● 由于三维GIS首先要将地理数据变为可见的地理信息,因此人们一方面从三维可视化领域向三维GIS系统扩展,这一点同早期的二维GIS来源于计算机制图管理一样,是从可视化角度出发的[2][3][4]。
  ● 另一方面,GIS需要存储和管理大量的空间信息和属性信息,因此另一部分人从数据库的角度出发向三维GIS发展,从商用数据库向非标准应用领域扩展,将三维空间信息的管理融入RDBMS中,或是从底层开发全新的面向空间的OODBMS, 如GODOT[5],GeoO2[6],GEO++[7],SmallWorld GIS。一个新的发展方向是将三维可视化与三维空间对象管理藕合起来,形成集成系统。
  (2)三维GIS相关软件发展概况
  但是迄今为止,目前国际国内还没有一个成熟完整的三维GIS系统,与三维GIS相关的系统大多集中在三维可视化方面,如EVS,Vis5D,Voxel,医学可视化及各种CAD软件等,也有一些三维系统部分实现三维GIS的功能,比较有名的软件有:LYNX, IVM(Interactive Volume Modeling), GOCAD, I/EMS,SGM等[8][9]。
1.2 三维GIS数据模型和数据结构
  上述软件的共同缺点是仅重视表达三维对象本身,对各对象间关系的表达没有足够的重视,因此管理大批量三维空间对象的能力较弱,也不能做一些GIS需要的空间分析。LYNX软件能够处理和表达三维地质数据,但它们不容易在其它领域推广使用,MGE系统有一些简单的三维模块,但也远不能满足三维GIS应有的要求。总起来说,这些软件在构造、表达三维对象上具有较强的能力,但管理和分析能力较弱。作者认为出现这种情况的一个主要原因是三维空间数据模型理论和技术的不成熟,另外空间数据库技术也正处于发展中,不象RDBMS那样具有成熟的理论和技术,因此导致了三维空间建模能力的薄弱。为此,许多学者和研究人员在这方面作出了很多努力[10]~[27],但仍然没有形成完整的三维GIS理论和开发出成熟的三维GIS系统。
  在完整的三维GIS系统研究和开发方面,BREUNIG曾经进行过较为系统的研究与实践[28]。他为三维GIS提出了一个空间信息集成模型,该模型以所谓的扩展复杂要素(e-complex)为内核,表达三维空间地学对象的几何性质,度量属性及对象间的复杂拓扑关系。以此为基础,他又进一步定义了拓扑操作,并将各种e-complex对象融入地学建模和管理的模型框架中,最后给出了一个地质应用的例子。该模型是以矢量模型为基础,对象及对象间的拓扑关系表达较为精确,但各种操作复杂费时,空间分析不易。
  国内李清泉也做过较为系统的三维GIS研究[9]。他以八叉树和不规则四面体为基础提出了三维GIS的混合数据模型。以栅格结构的八叉树作为对象描述的总体框架,控制对象空间的宏观分布,以矢量结构的不规则四面体描述变化剧烈的局部区域,较为精确地表达细碎部分,并将这两种模型进行有机地结合。这种混合模型是一种矢量栅格三维结合的有益尝试,在一些情况下比较合适,但还需要其它表达模型的补充,以提高表达、访问和操作的效率。
  作者认为,由于地学对象赋存形态各异,千变万化,各种模型又都有其优缺点,因此为三维GIS表达和分析服务的各种数据模型和数据结构设计,应当针对不同的数据获取方式、地学对象本身的大致形态和主要的应用目的设计不同的数据模型与结构[29]。以此将各种模型的长处充分发挥,进一步提高三维GIS表达和分析的效率。1.3 三维空间分析
  在三维空间分析方面做得较多的是计算机图形学领域里的工作者,但他们的工作往往偏重于几何图形与算法性能,例如边界追踪检测[30]~[32]、邻居寻找[33][34],很少考虑为地学目的服务的分析。地学领域曾有人在三维地质表面模拟中提出过三维边界搜索算法[35],但其算法较为复杂。作者曾提出过结构较为简单的邻域寻找算法[36],能在线性四叉树和线性八叉树中直接确定单元的邻居。三维空间分析中还有很多研究工作要做,例如三维拓扑关系的描述与构造,三维查询与统计分析等,有待于进一步的研究。
2.三维GIS的定义、特点及功能
2.1 三维GIS的定义
  从不同的角度出发,GIS有三种定义:①基于工具箱的定义,认为GIS是一个从现实世界采集、存贮、转换、显示空间数据的工具集合;②数据库定义,认为GIS是一个数据库系统,在数据库里的大多数数据能被索引和操作,以回答各种各样的问题;③基于组织机构的定义,认为GIS是一个功能集合,能够存贮、检索、操作和显示地理数据,是一个集数据库、专家和持续经济支持的机构团体和组织结构,提供解决环境问题的各种决策支持。基于工具箱的定义强调对地理数据的各种操作,基于数据库的定义强调用来处理空间数据的数据组织的差异,而基于组织的定义强调机构和人在处理空间信息上的作用,而不是他们需要的工具的作用。
  TURNER认为“Geographical Information System”主要用来区分纯粹的二维GIS与三维GIS[2],为强调在三维任务如地质或地貌应用上的扩展,人们创造了术语“Geoscientific Information System”(GSIS)[28]。后来这个词被修改为一个缩写形式“Geo-Information System”(GIS)[24][28]。为区分三维GIS与现今世界上比较成熟的流行的各种二维商业GIS,这里倾向于BREUNIG的观点[28],用GIS指代“Geo-Information System”,认为三维GIS是布满整个三维空间的GIS,与传统的基于平面的二维GIS或2.5维GIS明显不同,尤其体现在空间位置与拓扑关系的描述及空间分析的伸展方向上。
  三维GIS加上时间维方面的处理即为四维GIS。
2.2 三维GIS的特点
  在三维GIS中,空间目标通过X、Y、Z三个坐标轴来定义,它与二维GIS中定义在二维平面上的目标具有完全不同的性质。在目前二维GIS中已存在的0,1,2维空间要素必须进行三维扩展,在几何表示中增加三维信息,同时增加三维要素来表示体目标[9]。空间目标通过三维坐标定义使得空间关系也不同于二维GIS,其复杂程度更高。二维GIS对于平面空间的有限-互斥-完整划分是基于面的划分,三维GIS对于三维空间的有限-互斥-完整划分则是基于体的划分,因而,通过分析基于(单一)体划分的三维矢量结构GIS几何成分之间的拓扑关系,李青元提出五组简化的拓扑关系[37]。三维GIS的可视表现也比二维GIS复杂得多,以致于出现了专门的三维可视化理论、算法和系统。
  总起来说,与二维GIS相比,三维GIS对客观世界的表达能给人以更真实的感受,它以立体造型技术给用户展现地理空间现象,不仅能够表达空间对象间的平面关系,而且能描述和表达它们之间的垂向关系;另外对空间对象进行三维空间分析和操作也是三维GIS特有的功能。而与CAD及各种科学计算可视化软件相比,它具有独特的管理复杂空间对象能力及空间分析的能力。三维空间数据库是三维GIS的核心,三维空间分析则是其独有的能力。与功能增强相对应的是,三维GIS的理论研究和系统建设工作比二维GIS也更加复杂。2.3 三维GIS的功能
  RHIND基于二维GIS的发展状况提出了三维GIS可能包括的十项功能:数据采集和检验有效性;数据结构化和转化为新的结构(包括创建拓扑关系和从一种拓扑关系转化为另一种拓扑关系);各种变化(平移、旋转、比例、剪切(shear));选择;布尔操作(交、并差、或及切割断面、开隧道(tunneling)、建筑building);计算(体积、表面积、中心、距离、方向);分析;可视化;系统管理[23]。KELK为三维地学模拟提出过14项功能[24]:1)从其它系统中引进数据和部分分析功能;2)保存和操作真三维坐标数据;3)无原始坐标信息损失地变化方向;4)保存和显示地理对象内部组分的信息;5)能够方便地进行交互式修改,可针对地理对象及其数据库;6)允许满足不同数据模型要求的模型重建;7)将断层等特征作为事件考虑,允许它们影响地学对象;8)处理大的比例尺差异;9)处理内部流体运动和其它时间方面的事件;10)和其它定量公式交互;11)允许局部细节和更广的软中心(soft-focus)图片显示;12)视觉上使用户满意;13)分析各种建模趋势、模式及与其它GIS模块的联系;14)在主要的数据库中存贮模型和导出报表。
  BREUNIG从空间信息集成的角度为三维GIS的发展提出了三项必备的功能:1)复杂地学对象的管理和处理;2)能够对由各种空间对象表达形式表示的地学复杂对象进行有效的空间存取;3)能够对各种空间对象进行有效的空间操作[28]。ALEXANDER和SIGRID在城市三维GIS的设计者中提到了三维城市GIS应该具备的另两项功能:1)应能受益于现代数据获取方法的进步;2)三维城市GIS应面向未来的技术[38]。三维GIS 也必须解决一些传统问题:不确定性;误差定位和消除;处理数据模型的不连续;处理时态数据;处理在不同数据结构中的不同类型和不同比例尺数据[18]。