MapBasic是基于MapInfo平台的用户开发语言,包括300多条语句和功能。通过MapBasic的二次开发,能够扩展MapInfo的功能,实现程序的自动操作,而且可以方便地将MapInfo与其它软件进行集成,其主要特点是:
(1) 由于MapBasic是一种类Basic程序语言,所以使用简单;
(2) 便于MapInfo界面的改造,功能的扩展与应用的可视化;
(3) 支持OLE Automation和DDE(动态数据交换)技术,易于与其它应用软件相连接;
(4) 包含嵌入的SQL语句,数据查询、检索更加方便。
MapInfo和Mapbasic提供了放大、缩小、漫游、选择、空间实体组合/分割等基本的图形操作功能;同时MapBasic 可以直接读取点、线、面等空间实体和属性,并提供条件分析、统计分析、缓冲区分析等分析功能。
利用MapInfo进行开发主要有三种模式:
(1) 以MapInfo作为独立开发平台,利用MapBasic所进行的二次开发模式;
MapInfo Professional 提供了基本的GIS功能,如数据接收功能、建库功能、图形 功能、数据查询与检索功能、专题图制作功能、简单分析功能、数据输出功能等。而MapBasic是建立在MapInfo平台上的用户开发语言,是针对MapInfo的二次开发,完善MapInfo的功能和灵活地进行各种所需功能的开发。
(2) 将MapInfo作为OLE对象的开发模式;
尽管MapInfo Professional和MapBasic具有强大的功能,可以实现一般的GIS功能,但是随着用户需求的不断变化,其功能毕竟还是有限的。对于任何GIS软件平台而言,为了能够维持其生命力,就必须要求该平台具有可扩展能力,即支持OLE标准。MapInfo有效地解决了这个问题,允许其它开发语言将它作为OLE对象来进行开发。
(3) 利用基于ActiveX的MapX控件所进行的开发模式。
GIS软件的组件化是GIS软件发展的方向之一,即:利用ActiveX控件方式进行GIS系统的二次开发。MapX是MapInfo基于ActiveX技术的可编程控件,它集成了MapInfo几乎所有的功能,如地图显示,图形放大、缩小、选择、漫游等,制作专题地图,图层控制,ODBC功能,地理查询等等。
在GIS系统中,数据的工作量占整个系统开发的70-80%,所有GIS功能均须基于地理数据,由此可见合理的地理数据模型是GIS系统生存的基础。MapInfo Professional作为桌面地图系统的典范,其空间数据结构是不具备拓扑关系的,因此相对部门级或企业级地理信息系统而言,其空间分析能力较弱。但是它对硬件平台,软件环境,软件工具,要求较低,同时使用简单,价也较低。MapInfo是通过建立空间实体模型和空间索引来定义其空间数据模型的,利用Table来存储空间数据和属性数据。空间实体主要由点、线、面三种基本类型组成,采用面向对象的方法,每种实体对象均维护其本身的所有信息。空间索引是利用R-Tree技术来实现的。采用这种
=FD据模型可以简化数据管理的复杂性,解决部分的空间查询与分析功能,但仍有些空间分析功能如路径分析软件本身无法实现,须借助于外部开发语言(如Visual Basic, Visual C,Dephi等)来实现。
MapInfo的数据保存在中,主要是两种:内置和通过ODBC连接的外部。它的通过Table的形式进行数据的组织和管理,每一个Table可存放若干空间实体及对于每一个空间实体的若干属性说明。当然也可只存放属性数据。Table严按照关系模式规范化的要求设计,空间实体在Table表中的存储不允许重复,以保证空间实体记录的唯一性。有Table表结构,可建立空间实体与属性数据之间的连接关系,从而利用标准SQL来进行查询和检索。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-28016-18.html
他能告诉你的唯一真理就是
必将稳步向前