http://www.paper.edu.cn
- 1 -
基于 MapInfo 数据的最短路径计算
卞魏国
辽宁工程技术大学测绘与地理科学学院,辽宁阜新(123000)
E-mail: bianwg@sina.com
摘 要:最短路径分析是 GIS 空间分析的重要功能,其实现有赖于空间数据中实体之间的
拓扑关系,而 MapInfo 数据的实体之间并没有自动建立拓扑结构,如果需要使用 MapInfo
数据实现最短路径分析,则需要人工建立拓扑结构。本文阐述了如何为 MapInfo 数据的实体
建立拓扑结构并使用 Dijkstra 算法实现最短路径计算,可以为在 MapInfo 系列平台内实现最
短路径分析提供一些参考。
关键词:最短路径;MapInfo 数据;拓扑关系;Dijkstra
1. 引言
最短路径的求解是图论中的经典问题,Dijkstra 是最著名的最短路径算法,它用于计算
从某个源点到其余各个顶点的最短路径,从而也就获得了特定两点之间的最短路径。最短路
径分析也是 GIS 空间分析中最基本的、应用中最常用的功能,其实现需要空间数据的拓扑
信息。
MapInfo 产品在 GIS 商用软件市场中占据相当市场。MapInfo 数据是其系列产品 MapInfo
Professional、MapX、MapXtreme 的空间数据源,然而 MapInfo 数据的实体之间先天并不具
备拓扑关系,这为使用其实现最短路径等空间分析带来了障碍。要解决这个问题,只有人工
为其建立拓扑关系。
2. 空间数据的拓扑关系
在地理信息系统中,对于凡具有网状结构特征的地理要素,例如自然与行政的分区、各
种资源类型的空间分布以及交通网等,都存在结点、弧段和多边形之间的拓扑结构。拓扑结
构是明确定义空间结构关系的一种数学方法,在地理信息系统中,它不但用于空间数据的编
辑和组织,而且在空间分析和应用中都具有非常重要的意义。
空间数据的拓扑关系包括:
1.拓扑邻接。指存在于空间图形的同类元素之间的拓扑关系。例如结点邻接关系;多边
形邻接关系。
2.拓扑关联。指存在于空间图形的不同元素之间的拓扑关系。例如结点与弧段的关联关
系;多边形与弧段的关联关系。
3.拓扑包含。指存在于空间图形的同类,但不同级的元素之间的拓扑关系。包含关系分
简单包含、多层包含和等价包含三种形式。
空间数据的拓扑关系,对地理信息系统的数据处理和空间分析,具有重要的意义,因为:
1.根据拓扑关系,不需要利用坐标或距离,可以确定一种地理实体相对于另一种地理实
体的空间位置关系。因为拓扑数据已经清楚地反映出地理实体之间的逻辑结构关系,而且这
种拓扑数据较之几何数据有更大的稳定性,即它不随地图投影而变化。
2.利用拓扑数据有利于空间要素的查询。例如应答像某区域与哪些区域邻接;某条河流
能为哪些政区的居民提供水源;与某一湖泊邻接的土地利用类型有哪些;特别是野生生物学
家可能想确定一块与湖泊相邻的土地覆盖区,用于对生物栖息环境做出评价等等,都需要利
用拓扑数据。