3.2 空间数据的拓扑关系
地理信息系统同其它一些事务信息处理系统如银行管理系统,图书检索系统的主要区别在于地理信息系统中具有大量几何目标信息。这些几何目标信息还包含两类信息,一类是目标本身的位置信息;另一类是地物间的空间关系信息。如果忽略几何目标间的空间关系信息,那么从数据结构的角度看,地理信息系统的数据结构就可以设计成通常事务信息处理系统的形式。也就是说,由于地理信息系统必须同时考虑几何目标的空间关系、地物位置信息及特征信息,致使地理信息系统的数据结构比较复杂。为了研究几何目标的空间关系,在此引入拓扑关系的概念。
3.2.1 拓扑的基本概念
几何信息和拓扑关系是地理信息系统中描述地理要素的空间位置和空间关系的不可缺少的基本信息。其中几何信息主要涉及几何目标的坐标位置、方向、角度、距离和面积等信息,它通常用解析几何的方法来分析。而空间关系信息主要涉及几何关系的“相连”、“相邻”、“包含”等信息,它通常用拓扑关系或拓扑结构的方法来分析。拓扑关系是明确定义空间关系的一种数学方法。在地理信息系统中用它来描述并确定空间的点、线、面之间关系及属性,并可实现相关的查询和检索。从拓扑观点出发,关心的是空间的点、线、面之间的联接关系,而不管实际图形的几何形状。因此,几何形状相差很大的图形,它们的拓扑结构却可能相同。
图3-4(a)(b)所表示的图,其几何形状不同,但它们结点间拓扑关系是相同的,均可用图3-4(c)所示结点邻接矩阵表示。(c)中交点为1处表示相应纵横两结点相连。
同样,图3-5(a)(b)所表示的图,其几何形状完全不同,但各面块之间的拓扑邻接关系完全相同,如图3-5(c)邻接矩阵所示,(c)中交点为1处表示相应的两个面相邻。
总之,拓扑关系反映了空间实体之间的逻辑关系,它不需要坐标、距离信息,不受比例尺限制,也不随投影关系变化。因此,在地理信息系统中,了解拓扑关系对空间数据的组织,空间数据的分析和处理都具有非常重要的意义。
3.2.2 空间数据的拓扑关系
空间数据拓扑关系的表示方法主要有下述几种:
一、拓扑关联性
拓扑关联性表示空间图形中不同类型元素,如结点、弧段及多边形之间的拓扑关系。如图3-6(a)所示的图形,具有多边形和弧段之间的关联性P1/a1,a5,a6;P2/a2,a4,a6等,如图3-6(b)所示。也有弧段和结点之间的关联性,N1/a1,a3,a5,N2/a1,a6,a2等。即从图形的拓扑关联性出发,图3-6(a)可用如图3-6(b),(c)所示的关联表来表示。
用关联表来表示图的优点是每条弧段所包含的坐标数据点只需存储一次,如果不考虑它们之间关联性而以每个多边形的全部封闭弧段的坐标点来存储数据,不仅数据量大,还无法反映空间关系。
二、拓扑邻接性
拓扑邻接性表示图形中同类元素之间的拓扑关系。如多边形之间的邻接性,弧段之间的邻接性以及结点之间邻接关系(连通性)。由于弧段的走向是有向的,因此,通常用弧段的左右多边形号来表示并求出多边形的邻接性,如图3-6(a)所示图,用弧段走向的左右多边形表示时,得到表3-1(a)。显然,同一弧段的左右多边形必然邻接,从而得到如表3-1(b)所示的多边形邻接矩阵表。表中值为1处,所对应多边形相邻接,从表3-1(b)整理得到多边形邻接性表如表3-1(c)所示。
同理,从图3-6(a)可得到如表3-2所示的弧段和结点之间关系表。由于同一弧段上两个结点必连通,同一结点上的各弧段必相邻,所以分别得弧段之间邻接性矩阵和结点之间连通性矩阵如表2-3(a),(b)所示。
三、拓扑包含性
拓扑包含性是表示空间图形中,面状实体中所包含的其它面状实体或线状、点状实体的关系。
面状实体中包含面状实体情况又分为三种情况,即简单包含、多层包含和等价包含。分别如图3-7(a),(b)和(c)所示。
图3-7(a)中多边形P1中包含多边形P2,图3-7(b)中多边形P3包含在多边形P2中,而多边形P2,P3又都包含在多边形P1中。图3-17(c)中多边形P2,P3都包含在多边形P1中,多边形P2、P3对P1而言是等价包含。
3.2.3 拓扑关系的关联表达
拓扑关系的关联表达是指采用什么样的拓扑关联表来表达空间位置数据之间关系。
在地理信息系统中,空间数据的拓扑关联表达尤为重要,通常可采用全显式表达和半隐式表达方式。
一、全显式表达
全显式表达不仅明确表示空间数据多边形→弧段→点之间拓扑关系,同时还明显表达点→弧段→多边形之间关系。
为了描述图3-8所示图及其拓扑关系,可用关联表表3-4到表3-7来表示。其中表3-4,3-5自上到下表示基本元素之间关联性;表3-6,3-7自下到上表示基本元素之间关联性。这些表的集合即为图3-8的拓扑关联表的全显式表示。
二、半隐式表示
分析表3-4到表3-7可知,从表3-5可以推导出表3-6。同样,从表3-6可推导出表3-5,而且,这种推导相当简单。同时,从表3-4和表3-5也可推导出表3-7,但这种推导关系比较复杂。基于上述原因,为了简化拓扑关联表达,又便于使用,常常选择表3-4,表3-5和表3-6中的一个,以及表3-7来表达矢量数据结构中不同元素之间拓扑关联性。在此基础上,还可以进一步把表进行合并,形成如表3-8所示的半隐式表示。
上述诸表在不同应用场合,反映出不同重要性,如在网络分析系统中表3-6的显式表示可带来方便。相反,在以面状地块为分析对象的系统中,表3-6的显式表示完全可省略。