2、组件式G|S 是把GIS的各大功能模块划分为几个控件,每个控件完成不同的功 能。各个GIS控件之间,以及GIS控件与其它非GIS控件之间,可以方便 地通过可视化的软件开发工具集成起来,形成最终的GIS应用。控件如 同一堆各式各样的积木,它们分别实现不同的功能(包括GS和非GIS功 能),根据需要把实现各种功能的“积木”搭建起来,就构成应用系统。 (1)组件式GIS开发平台的结构 基础组件:面向空间数据管理,提供基本的交互过程,并能以灵活 的方式与数据库系统连接; 高级通用组件:由基础组件构造而成,面向通用功能,简化用户开 发过程,如显示工具组件、选择工具组件、编辑工具组件、属性浏览器 组件等等。它们之间的协同控制消息都被封装起来。这级组件经过封装 后,使二次开发更为简单; Page 7 MapI p Info
Page 7 2、组件式GIS 是把GIS的各大功能模块划分为几个控件,每个控件完成不同的功 能。各个GIS控件之间,以及GIS控件与其它非GIS控件之间,可以方便 地通过可视化的软件开发工具集成起来,形成最终的GIS应用。控件如 同一堆各式各样的积木,它们分别实现不同的功能(包括GIS和非GIS功 能),根据需要把实现各种功能的“积木”搭建起来,就构成应用系统。 (1)组件式GIS开发平台的结构 • 基础组件:面向空间数据管理,提供基本的交互过程,并能以灵活 的方式与数据库系统连接; • 高级通用组件:由基础组件构造而成,面向通用功能,简化用户开 发过程,如显示工具组件、选择工具组件、编辑工具组件、属性浏览器 组件等等。它们之间的协同控制消息都被封装起来。这级组件经过封装 后,使二次开发更为简单;
行业性组件:抽象出行业应用的特定算法,固化到组件中,进一 步加速开发过程。以GPS监控为例。对于GPS应用,除了需要地图显示 信息查询等一般的GIS功能外,还需要特定的应用功能,如动态目标 显示、目标锁定、轨迹显示等。这些GPS行业性应用功能组件被封装 起来后,开发者的工作就可简化为设置显示目标的图例、轨迹显示的 颜色、锁定的目标,以及调用、接受数据的方法等。 缺点:效率相对低下;支持的空间数据量有限;支持的功能有限 只覆盖了G|S系统的部分功能;系统的可靠性、容错性有待提高。开 发及使用过程中必须时刻注意 Windows系统0LE系统注册表的正确。 GIS构件的设计主要遵循应用领域的需求。例如ESR地Map0b」 jects 就是以空间数据访问、查询、制图为主要目标的GIS构件。GIS组件的 代表作应首推Map0 b jects以及MapX等。 Page 8 MapI p Info
Page 8 • 行业性组件:抽象出行业应用的特定算法,固化到组件中,进一 步加速开发过程。以GPS监控为例。对于GPS应用,除了需要地图显示、 信息查询等一般的GIS功能外,还需要特定的应用功能,如动态目标 显示、目标锁定、轨迹显示等。这些GPS行业性应用功能组件被封装 起来后,开发者的工作就可简化为设置显示目标的图例、轨迹显示的 颜色、锁定的目标,以及调用、接受数据的方法等。 缺点:效率相对低下;支持的空间数据量有限;支持的功能有限, 只覆盖了GIS系统的部分功能;系统的可靠性、容错性有待提高。开 发及使用过程中必须时刻注意Windows系统OLE系统注册表的正确。 GIS构件的设计主要遵循应用领域的需求。例如ESRI地MapObjects 就是以空间数据访问、查询、制图为主要目标的GIS构件。GIS组件的 代表作应首推MapObjects以及MapX等
Mapobjects和MapX的主要功能对比 功能 Mapobjects+ MapX Arcview的SHP、ARC/INFO的 显示的地图数据格式 coverage、SDE图层 MapInfo的数据格式 盎加栅格图像 有 有 匚对地图的常用操作。放大、缩小、漫游等 放大、缩小、漫游等φ 图层控制 增加、移走、设置当前层φ 增加、移走、设置当前层 属性数据绑定有 有 1.通过鼠标选取特征 1.通过鼠标选取特征 地图信息查询方式2.通过sQL查找特征 2.通过SQL查找特征 3.通过空间操作选取特征。3.通过空间操作选取特征 专题地图 较弱 GFS集成 有 用户绘图图层4 无 有有有 ++ 生成辑地图对象。较弱 较弱 地图标注 有 有 地图符号化 较弱 较强 分析功能 地理编码φ 无有 无有 可使用的开发语言心 、v、 Power Builder、 Delph C、v、 PowerBuilder、 ccess等 Delphi、 Lotus notes等中 Page 9 MapI p Info
Page 9 MapObjects和MapX的主要功能对比
组件式GIS与MapX 13MapX简介 1、MapX—地图化的 ActivX MapX是 MapInfo公司向用户提供的具有强大地图分析功能的 Activex 控件产品。由于它是一种基于 Windows操作系统的标准控件,因而能支 持绝大多数标准的可视化开发环境如 Visua丨C++、 Visual bas ic、 De l ph i、 Power Buil der等。编程人员在开发过程中可以选用自己最熟 悉的开发语言,轻松地将地图功能嵌入到应用中,并且可以脱离 Map Info的软件平台运行。利用MapX能够简单快速地在企业应用中嵌入 地图化功能,增强企业应用的空间分析能力,实现企业应用的增值。 MapX采用基于 Map Info profess iona的相同的地图化技术,可以实现 Map Info profess iona具有的绝大部分地图编辑和空间分析功能。而 且MapX提供了各种工具、属性和方法,实现这些功能是非常容易的。 Page 10 MapI p Info
Page 10 •一、组件式GIS与MapX 1.3 MapX简介 1、MapX—地图化的ActivX MapX是MapInfo公司向用户提供的具有强大地图分析功能的ActiveX 控件产品。由于它是一种基于Windows操作系统的标准控件,因而能支 持绝大多数标准的可视化开发环境如Visual C++、Visual Basic、 Delphi、PowerBuilder等。编程人员在开发过程中可以选用自己最熟 悉的开发语言,轻松地将地图功能嵌入到应用中,并且可以脱离 MapInfo的软件平台运行。利用MapX能够简单快速地在企业应用中嵌入 地图化功能,增强企业应用的空间分析能力,实现企业应用的增值。 MapX采用基于MapInfo Professional的相同的地图化技术,可以实现 MapInfo Professional具有的绝大部分地图编辑和空间分析功能。而 且MapX提供了各种工具、属性和方法,实现这些功能是非常容易的
在VB中加入MapX组件 屈性页 General x 工 M 颜色 t圖 General Layers I Data I Th 以字中可以被用到 的控显 ited States 口到工具箱里。 A Rotation □·把M a 002857749287 Redraw Centery 1210893702219 Projection ted sta A Current 1000-Arrow 口ap1Map 按字母序|按分类序 确定 取消 应用() 名称) 〔自定义〕 现在就可以在程序中增加地图了 AutoRedraw BcC1x口000o 在工具箱中选择Ma)的控制图标更,m 96.000285774 39.121089370E CheckEscapeKey 20 在窗体中放置MapX控件,就可以看到 urrentTool1000-miArrcx 网曾 美国)地图显示在应用程序窗体上了 〔自定义 属性页 MapI p Info
Page 11 ◆ 工具箱是一个控件集,里面包括在程序中可以被用到 的控件。用户自定义的控件也可以增加到工具箱里。 ◆ 把MapX增加到工具箱中去: • 工程 菜单 → 部件 • 选中MapInfo MapX V5项 • 确定 OK ◆ 现在就可以在程序中增加地图了 • 在工具箱中选择 MapX的 控制图标 • 在窗体中放置MapX控件,就可以看到一个缺省的( 美国)地图显示在应用程序窗体上了。 • 属性页 在VB中加入MapX组件