标题:简单数据结构与拓补数据结构的比较
关键词:简单数据结构、拓补数据结构
(一) 摘要
简单数据结构具有结构简单、直观、易实现以实体为单位的运算和显示的优点
在简单数据结构中,空间数据按照以基本的空间对象(点、线或多边形)为单元进行单独组织,不含有拓扑关系数据,最典型的是面条(Spaghetti)结构。
拓补:即形状的研究。拓扑数据结构的构建实际上大大增加了数据编辑的难度和复杂性。
(二)介绍:
矢量数据结构: 基于矢量模型的数据结构简称为矢量数据结构。矢量也叫向量,数学上称“具有大小和方向的量”为向量。在计算机图形中,相邻两结点间的弧段长度表示大小,弧段两端点的顺序表示方向,因此弧段也是一个直观的矢量。
矢量数据结构是通过记录坐标的方式来表示点、线、面等地理实体空间分布的一种数据组织方式。这种数据组织方式定位明显,属性隐含,能最好地逼近地理实体的空间分布特征,数据精度高,数据存储的冗余度低,便于进行地理实体的网络分析,但对于多层空间数据的叠合分析比较困难。
适量数据结构师一种最常见的图形数据结构,主要用于表示地图图形元素集合数据之间及其与属性数据之间的相互关系。通过记录坐标方式,尽可能的将点、线、面地理实体表现得精确无误。
矢量数据结构的获取方法主要有:手工数字化法、手扶跟踪数字化法、数据结构转换法。
矢量数据结构分为以下几种主要类型: 简单数据结构、拓扑数据结构等
1、简单数据结构:
在简单数据结构中,空间数据按照以基本的空间对象(点、线或多边形)为单元进行单独组织,不含有拓扑关系数据,最典型的是面条(Spaghetti)结构。 (1)、点实体
点实体包括由单独一对x,y坐标定位的一切地理或制图实体。在矢量数据结构中,除点实体的x,y坐标外还应存储其它一些与点实体有关的数据来描述点实体的类型、制图符号和显示要求等。
点是空间上不可再分的地理实体,可以是具体的也可以是抽象的。
(2)、线实体
线实体可以定义为直线元素组成的各种线性要素,直线元素由两对x,y坐标定义。 最简单的线实体只存储它的起止点坐标、属性、显示符等有关数据。
弧、链是n个坐标对的集合,这些坐标可以描述任何连续而又复杂的曲线。组成曲线的线元素越短,x,y坐标数量越多,就越逼近于一条复杂的曲线。既要节省存储空间,又要求较为精确地描绘曲线,唯一的办法是增加数据处理工作量。弧和链的存储记录中也要加入线的符号类型等信息。
线的网络结构。简单的线或链没有携带彼此互相连接的空间信息,而这种连接信息又是
供排水网和道路网分析中必不可少的信息。系。
线实体主要用来表示线状地物(公路、水系、山脊线)、符号线和多边形边界,有时也称为“弧”、“链”、“串”等,其矢量编码的内容如图2-22所示。
其中唯一标识是系统排列序号;线标识码可以标识线的类型;起始点和终止点可以用点号或直接用坐标表示;显示信息是显示时的文本或符号等;与线相联的非几何属性可以直接存储于线文件中,也可单独存储,而由标识码联接查找。
2
(3). 面实体
多边形(有时称为区域)数据是描述地理空间信息的最重要的一类数据。
多边形矢量编码,不但要表示位置和属性,更重要的是能表达区域的拓扑特征,如形状、邻域和层次结构等,以便恢复这些基本的空间单元可以作为专题图的资料进行显示和操作,由于要表示的信息十分丰富,基于多边形的运算多而复杂,因此多边形矢量编码比点和线实体的矢量编码要复杂得多,也更为重要。
2、拓扑数据结构
(1)拓扑的基本概念
拓补:即形状的研究。 (2)、拓扑数据结构包括DIME(对偶独立地图编码法)、POLYVRT(多边形转换
器)、TICER(地理编码和参照系统的拓扑集成)等。
(3)、一幅地图要传输地理要素的有关区域信息,包括位置信息、属性信息和
空间信息。表示要素之间的临接关系和包含关系,在地图上借助图形来识别和解释,在计算机中按拓扑结构加以定义。拓扑结构是明确定义空间结构关系的一种数学方法;在GIS中,用于空间数据的组织、分析和应用在GIS中。 (4)、具有拓扑关系的矢量数据结构就是拓扑数据结构,拓扑数据结构是GIS
的分析和应用功能所必需的。拓扑数据结构的表示方式没有固定的格式,还没有形成标准,但基本原理是相同的。
(5)、拓扑要素:
①矢量数据可抽象为点(结点)、线(链、弧段、边)、面(多边形)三种要素,即
称为拓扑元素。
②点(结点):孤立点、线的端点、面的首尾点、链的连接点等。 ③线(链、弧段、边):两结点间的有序弧段。 ④面(多边形):若干条链构成的闭合多边形。 (6)、拓扑结构是明确定义空间结构关系的一种数学方法;在GIS中,用于空间
数据的组织、分析和应用在GIS中。为了真实反映地物,不仅包括实体的大小、形状及属性,而且要反映出实体之间的相互关系。
(三)比较:
(一)简单数据结构与拓补数据的描述比较:
1、简单数据结构的描述:
矢量数据的简单数据结构分别按点、线、面三种基本形式来描述(图2-2-2)。
图中有关说明如下:
(1)、标识码:按一定的原则编码,简单情况下可顺序编号。标识码具有唯一性,是联系
矢量数据和与其对应的属性数据的关键字。属性数据单独存放在数据库中。
(2)、点结构中的X,Y坐标:是点实体的定位点,如果是有向点,则可以有两个坐标对。 (3)、线结构中的坐标对数n:是构成该线(链)的坐标对的个数。 X,Y坐标串是构成线(链)
的矢量坐标,共有n对。也可把所有线(链)的X,Y坐标串单独存放,这时只要给出指
向该链坐标串的首地址指针即可。
(4)、面结构是链索引编码的面(多边形)的矢量数据结构,链数n指构成该面(多边形)的链
的数目。链标识码集指所有构成该面(多边形)的链的标识码的集合,共有n个。
2、拓补数据结构的描述:
拓扑数据结构的关键是拓扑关系的表示,而几何数据的表示可参照矢量数据的简单数据结构。在目前的GIS中,主要表示基本的拓扑关系,而且表示方法不尽相同。下面举一表示矢量数据拓扑关系的例子(图2-2-3)。
在图2-2-3的矢量图中,有面A、B、C、D、E、F,链L1、L2、L3、L4、L5、L6、L7、L8、L9、L10、L11、L12、L13,和结点P1、P2、P3、P4、P5、P6、P7、P8、P9。则拓扑数据结构表示见图2-2-4。
面-链关系中的“-”号表示边的方向与构成面的方向相反,链-面关系中O为制图区域外部的多边形,常称为包络多边形。
(二)简单数据结构与拓补数据结构的编码方式及关系比较:
1.简单数据结构点、线、面实体的坐标编码:
任何点线面的实体都可以用直角坐标点x,y来表示。这里的x,y可以对应于地面坐标经度和纬度,也可以对应于数字化时所建立的平面坐标系x和y。对于点
则是一对(x,y)表示,对于线则是用一组有序的x,y坐标对表示,对于多边形则是用一组有序的但首尾坐标相同的坐标对表示,这些点是由光滑的曲线间隔采样而来。
同样的曲线长度,取点越多,以后恢复时越接近原来曲线,反之,取点过少,则恢复时就会成为折线。图2-23为点线面的实体的坐标表示和坐标点编码文件。
拓补数据结构的编码及拓补关系:
空间拓扑关系是讨论空间实体间拓扑属性,即在拓扑变换旋转、平移、缩放等下保持不变的空间关系,它是GIS中不可缺少的一种基本关系。