MO概述及MO程序设计入门
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
IMPELL
BIL
IMPELL bitmap
Band interleaved by line
*.rls
*.bil
*.rlw
*.blw
BIP BSQ
Band interleaved by pixel Band sequential
*.bip *.bsq
*.bpw *.bqw
数据表
在基于MapObjects编写的应用程序中,通过ODBC(开 放数据库连接)驱动程序,可以访问外部的数据表,
ActiveX 自动对象——通过ActiveX 自动操作接口,提 供给其它应用程序或编程工具使用的一种对象。
MO的组成
数据访问对象: 存取地图数据库的一组对象 地图显示对象: 用来显示电子地图及符号化地图要素 的一组控件(Map,Legend,ScaleBar)和对象 几何对象:点,线,面等用来与图层要素进行互操作的对 象
ESRI MapObjects 控件
安装 ESRI MapObjects
可在这里下载到最新版本的MapObjects 产品(试 用期3个月)
• /software/mapobjects/download.h tml
• 在下载之前需要注册一个用户帐号,但注册是免费 的.
帮助系统 中的例子 代码
添加地图控件及数据
Map控件用来显示地图,将地图控件放置到窗体上 1. 双击工具箱上的地图控件按钮来将新地图控件 增加到窗体中 2. 调整地图控件的尺寸使其充满窗体
你可以通过地图控件的属性页上的属性设置功能,指定 将被显示在地图上的数据 1. 在地图控件上方点击右键,出现右键菜单. 2. 在出现的右键菜单中选择“Properties„”命令,以 显示地图控件的属性页。
开始使用MO
认识VB6的集成开发环境 在VB6中加载MapObjects控件 如何获取帮助 添加地图控件及数据 地图操作的基本功能
认识VB 6的集成开发环境
VB 集 成 开 发 环 境
设置VB选项,明确变量类型
在准备开始一个工程时,应 该在确保VB的工程中使用到 的变量的类型都是明确声明 的,这样可以减少发生错误 的可能性,这是一个很好的 编程习惯。从Tools 单中选 Options项,在Options对话 框中点中“要求变量声明”, 在任何一个新表或模块中都 会具有这个设置。也可以通 过在代码的第一行输入语句 Option Explicit 达到相同 的效果。
MO概述及程序设计入门
ESRI产品体系 MO概述
建立开发环境
开始使用MO
ESRI产品体系
ArcView ArcEditor ArcInfo 浏览器
客 户 端
ArcGIS 8.x
Ar cSDE 网 关
Ar cIMS
服务器
服 务 端
文 件 GeoDat aBASE Ar cSDE
数 据 库
MO概述
在键盘中按下 F1 键
在VB编辑窗口, 光标在某一个 对象位置处按下 F1 键
对象浏览器
如何学习?——从例子开始
MO自带 的完整实 例
最好的学习MapObjects的方法 就是学习例子。以下是使用例 子的步骤: 在帮助的主题下点例子。 打开一新VB工程并加上一地图 控件。 当窗体是活动状态时按F7打开 代码编辑器。 读例子的结构,并向表单中加 入特定控件。 从例子中粘贴代码到代码编辑 器中。 按F5或选择RUN。你的例子将被 运行。
调整Map控件的 大小及位置
如何获取帮助
MapObjects具有在线帮助系统,它包括MapObjects每一对 象的属性,方法和事件,以及常量的详细说明。大多数帮 助的主题下都有一小段程序例子,它可在VB下执行。
例子程序
关于对象属 性的帮助
下面有三种办法可得到帮助: 你可点工具栏中地图控件,然后按F1 可通过VB的对象浏览器与MapObjects的帮助建 立联系 可把VB编辑窗口的文本游标移到MapObjects的 某一对象,属性或事件上按F1
件开发和空间数据管理能力。
建立开发环境
系统要求
安装 Microsoft Visual Basic 6.0 和 ESR I MapObjects 2.4 (GIS 控件)
系统要求
硬件:Intel Pentium 计算机 128M 以上内存
软件:Windows 2000/XP;Visual Basic 6和
它们可以是种格式的,比如:Access, SQL Server,
Oracle 等。
空间数据引擎(SDE)
如果你采用大规模地图数据组来组织工作,建议考虑使用空
间数据引擎(SDE),这是一种高性能空间数据数据库服务器。
通过SDE,空间数据可集中存放于空间数据库服务器上。用 户的SDE应用程序可基于UNIX或Windows环境编写,SDE提供软
图像(Image)文件
• 可以通过MapObjects编写应用程序来显示多种图像文 件。在地图中图像多来自航空照片和卫星图像。 • 图像文件依靠带有灰度值或色标的一组像元来表示各 种信息,这些像元无属性连接,其坐标系统与Shape 文件不同。 • 在ArcView、ArcGIS中,通过对图像文件进行地理配 准,可以使图像数据精确地与具有大地坐标的Shape 数据集成在一起。
保存工程
执行菜单命令“文件”->>“保存”,保存工 程. 选择所要保存的文件夹, 然后在文件名称输入 框内输入“ FirstMap.frm.” 点击保存 在第二个保存对话中,在文件名输入框中输入 “FirstMap.vbp” 点击保存
运行工程
在工具栏上点击运行按钮 测试你的程序 如果要停止程序运行在VB工具栏上点击停止按钮
MapObjects支持的图像文件格式
名称
BMP TIFFTag SUN ERDAS
描述
Windows bitmap Image file Sun raster file ERDAS GIS or LAN
扩展名
*.bmp *.tif *.sun *.gis
World file扩展名
*.bpw *.tfw *.snw *.gsw
主要功能
显示一张包含多个图层的地图(道路,河流,边界) 放大,缩小,漫游 生成几何图形,如点,线,圆,多边形 为图层中的要素添加注释 识别地图上被选中的要素(点,线,面) 通过线,矩形,多边形,圆来选择要素 选取距某参照物一定距离范围内的要素
通过SQL语句来选择要素
• 地图移动
以下代码实现按鼠标右键移动、左键放大的功能
Private Sub Map1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = vbLeftButton Then Set Map1.Extent = Map1.TrackRectangle ElseIf Button = vbRightButton Then Map1.Pan End If End Sub
主要功能
对选择的要素进行统计
查询与更新被选择的要素的属性数据
制作专题地图 根据字段的值标注图层要素 显示从航片或卫星图片上获取的图像 动态显示实时或时间系列数据 通过输入地址在地图上定位 将数据投影到不同的坐标系下
MO 支持的数据源
• MapObjects支持Shape文件、图像文件、数据表或通过ESRI的 专用数据库引擎连接的专用数据表。 • Shape文件是地图数据的矢量格式,图像文件指栅格图像或航 空及卫星的畸变图像的纠正照片,数据表是可用ODBC驱动加载 的任意格式的数据表文件。专用数据库是网络上通过ESRI专用 数据库引擎连接的空间数据库服务器上的数据。 • Shape 文件适用于中小型地图数据。而大型数据(省级,国家 级海量数据),你就需使用专用数据库。 • 用MapObjects编写的软件是可伸缩的。开始时你可使用Shape 文件,当用户需要与大型数据库连接时,仅需修改打开数据源 的几行代码,就可以实现到专用数据库数据源的迁移。
Option Explicit
在VB6中加载MapObjects控件
STEP1:
启动Visual Basic6, 在开始出现的向导中 选择新建工程(标准 EXE)
STEP2:
在工具栏上点右键(工 具栏位于VB窗口的左 边),在出现的右键菜 单中点击“部件”命 令。
选中
拖放:在窗 体上放置 Map控件
投影对象:为地图或图层定义坐标系统,及进行投影变 换的一组对象
地址匹配对象:可快速定位街道位置 实用对象: 包含一个特殊的字符串对象Strings
MO的功能与特点
MapObjects是可以允许用户向应用程序中添加地图的制图软件控 件集合。你可以将MapObjects 与其它软件提供商提供的组件绑 定,比如绘图、多媒体及数据库对象。你可以根据最终用户的需 求,开发出应用程序,有选择地实现他们所要求的功能。 MapObjects 可以在多种符合工业标准的开发环境下使用,比如 Visual Basic, PowerBuilder, Visual C++ 等。 MapObjects 可 以直接嵌入到这些开发环境中使用,允许你快捷地创建应用程序 MapObjects不适用于最终用户。它是为程序开发者设计的。程序 开发者可利用MapObjects开发应用程序,并把这些程序提供给下 一级用户使用。 MapObjects运行于Windows 98或Windows NT 4.0或更高版本。
MO 的组成 MO 的功能与特点 MO 支持的数据源
Shape 文件 图像(Image)文件 数据表 空间数据库引擎(SDE)
MO的组成
MapObjects 包括一个ActiveX 控件 (OCX) 也 就是Map控件,还包括45个 ActiveX自动对象。 可用于符合IT行业标准的Windows编程环境。
地图操作的基本功能
• 地图放大
在使用其它通用开发工具时,这是要用很多语句和技巧才 能实现的复杂功能,但利用MO,只要一句就够了。 以下代码实现的功能时:当用鼠标左键在地图上拉矩形框 时,地图会被放大
Private Sub Map1_MouseDown(Button As Integer, Shif t As Integer, X As Single, Y As Single) Set Map1.Extent = Map1.TrackRhape文件是ESRI提供的存储地理数据的矢量格 式。其坐标系是笛卡尔坐标。
图层中每一个地理要素的几何形状以一组矢量坐 标(X,Y)的形式存储。其属性存放在与Shape 文件相连的dBASE的数据表中,并通过唯一的标 识进行关联。
Shape 文件是一种开放的GIS数据格式,如果你想编写程 序直接读写Shape 文件,你可以从ESRI网点 http://www. 上下载ArcView Shape (1998) 文件白皮书。 每一个Shape 文件存储某一种类型的地理要素(点、线段 或多边形),每一个要素相当于数据表中的一行记录 。 一个Shape 数据至少由三个文件组成: • 主文件(*.shp)包含描述地理要素几何形状的数据。 • 索引文件(*.shx)包含数据的索引。 • 数据库文件(*.dbf)包含地理要素的属性,你可以修改字 段的定义。
选择将要显示在地图上的数据 你可以通过地图控件的属性页上 的属性设置功能,指定将被显示 在地图上的数据
浏览添加数据
按下Ctrl 选择 多个数据
调整图层顺序
设置各图层的属性
1.点击图层列表框中的“四川” 图层 ,然后点击“属 性”。 2.点击“颜色”按钮以选择图层“四川”的颜色. 3.点击“确认”按钮关闭对话框.
安装 ESRI MapObjects
STEP:依次运行以下三个安装 程序: Mo24Eval_Only.exe:安装MO Mo24Samples.exe :安装例 子 Mo24Data.exe:安装例子所 需要数据
安装完成后,可从“开始”->“程序” ->“ESRI” 找到 MapObjects 2.4程序组