系统采用的数据模型

如题所述

数据模型是数据描述、数据联系、数据语义和一致性约束的概念工具的集合,可以按不同的目的和要求对它进行分类(Abraham Silbers-chatz,2000):

(1)基于对象的逻辑模型用于在逻辑层和视图层上描述数据。其特点是提供灵活的结构组织能力,允许显式定义数据约束。典型的模型包括:

①实体-联系模型;

②面向对象模型;

③语义数据模型;

④功能数据模型。

(2)基于记录的逻辑模型用于在逻辑层和视图层上描述数据关系模型。与基于对象的数据模型不同,基于记录的模型既用来定义数据库的全局逻辑结构,又用来提供关于实现的高层描述。典型的模型包括:

①关系模型;

②网状模型;

③层次模型。

(3)物理数据模型用于在最低层次上描述数据,包括:

①一致化模型;

②框架存储模型。

地理数据模型是地理实体及其关系的形式化抽象和数学描述(王家耀,2001)。一个基本的数据模型可能涉及多种数据结构,而一个复杂的模型又可能涉及多个基本模型。按空间几何对象的表达方式,地理信息系统的基本数据模型可分为矢量数据模型和栅格数据模型(邬伦等,2001;汤国安等,2000;修文群等,1999;陈俊等,1998;Jeffrey Star等,1990)。作为基本数据模型,它们为绝大多数的通用和专用地理信息系统所支持。

一、矢量模型

二维矢量数据模型(vector data model)把空间几何对象划分为三种基本类型:点对象(point objects)、线对象(lineob jects)和面对象(surface objects)。二维矢量数据模型按有无拓扑关系分为实体型矢量数据模型和拓扑型矢量数据模型(张超,2000)。

在实体型二维矢量数据模型中,点对象用平面坐标对(x,y)表示,线对象用两个或两个以上有序坐标对来表示,面对象用一条或一条以上首尾相连的线(或弧段)来表示(图4-1)。表4-1是图4-1中各面对象的实体型矢量数据模型的(BNA格式)表示(张超,2000)。

图4-1 几何对象的表示

在拓扑型二维矢量数据模型中,空间几何对象由结点和弧段两种几何要素来表示(图4-1)。表4-2是图4-1中各弧段几何要素的拓扑矢量数据模型表示。表4-3是图4-1中各结点几何要素的拓扑矢量数据模型表示。表4-4是图4-1面对象的拓扑矢量数据模型表示,表中弧段前的负号表示该弧段为内环多边形上的弧段。

表4-1 实体矢量模型面对象的表示

表4-2 拓扑矢量模型弧段要素的表示

表4-3 拓扑矢量模型结点要素的表示

表4-4 拓扑矢量模型面对象的表示

荷兰学者Martien Molenaar(1992)提出了基于三维矢量图的形式化数据结构(formal data structure for 3D vector maps,简称3D FDS),并从该数据结构建立起三维矢量数据模型,该数据模型把空间几何对象划分为点对象(point objects)、线对象(line objects)、面对象(surface objects)和体对象(solid object s)4种基本类型如下:

(1)点对象,也称为零维对象,只有空间位置而无空间扩展。

(2)线对象,也称为一维对象,只能在长度上做一维扩展,具有一定的形状,由一系列的(曲)线段来描述,这些(曲)线段在空间中可以有不同的方向,(曲)线段之间相互连接;基本线对象既没有分支,也没有环,由相互连接的(曲)线段组成。

(3)面对象,也称为二维对象,具有面积和周长作为空间可扩展属性,具有三维形状,由(曲)面片组成;基本面对象不能自相交,不能有多于两个(曲)面片相交于同一边界线,组成基本面对象的(曲)面片彼此相连。

(4)体对象,也称为三维对象,具有体积和表面积作为空间可扩展属性,由(曲)面片组成的表面所界定;一个基本的体对象只能有一个外界面,但可以有几个内界面。

三维几何对象由结点(nodes)、弧(arcs)、边(edges)和(曲)面片(faces)4种几何要素表示如下:

(1)结点包含位置信息,用一个三元有序数组(x,y,z)表示,一个结点可以是一个点对象,也可以隐含在体对象内部(ISIN)或面对象上(ISON),也可以是弧的起点或终点。

(2)弧为两个结点间的有向连接,一个结点是弧的起始结点,另一个是弧的终止结点;弧可以是一个线对象的一部分,也可以隐含在一个体对象里或在一个面对象上。

(3)边为中介几何元素,是面对象边界的一部分,与面的关系是M∶1,即多对一的关系;一个面对象的所有边的方向应该一致,边与弧相联系,组成边的弧的方向与该边的方向相同或相反。

(4)(曲)面片为最高级别的几何元素,它可以有形状信息,(曲)面片的边界由它的边来完整描述:一个或多个相连的(曲)面片可以与一个“面对象”联系起来,它们相对于面对象的关系是“部分”关系;(曲)面片以“左”或“右”的关联方式与体对象相联系,并且成为体对象边界的一部分。

作为3D FDS矢量数据模型完整描述的一部分,Molenaar给出了12个约定:

(1)每一个基本对象应该并且只能属于上述四类几何对象中的一类,即这个分类是完整和排它的。

(2)属于某一个类的基本对象应该具有一个几何类型。

(3)为了描述几何特征,所用到的点都作为结点。

(4)弧用一组直线段来表示(除非它们的形状被专门描述,但是这些弧不允许形成环,即起点和终点不能是同一结点)。

(5)每对结点之间,最多有一条弧直接连接它们,但可以被多个弧链相连,这里弧链由首尾相连的弧组成。

(6)两条弧间不能交叉,若出现这种情况,它们应当被四条有共同端点的弧所代替。

(7)面片是平面上的区域(除非它们在其他地方被明确地描述),面片之间不能相交。

(8)面片只通过它们的边界相连,而不能有其他的相交形式,即面片之间不能交叉,也不允许一个面片的边界落在另一个面的内部。

(9)面片的边应该有一致的方向,通过该方向运用螺旋法则可以定出面片的“左”、“右”方向。

(10)弧只能通过结点进入或离开面,不能穿过面。

(11)对于几何要素:①一个结点最多可以代表一个点对象。②一条弧最多作为某个线对象的一部分。③一个面片最多作为某个面对象的一部分。④一个面片在它的右侧只有一个体对象。⑤一个面片在它的左侧只有一个体对象。

(12)对于几何对象:①点对象由一个结点精确地表示。②线对象由一条或多条弧链接而成,有起点和终点,无分叉和环。③面对象由一个或几个相连接的面片构成。④体对象完全由它的边界面构成。

3D FDS矢量数据模型的几何对象和几何要素及其相互之间的关系如图4-2所示(Molenaar,1992)。

图4-2 对象和要素及相互关系

二、栅格模型

栅格数据模型(raster data model)是通过把地理空间划分为一致且规则的单元(cells)而建立起来的。一个单元也称为一个像元,在一个像元上只允许有一个属性值,属性相同的像元组成该模型的一个对象。如果要在同一个像元上表示多种地理属性,就需要按地理属性对数据分层,使得每个数据层只允许一种类型的属性值。栅格数据模型的特点是数据量大而结构简单,不同类型的空间数据层不需要经过复杂的几何计算就可以进行叠加操作,如两幅或更多幅遥感图像的叠加操作等。

二维栅格数据模型把空间几何对象划分为3种基本类型:点对象(point objects)、线对象(line objects)和面对象(surface objects)。其中点对象用一个像元表示,线对象用一串像元表示,而面对象由一片彼此相连的像元表示。二维栅格数据的3种组织方式(龚健雅,2001)如图4-3所示。

图4-3 栅格数据的组织方式

由于栅格数据具有数据量大的特点,在存储时一般采用压缩编码方式。二维栅格数据的压缩存储编码方法通常可采用链式编码、行程编码、块式编码或四叉树编码等编码方法(吴信才,2002)。

三维栅格数据模型把空间几何对象划分为4种基本类型:点对象(point objects)、线对象(line objects)、面对象(surface objects)和体对象(solid objects)。三维栅格数据的组织方式与二维栅格数据的组织方式相似,其压缩存储编码方法通常采用八叉树编码方法。本系统中采用的晶胞模型是栅格模型的一个特例。

温馨提示:答案为网友推荐,仅供参考