|
|
|
|

VC6.0+MapX编程总结

一、MapX的帮助 MapX的官方帮助文档是《MapX在线帮助》。 个人认为,这套文档过于简单,系统性偏差,与ArcEngine的帮助文档不可比。很多MapX的开发技巧在《MapX在线帮助》中查找不到,只能在互联网上搜索。 本文试图从一个程序员...

作者:GIS足迹来源:http://www.gisfoot.com/|2007年11月08日

一、 MapX 的帮助

       MapX 的官方帮助文档是《 MapX 在线帮助》。

       个人认为,这套文档过于简单,系统性偏差,与 ArcEngine 的帮助文档不可比。很多 MapX 的开发技巧在《 MapX 在线帮助》中查找不到,只能在互联网上搜索。

       本文试图从一个程序员的视角展开,来整理一下 MapX 的开发技巧。需要强调的是, VB+MapX 模式是在《 MapX 在线帮助》中重点描述内容,本文将侧重于 VC+MapX

 

二、 MapX 的对象组织

       MapInfo 作为地图编辑平台,需要解决一个核心问题: 如何组织地理世界的空间数据和属性数据,以及如何在电脑屏幕上绘制出来。 MapX 作为二次开发控件,其对象组织结构将直接体现 MapInfo 对于地理世界的理解。

       在阅读本文的同时,请读者打开《 MapX 在线帮助》,定位到“ The MapX Objects = 〉“ Intro - The MapX Objects ”。注意:《 MapX 在线帮助》是安装 MapX 后的帮助文档,比如我安装了 MapX4.0 ,那么通过“开始” = 〉“程序” = 〉“ MapInfo MapX 4.0 可以打开《 MapX 在线帮助》。

这里是 MapX 的对象结构图( OMD ), ArcEngine 的帮助文档也有类似的图。学习二次开发,需要熟悉这张图。这样能“一览众山小”,心里有谱,知道如何下手去搜索对象。

       从图中可以发现, OMD 有两条核心主线。一条是用于表达空间数据的 Layers->Layer->Feature->Parts 等对象系列;另一条是用于表达属性数据的 Datasets->Dataset->Fields->Field 等对象系列。

 

    这两条对象系列是 MapInfo 的精华所在。其他对象诸如注记、专题、查询等对象都是在两条主线上衍生出来的支线。有能力的读者,如果想从底层写一个地图编辑平台,也可以借鉴此 OMD 来组织自己的程序数据结构。

上一篇:南京大学MapInfo讲稿

下一篇:MapInfo软件下1:10000标准地形图配准实践