《第二章MapInfo空间数据拓扑关系模型.pdf》由会员分享,可在线阅读,更多相关《第二章MapInfo空间数据拓扑关系模型.pdf(10页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第二章 MapInfo 数据的空间组织 MapInfo 空间数据的拓扑关系模型 空间数据的拓扑关系模型是地理信息系统的基石。当前商用地理信息系统中,主要采用 POLYVRT 结构和“空间实体+空间索引”两种模型。MapInfo 采用称作“空间实体+空间索引”的拓扑关系模型。80 年代中后期出现的商用地理信息系统,尤其是桌面地理信息系统大多采用这种方式,包括 ESRI 的 ArcView。而采用 POLYVRT 模型的系统主如果以 Arc/Info、GeoMedia 等为代表的一些专业 GIS 产品。“空间实体+空间索引”模型的基础是“空间实体”。空间实体是地理实体的抽象,主要包括点、线、面三种
2、类型。每一个空间实体(图元 Feature)对象都保护着自己的所有属性。多个空间实体组成一个图层(Layer)。如图:图 MapInfo 实体结构 图 MapInfo 中图层组成“空间实体+空间索引”模型的空间查询功能是通过“空间索引”技术来实现的。空间索引的目的是对给定的空间坐标,能够以尽快的速度搜索到坐标范围内的空间对象。MapInfo 采用 R-Tree 技术将空间实体的最小外接矩形 MBR(Minimum Bounding Rectangle)存储在索引中,并按从大到小的顺序进行索引搜索。成立了空间索引,就可以快速地进行空间分析了。R-Tree最先是由A.Gunman在1984年提出的
3、,是一种采用对象界定技术的高度平衡树,是B树向多维空间进展的另一种形式,是目前最流行的动态空间索引结构之一。索引是一种有效的检索手腕。它是通过比较运算慢慢追踪到检索的对象。若是比较运算的开销专门大,则索引的效率很低,所起作用就不大。为此,现有的空间索引一般按点和MBR作为搜索对象。MBR是不规则区域的最小限定矩形。该矩形的数据结构为:RECT(ID,x1,x2,y1,y2),其中,ID为矩形对象标识;x1、x2、y1、y2 表示最大、最小范围。如此,空间查询能够分为两步:用MBR 排除不知足查询要求的对象,检查出一个候选对象集;用精准方式对候选对象集中的对象逐个进行校检,找出真正查询的对象集。
4、R-Tree空间索引方式进一步延伸了上述概念,设计一些虚拟的矩形目标,将一些空间位置相近的目标包括在那个矩形内,这些虚拟的矩形作为空间索引,它含有所包括的空间对象的指针,称为目录MBR,对应于R 树的中间结点。而具体的对应于每一个目标的矩形,称为对象MBR,对应于R-Tree的叶结点,如图:图 R-Tree 其中结点有以下结构:L:(E1,En)Ei:(MBR,p)即一个结点包括索引项E1,En(L min n L max)。其中,L min和L max别离代表结点中能够容纳的最小和最大的索引项数量;p是指针。在叶结点中,p 指向MBR 所近似表示的空间对象;在非叶结点中,p 指向含有MBR
5、中所有成员的子结点。R 树中每一个结点所能拥有的索引项数量是有上下限的。下限保证索引对空间的有效利用,索引项的数量小于下限的结点将被删除,该结点的索引项将被分派到其他的结点中;设立上限的原因是因为每一个结点只对应一个磁盘页,若是某个结点要求的空间大于一个磁盘页,那么该结点就要被划分为两个新结点,原来结点的所有索引项将被分派到两个新的结点中。在构造虚拟矩形时,应尽可能包括多的目标,矩形之间尽可能少的重叠,虚拟矩形还能够进一步地细分,即能够再套虚拟矩形形成多级空间索引。相对于,POLYVRT 的长处是多个不同的对象能够共用相同的结点,节省存储空间,但由此产生的问题是其结构加倍复杂,数据的编辑和保护
6、比较困难。而“空间实体+空间索引”模型虽然会造成公共结点的重复存储,可是其结构化的实体模型使得对某个对象的更改不会影响到其它对象的概念,从而大大增强了空间数据的可保护性。另外,基于 POLYVRT 结构的空间数据组织不能被规范为关系模式,而基于“空间实体+空间索引”模型能够规范为“实体-关系”模型,从而能够与关系数据库系统结合,在关系数据库内实现对空间数据的查询、分析和处置等操作。MapInfo 主要技术特点(1)以表(Table)的形式组织信息 每一个表都是一组 MapInfo 文件,这些文件组成了地图文件和数据库文件。为利用MapInfo,就需要有组成表的用户数据和地图文件。这些文件能够来
7、自 MapInfo 或由用户创建。用户要想在 MapInfo 中工作,就必需打开一个或多个表。MapInfo 通过表的形式将数据与地图有机地结合在一路。当用户在 MapInfo 中打开数据文件时,MapInfo 将创建一个表。那个表至少由两个独立的文件组成,一个是包括数据结构的文件,另一个是包括原始数据的文件。一个典型的 MapInfo 表将主要由*.tab、*.dat、*.wks、*.mdb、*.dbf、*.xls、*.map、*.id、*.ind 文件格式组成。(2)图形对象 MapInfo 内置的数据库管理系统是一种关系型数据库管理系统,也是用二维表组织数据。与其它关系型数据库不同的是表
8、结构中除可包括常常利用类型的属性列外,还引入一个图形对象列(OBJ 列),用于存储图形对象(如线、区域等)。MapInfo 提供许多图形对象的操作接口,利用这些接口能够生成和处置所需要的各类图形。(3)地图图层化 MapInfo 是按图层组织运算机地图的。也就是说,将一幅运算机地图加工成多个层层叠加的透明层,那个透明层就称为图层。每一个图层包括了整个地图的一个不同方面。例如,第一个图层包括市边界,第二个图层表示市府的符号,第三个图层由标注文本组成,把它们层层叠加就形成一幅完整的地图。在创建每一个图层时,都要为其成立一张表,MapInfo 就是通过这种方式使表与地图之间成立了联系。也就是说,Ma
9、pInfo 是以表的形式来进行管理的,每一个表一般包括两部份:地图部份和数据库(属性)部份。(4)专题地图 提供多种数据可视化的专题地图,能将数据库中的信息进行直观的可视化分析。利用专题渲染在地图上显示数据时,能够清楚地看出在数据记录中难以发觉的模式或趋势,为用户的决策提供依据。专题地图包括范围值、点密度、柱状图、品级符号、饼图和独立值六种形式。(5)内置 ODBC MapInfo 内置 ODBC,支持各类关系型数据库,支持 SQL 查询,从而保证了对原有数据库的沿用和对远程数据库地访问。具有空间查询的功能扩展(如缓冲区、叠加等),采用数据仓库的最新技术 OLAP(Online Analyti
10、cal Processing)的联机事物处置,对于应用程序实现图形查询和表查询提供了壮大的手腕。通过 MapInfo 中的 Easyload 能够把 MapInfo 的 Tab 文件上载到远程的数据库上面,比如 Microsoft SQL、Oracle 等大型数据上面。(6)支持多种数据格式及其转换 MapInfo 既支持数字化仪的图形输入方式,直接生成矢量图,也支持目前市场上流行的图形图象格式。可同意 AutoCAD 的 DWG、DXF 标准文件格式,还可通过 MIF 及 MID 文件与其它软件成立数据的接口。其中 MIF 文件内保留有图形信息,MID 文件内保留有图形的属性信息。MIF 及
11、 MID 文件通过 MapInfo 的菜单命令 Import 和 Export 来输入和产生。MapInfo 中的通用转换器(Universal Translator)能够实现多源数据的互操作。(7)二次开发工具 MapBasic 作为一个系统软件,MapInfo 提供了能够将其所有的功能用程序来驱动的方式,内置标准的二次开发工具-MapBasic。MapBasic 不仅与公共化的 Basic 语法相一致,具有大体一致的常常利用函数集(计算、字符串处置、文件 I/O、DLL 挪用等),而且利用MapBasic 语言所提供的函数、进程和语句命令能够完成许多有关图形对象管理的复杂操作和运算。它的真
12、正优势在于对 MapInfo 中的 Table 及其图形对象的管理所提供的特性和壮大功能。采用面向对象及事件驱动编程(8)集成二次开发能力 具有 OLE 和 OLE Automation 功能,能够方便地利用 Delphi、VB、VC 等多种开发工具,保证了新的应用程序与原有的应用界面维持一致,为往后的深层开发提供一个扩展空间。MapInfo 的数据组织 MapInfo 采用双数据库存储模式,即其空间数据与属性数据是分开来存储的。属性数据存储在关系数据库的若干属性表中,而空间数据则以 MapInfo 的自概念格式保留于若干文件中,二者通过必然的索引机制联系起来。为了提高查询和处置效率,MapI
13、nfo采用层次结构对空间数据进行组织,即按照不同的专题将地图分层(图层还能够分成若干图幅),每一个图层存储为若干个大体文件。(1)属性数据的表结构文件*.TAB 属性数据表结构文件概念了地图属性数据的表结构,包括字段数、字段名称、字段类型和字段宽度、索引字段及相应图层的一些关键空间信息描述。*.TAB 文件实际上是一个文本文件,能够在写字板中打开观察其内容。(2)属性数据文件*.DAT 属性数据文件中寄存完整的地图属性数据。在文件头以后,为表结构描述,其后首尾相接地紧随着各条具体地属性数据记录。(3)交叉索引文件*.ID 交叉索引文件记录了地图中每一个空间对象在空间数据文件(*.MAP)中的位
14、置指针。每四个字节组成一个指针。指针排列的顺序与属性数据文件(*.DAT)中属性数据记录寄存的顺序一致。交叉索引文件实际上是一个空间对象的定位表。(4)空间数据文件*.MAP 具体包括了各地图对象的空间数据。空间数据包括空间对象的几何类型、坐标信息和颜色信息等。另外还描述了与该空间对象对应的属性数据记录在属性数据文件(*.DAT)中的记录号。如此,当用户从地图上查询某一地图对象时,就可以够方便地查到与之相关的属性信息。图 MapInfo 的文件格式及数据关联机(5)索引文件.IND 文件头 字段数 字段 1 说明 字段 N 说明 图元数据描述:图幅范围 图层说明 图上实体描述 文件头 字段定义
15、 记录 1 记录 2 记录 M 属性数据 索引 1 索引 2 索引 N 文件交叉索引 空间数据 面,记录号,边界,填充 图例,颜色,大小 拐点书及坐标信息 线,记录号,坐标,线形 点,记录号,坐标 文件头*.tab 文件 *.dat 文件*.id 文件*.map 文件 索引文件并非是必需的,只有当用户规定了数据库的索引字段后 MapInfo 才会自动产生索引文件。索引文件中对应于每一个索引字段都有一个索引表。在每一个索引表中,先给出总的数据库记录数量,然后依照索引顺序给出每条属性数据记录在对应的索引字段处的具体属性数据和该记录在属性文件(.DAT)及交叉索引文件(*.ID)中的记录号。*.ta
16、b:该文件描述 MapInfo 表的结构。它是描述包括数据的文件的格式的小文本文件。*.dat(.mdb、.aid 或.dbf):这些文件包括表格数据。*.map:该文件描述图形对象(若是该表没有任何地图对象,则该文件将不存在)。*.id:该文件是将数据与对象相链接的交叉引用文件(若是该表没有如何地图对象,则该文件将不存在)。*.ind:它是索引文件。通过该索引文件,您能够利用 Find 对象搜索地图对象。图 MapInfo 的索引文件机制。MIF 与 MID GIS软件的空间数据互操作一般模式如下图:文件头 字段定义 记录 M 记录 1 记录 2 文件头 对象个数 对象 L 索引字段 1 的
17、值 对象 1 索引字段 1 的值 对象 2 索引字段 1 的值 索引 1 索引 2 索引 N 对象 L 索引字段 M 的值 对象 1 索引字段 M 的值 对象 2 索引字段 M 的值 对象 L 的记录号:2 对象 1 的记录号:N 对象 1 的记录号:1 对象个数 对象 L 的记录号:2 对象 L 的记录号:N 对象 L 的记录号:1 图 GIS软件空间数据互操作的一般模式 MIF文件是MapInfo的中间文件,类似于ArcView中间的E00格式文件。GIS软件之间的空间数据互操作是一般是通过对中间格式的文件进行的转换。比如:MapGIS、GeoMedia与MapInfo是通过MIF文件来完
18、成空间数据的互操作。掌握MIF文件的特征对空间数据的互操作有必然的作用。MID文件寄存MIF图形文件对应的属性文件。一个标准的MIF文件描述如下:Version 300MIF文件的版本 Charset WindowsSimpChinese概念字符串的类型(简体中文)Delimiter,定义字符分格符 CoordSys NonEarth Units m Bounds,概念坐标系统和图形边界 Columns 3表中包括的字段数 LANDUSE Decimal(9,0)字段LANDUSE为十进制有0个小数 LANDUSE_CO Decimal(9,0)字段LANDUSE为十进制有0个小数 Area
19、Float字段Area为浮点型 Data计入数据区 空间对象 Point Line Polyline Region Arc Text Rectangle Rounded rectangle Ellipse 空间对象属性 Pen Styles Brush Styles Symbol Styles Font Styles 在 CoordSys NonEarth Units m Bounds,中,边界值指的是图形的左下角和右上角的坐标。如下图:图 图形边界示用意 Grid 文件简介 基于 Grid 模型的空间分析是 GIS 空间分析的重要组成部份。当前流行的桌面 GIS 软将中的 Grid 都是以二
20、进制或以 ASCII 为基础的 Grid,如 MapInfo、ArcGIS 等。大部份Grid 文件是用来表达地表起伏,就是咱们常说的数字高程模型(Digital Elevation Models,DEMs)。Vertical Mapper、Discover 等 MapInfo 插件具有读取多源 Grid 数据的能力。Vertical Mapper、Encom Discover 插件能够读取转化的 Gird 如下表:表 常常利用的 Grid 文件 Grid 文件格式 文件说明 ASCII Grid(数值型)一种简单文本文基础的文件(头文件说明 Grid信息)ASCII Classified G
21、rid(分类型)一种简单文本文基础的文件(头文件说明 Grid信息)CRC-500 一种二进制 DEM(加拿大通讯研究中心)Geological Survey of Canada Grid 一种以文本为基础的 DEM DTED 一种二进制 DEM 文件 GeoSoft 一种二进制 DEM 文件(GeoSoft Inc.)MONA 一种以 x,y,z 文本为基础的 DEM UK Ordnance Survey Grid 一种 ASCII 格式的 DEM USGS DEM 一种 ASCII 格式的 DEM SDTS-Spatial Data Transfer Standard Grid 一种 DE
22、M 文件 Band Interleaved by Line(BIL)Grid 一种二进制 DEM 文件(包含 DEM 文件和 Image)ER Mapper Grid 一种二进制 DEM 文件(包含 DEM 文件和 Image)Surfer Grid 一种二进制 DEM 文件(Golden Software,Inc.)Vertical Mapper Grid 一种二进制 DEM 文件 MapInfo Grid MIG,MapInfo 本身的 Grid 文件 绝大部份 GIS 软件中的 Grid 数据采用 ASCII 格式或是二进制的 Grid 文件,所以对一般的 ASCII 格式和二进制的 G
23、rid 文件做介绍。ASCII 格式的 Grid 包括数值型 Grid 和分类型 Grid 两种格式的文件。数值型 Grid主要用于表达持续散布的自然现象如:高程、降雨量、气温的等;分类型 Grid 主如果用于表达中断的自然现象:如土地利用等。持续型 Grid 文件格式说明如图。图 ASCII 格式的 Grid(持续型)说明 分类型 Grid 文件格式说明如图。ncols 933 nrows 914 xllcorner yllcorner cellsize NODATA_value -9999 说明 ASCII 格式 Grid(连续型)ASCII 格式 Grid(连续型)Grid 中 cell
24、 中无值表达 Grid 的行列数 Grid 最大 x,yGrid 最大 cell 的大小 Grid 中 cell 的值 图 ASCII 格式的 Grid(分类型)说明 ncols 455 nrows 217 xllcorner 483937.yllcorner 4993312.cellsize nClasses 13 1 Hydrology/Lake 0 0 255 2 Built Up/Urban 255 130 123 3 Agricultural 255 255 144 4 Forest 0 130 0 5 Grassland 0 176 0 6 Built Up/Industrial
25、255 255 0 7 Built Up/Light Industrial 255 160 255 8 Hydrology/Wetland or Marsh 132 0 0 9 Shrub or Bush 144 108 0 10 Parkland 0 224 112 11 Built Up/Commercial 224 0 224 12 Barren 224 224 224 13 Hydrology/River 0 87 255 0 0 0 12 12 12 4 4 4 4 4 4 4 4 4 4 4 4 12 12 12 12 12 12 12 12 12 12 12 12 12 4 4
26、4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 44 4 4 4 4 4 4 4 4 1 1 1 1 1 1 1 1 9 9 9 9 9 9 9 9 9 9 9 9 2 说明 ASCII 格式 Grid(分类型)ASCII 格式 Grid(分类型)Grid 中分类数 Grid 的行列数 Grid 最大 x,yGrid 最大 cell 的大小 分类名称与 RGB 颜色值 Grid 中 cell 的值 参考文献:一、Vertical Mappe
27、r User Guide,2004 MapInfo Corporation.二、Discover Reference Manual,Encom Technology Pty Ltd.3、Surfer User Guide,2002 Golden Software,Inc.4、Cuttman A.R-Tree:A Dynamic Index Structure for Spatial Searching.Proc ACMSIGMOD Int.Conf.on Managerment of Data.Boston,MA,1984.5、Vincent Nq Tiko Kameda.The R-Link tree:A Recoverable Index Structure for Spatial:Proceedings of DEXA,Athens,Greece,1994 6、Chen J K,Huang Yinfu.A Study of concurrent Operations on R-Tree.Information Sciences,1997.7、张山山,杨宗亮.一种面向GIS 的时空索引方式.武汉大学学报信息科学版,(1):51-54.8、夏英,彭大芹.空间数据库系统中 R 树的并发控制设计与实现.运算机工程,2002.28(7):242-244.