MapObjects中文指导
- 格式:doc
- 大小:399.00 KB
- 文档页数:75
DOC.NO:CSUT. GIS-RST-01-04-0002A (MODevelopment.doc)Normal(一般)用MapObjects进行应用开发Version 1.0.02001.04.17目录1. 了解MAPOBJECTS (1)1.1组件软件 .......... 错误!未定义书签。
1.2M AP O BJECTS的功能 (1)1.3M AP O BJECTS简介 (2)1.3.1 MapObjects和OLE containers (2)1.3.2 部件软件的优势 (2)1.4使用M AP O BJECTS (3)1.4.1 用MapObjects编写程序的步骤31.4.2 安装MapObjects (3)1.4.3 加入一Map (3)1.4.4 加入一Layer (3)1.4.5 编写代码和增加属性 (4)1.4.6 取得MapObjects的帮助 (4)1.4.7 运行工程 (5)1.5使用OLE A UTOMATION OBJECTS (5)1.5.1 使用对象浏览器 (5)1.5.2 引用OLE Avtomation objects (5)1.5.3 声明对象 (5)1.5.4 使用常量 (6)1.5.5 明确变量类型 (6)1.6M AP O BJECTS的数据源 (6)1.6.1 矢量文件 ......................................错误!未定义书签。
1.6.2 图像(Image)文件 (7)1.6.3 属性表 (8)1.6.4 空间数据引擎 (8)1.7纵览M AP O BJECTS (8)1.7.1 数据通道对象组 (9)1.7.2 地图显示对象组 (9)1.7.3 几何图形对象组 (10)1.7.4 地址匹配对象组 (10)1.8 MO V IEW 应用程序 (10)1.8.1 运行moView (11)1.8.2 moView 命令集 (11)1.8.3 框架开发 (11)1.8.4 moView 的方针 (12)2. 使用地图和LAYER (12)2.1在地图上画层 (13)2.1.1 用户眼中的Layer (13)2.1.2 程序员眼中的层 (13)2.2标准控件的属性和方法 (14)2.2.1 层集 (14)2.3利用W IN API扩充M AP O BJECTS应用程序 (17)2.4向层里加数据 (19)2.4.1 DataConrection对象 (19)2.4.2 GeoDataset对象和GeoDatasets集 (19)2.4.3 增加矢量文件 (20)2.4.4 加入SDE层 (20)2.4.5 增加一个图象文件 (21)2.5T RACKING L AYER动态跟踪层操作 (21)2.5.1 TrackingLayer和GeoEvent对象 . (21)2.5.2 TrackingLayer和GeoEvent对象的属性和方法 (21)2.6为地L AYER建立一个用户界面 (22)2.6.1 介绍moView (22)2.6.2 在Form中查找一个文件 (22)2.6.3 往Form中加入一个矢量文件 222.6.4 往表格中加入图象文件 (23)2.6.5 往表格中加入SDE层 (23)2.6.6 更改一个层集里的层的顺序 (23)2.6.7 建立层集的一个Listview (23)2.6.8 触发ListView里的可见状态. . 242.6.9 为地图属性建立界面 (24)3. 坐标系和几何对象 (25)3.1坐标系 (26)3.1.1 控制坐标(control coordinate) (26)3.1.2 地图坐标(Map coordinates) (26)3.1.3 地图与屏幕间的坐标转换 (27)3.2位置和地图比例尺 (28)3.2.1 计算地图比例尺 (29)3.2.2 重置地图尺寸 (29)3.2.3 建立一个漫游和缩放操作的工具条 (30)3.3几何对象 (31)3.4图形与几何对象 (31)3.4.1 点对象 (32)3.4.2 点集 (33)3.4.3 矩形对象 (33)3.4.4 线对象 (34)3.4.5 多边形对象 (34)3.4.6 椭圆对象 (35)4. 图属性的符号化 (36)4.1地图元素的符号化 (36)4.1.1 Symbol对象 (36)4.1.2 Renderer object (39)4.2画形状和文本. (44)4.3打印地图 (45)5. 选择元素以及检索信息 (45)5.1使用记录集 (46)5.1.1 记录集对象 (46)5.1.2 统计对象 (47)5.1.3 信息组集合和信息组对象 (47)5.1.4 Table Desc 对象 (48)5.1.5 表对象以及创建关键 (48)5.2选择元素 (48)5.2.1 通过距离来搜索元素 (48)5.2.2 通过询问方式搜索元素. (49)5.2.3 通过形状来搜索元素. (49)5.3在MO V IEW应用程序中应用记录集525.3.1 moView应用程序中的辨别工具 . (52)5.3.2 moView应用程序中的寻找命令 . (53)6. 地址匹配及查找定位 (54)6.1匹配地址 (54)6.1.1 用于地址匹配的专用文件 (54)6.1.2 街道绘制文件 (55)6.1.3 地址匹配对象 (56)6.1.4 交互地址匹配 (57)6.1.5 地址定位对象 (58)6.1.6 评估地址匹配 (58)6.2地址对象. (59)6.2.1 标准化地址 (60)6.2.2 批地址匹配 (60)6.3查找道路交叉点 (61)6.4使用地点名称 (61)6.5地点定位对象 (61)7. 用VISUALC++来工作 (62)7.1应用程序概观 (62)7.2观察工程 (63)7.3往你的应用程序加一张地图 (63)7.3.1 修改对话 (63)7.3.2 把MapObjects的Map控制加入OLE控制载体工程. (64)7.3.3 把MapObjects的Map控制插入你的工程 (64)7.3.4 把Map控制加入对话样板中. 647.3.5 为Map设置一此初始的属性. 657.4工程的修改 (65)7.4.1 取代Wizard产生的头文件和工具文件. (65)7.4.2 Wrpper类头文件 (66)7.4.3 在工程中加入一个成员变量 (66)7.5设计OLE控制 (66)7.6创建处理例行程序 (67)7.6.1 创建一个处理例行程序 (67)7.6.2 加入一个附加控制 (68)8. 配置应用程序 (68)8.1OLE寄存的要求 (69)8.2M AP O BJECTS文件的要求 (69)8.2.1 核心成份 (69)8.2.2 SDE软件成份 (69)8.2.3 图像成份 (69)8.2.4 DBC文件要求 (69)8.3TRUETYPE字体 (70)8.4使用M ICROSOFT V ISUAL B ASIC的S ETUP W IZARD (70)8.5用你的应用程序分配数据 (71)1.了解MapObjectsMapObjects是一套制图软件集,它使程序员能够把地图加到应用程序中去。
通过MapObjects你可灵活地建立适合用户的地图接口。
在小内存空间中,你能用多种工业标准程序环境去建立应用程序,你能够联合使用MapObjects与其它软件去实现地图与用户信息的联系。
1.1 组件软件大部分商业软件在最近的版本中极度壮大,诸如字处理及报表等程序,其最初仅几兆,目前却严重消耗磁盘空间。
这就要看最新的计算机能否快速执行最新版本软件以至于不落后于旧机器使用老软件的效率。
由于操作系统变得越来越复杂及用户对更多功能的要求也日趋强烈,程序也随之壮大了。
然而典型用户也仅使用了这些大软件的10%-20%。
那些没有用到的功能象一个大包袱,严重消耗了系统资源和磁盘空间。
如何打破这种恶性循环?组件软件(Component software)是一技术上的重大突破。
它提供了一种解决办法。
组件软件的原理是把大的桌面应用软件的功能打碎成部件。
开发人员可根据需要恰当地将一些部件组合成工具箱,用它建立专用软件。
这种部件叫对象(objects)。
所用平台就是可视化程序语言。
其结果就是精炼地程序快速经济地运行并且对特定的市场有很强的适应性。
1.2 MapObjects的功能通过MapObjects你可完成以下甚至更多功能:●显示一张多个Layer地图(道路,河流,边界)。
●放大,缩小,漫游。
●生成图形元素,如点、线、圆、多边形。
●说明注记●识别地图上被选中的元素。
●通过线,方框,区域,多边形,圆拾取物体。
●拾取某参照物特定范围内的物体。
●通过SQL描述来选择物体。
●对选取物体进行基本统计。
●对所选地图元素的属性进行更新,查询。
●绘制专题图。
●标注地图元素。
●从航片或卫星图片上截取图像。
●动态显示实时或系列时间组数据。
●在图上标注地址或定位。
本书开发了一系列通过VB,OLE,WinAPI扩展MapObjects的办法。
MapObjects可执行许多基础制图功能。
但它不能执行某些高级功能。
如,高质量地图输出,地图坐标系投影,表面模型或网络分析等高级空间分析。
以及拓扑编辑。
你可利用ESRI的其它产品如ARC/INFO,ArcView来实现高级功能。
1.3 MapObjects简介MapObjects包括一个OLE控件(OCX)叫做Map(Map control)和一组(三十多个)OLE对象(objects)。
它适用于工业标准程序环境。
如VB6.0,Delphi2.0,PowerBuilder,MS Access等。
MapObjects不适合最终用户。
它是为程序开发者设计的。
程序开发者可利用MapObjects开发应用程序并把这些程序提供给下一级用户使用。
MapObjects运行于Win95或Win NT3.51或更高。
最近,Mierosoft开始把OLE controls称作ActiveX controls。
本书将组件称作控件(OLE controls 或OCXs),但这些术语可与新术语ActiveX互换。
1.3.1MapObjects和OLE containersOLE Automation object 是一种可编程对象,它可通过OLE Automation server 来通讯。
OLE custom control是一种软件元件,它可通过OLE container实现特定功能。
OLE container和OLE Avtomation Server就是VB,Delphi,Access,VFro。