胡殿常,王晋秀
(解放军1206地理信息中心,河北廊坊065000)
最短路径分析在MapInfo中的实现
胡殿常,王晋秀
(解放军1206地理信息中心,河北廊坊065000)
采用MapBasic语言,对MapInfo进行功能扩充,在MapInfo中实现最短路径分析。程序首先完善路网表结构,增加路网拓扑所必需的字段;然后进行路网拓扑,建立拓扑关系,并在此基础上采用Floyd算法实现最短路径分析。
MapInfo;最短路径分析;MapBasic;Floyd;GIS
近几年,GIS在我国快速发展,并随着计算机软、硬件技术的不断成熟,这一高新技术已由研究室走向实际应用领域,融入了人们的日常生活。电子导航是最重要的应用之一,其中最短路径分析是构成电子导航的灵魂。此外,最短路径分析在通信网络、电力网络等地理信息系统中也有着广泛的应用。
MapInfo是一款桌面地理信息系统软件,以简单易学、性能稳定等特点,在GIS领域占有一定优势。由于其数据结构相对简单,无拓扑关系,因此软件中没有提供诸如最短路径分析等基于拓扑关系的功能。但MapInfo提供了强大的二次开发接口,很多功能可通过二次开发解决。
MapInfo提供了3种二次开发方法:MapBasic语言、MapX组件和OLE技术。MapX和OLE适合开发独立的应用系统,而MapBasic比较适合MapInfo功能扩展编程。MapBasic是MapInfo自带的二次开发语言,是一种类似Basic的解释性语言,利用Map-Basic编程生成的*.mbx文件可在MapInfo软件平台上运行。本文主要介绍采用 MapBasic语言在MapInfo中实现最短路径分析的方法。
在MapInfo中,路网或其他网络都以“线”的方式表现。每条线有“起点”和“终点”,统称“端点”。线与线首尾相连,构成路网,连接处称为“顶点”或“节点”。……