ArcEngine地图基本操作的实现

上传人:宝路 文档编号:47971766 上传时间:2018-07-07 格式:PPT 页数:58 大小:3.23MB
返回 下载 相关 举报
ArcEngine地图基本操作的实现_第1页
第1页 / 共58页
ArcEngine地图基本操作的实现_第2页
第2页 / 共58页
ArcEngine地图基本操作的实现_第3页
第3页 / 共58页
ArcEngine地图基本操作的实现_第4页
第4页 / 共58页
ArcEngine地图基本操作的实现_第5页
第5页 / 共58页
点击查看更多>>
资源描述

《ArcEngine地图基本操作的实现》由会员分享,可在线阅读,更多相关《ArcEngine地图基本操作的实现(58页珍藏版)》请在金锄头文库上搜索。

1、第九章第九章 地图基本操作的实现地图基本操作的实现中国石油大学中国石油大学( (华东华东) )地球科学与技术学院测绘系地球科学与技术学院测绘系地理信息系统设计与开发地理信息系统设计与开发本 章 内 容n使用ArcEngine控件开发n创建桌面应用程序n地图基本操作实现一一 使用使用ArcEngineArcEngine控件开发控件开发 ArcEngine提供大量高级开发控件,使开发人员可以建立或扩展GIS应用程序和创建高质量的地图用户界面。包括MapControl、PageLayoutControl、ReaderControl、TOCControl和ToolbarControl。GlobeCon

2、trol和SceneControl也可以获得,但使用这两个控件的应用程序必须具有ArcEngine的3D分析选项授权。一一 使用使用ArcEngineArcEngine控件开发控件开发 嵌入式组件:可拖放到可视化设计环境提供的容器窗体或 对话框中,并可调整控件的大小和位置。 属性页:右键单击控件并选择“属性”菜单项。 ArcObjects:每个控件为其封装的ArcObjects上频繁使用的 属性和方法提供了快捷方式;每个控件还有一个执行公共 任务的帮助方法。 事件:每个控件都会响应终端用户的键盘和鼠标交互而触 发事件。响应发生在控件内的行为会触发一些其他事件。1.ArcGIS控件主题和概念一一

3、 使用使用ArcEngineArcEngine控件开发控件开发1.ArcGIS控件主题和概念 伙伴控件:ToolbarControl和TOCControl都要与另一个“伙 伴控件”协同工作。 控件命令:ArcEngine提供了一系列命令、工具和菜单与 ArcGIS控件协同工作;开发人员也可以通过创建自定义命 令、工具和菜单来扩展ArcEngine提供的命令集。 地图制作:ArcGIS Desktop应用程序可用于预制作能被装 载到ArcGIS控件中的文档,以便快速生产高质量的地图。一一 使用使用ArcEngineArcEngine控件开发控件开发2. MapControl和PageLayout

4、Control MapControl和PageLayoutControl对应于ArcMap桌面应用程 序的“数据”和“布局”视图。用ArcMap创作的地图文档可以 装载到这两个控件中。 地图文档可在设计时通过这两个控件的属性页设置,控件 可以被设置为“链接”或“包含”地图文档;地图文档也可以 使用LoadMxFile方法通过编程装载到控件中。 MapControl和PageLayoutControl不仅可以读取地图文档, 还可以写入地图文档(*.mxd)。一一 使用使用ArcEngineArcEngine控件开发控件开发3. GlobeControl和SceneControl GlobeCon

5、trol和SceneControl对应于ArcGlobe和ArcScene桌 面应用程序的三维试图。用ArcGlobe和ArcScene应用程序 创作的Globe和Scene文档可以分别装载到GlobeControl和 SceneControl中。 这两个控件都具有内置的导航功能,运行终端用户移动三 维视图和可视化三维数据,而不必使用控件命令。要使用 内置的导航工具,必须通过属性页或者编程设置Navigate 属性。一一 使用使用ArcEngineArcEngine控件开发控件开发4. ReaderControl ReaderControl对应于ArcReader桌面应用程序的“数据”和 “布

6、局”视图及其内容表(TOC)。该控件还包含 ArcReader桌面应用程序使用的内部窗口和工作,如Find窗 口和Identify工具等。用ArcMap桌面应用程序创造并用 ArcGIS Publisher扩展模块发布的发布地图文档(PMF)若 在发布时设置为允许装载到定制的ArcReader应用程序中, 则可以装载到ReaderControl中。 ReaderControl中有一个简单的自包含对象模型,提供 ArcReader桌面应用程序所有功能而不需要访问ArcObjects 。一一 使用使用ArcEngineArcEngine控件开发控件开发5. TOCControl和ToolbarCo

7、ntrol TOCControl要与一个“伙伴控件”协同工作。“伙伴控 件”可在设计时通过TOCControl属性页设置或在驻留 TOCControl的容器被显示时用SetBuddyControl方法通过 编程设置。 ToolbarControl要与一个“伙伴控件”协同工作。“伙伴 控件”可在设计时通过ToolbarControl属性页设置或在驻 留ToolbarControl的容器被显示时用SetBuddyControl方 法通过编程设置。 ToolbarControl可以驻留操作其“伙伴 控件”显示的命令、工具和菜单。返回二二 创建桌面应用程序创建桌面应用程序1.目标创建第一个ArcGIS

8、 Engine桌面应用程序加载MXD文档2.准备工作Visual Studio 2005/2008ArcGIS Engine Developer kit 9.2制作ArcGIS实验数据地图文档MXD二二 创建桌面应用程序创建桌面应用程序3.设计流程图 二二 创建桌面应用程序创建桌面应用程序4.创建第一个ArcGIS Engine桌面应用程序-1 二二 创建桌面应用程序创建桌面应用程序可以看到新创建的项目中自动加载了ToolBarControl、TocControl、 LicenseControl、MapControl四个ArcGIS Engine控件以及一个.NET StatusStrip控件

9、 4.创建第一个ArcGIS Engine桌面应用程序-1 二二 创建桌面应用程序创建桌面应用程序5.加载MXD地图文档数据-1 二二 创建桌面应用程序创建桌面应用程序6.创建第一个ArcGIS Engine桌面应用程序-2 1. 动Visual Studio .NET,并从新建项目对话框中创建一个新的Visual C#“Windows应用程序”项目。2.将项目命名为“DEMO”,并选择位置存取该项目。3.在“工具箱”的“Windows窗体”标签栏中单击右键,然后从上下文菜单中选择“选择项”(VS2005)“添加/移除项(I)”(VS2003);或者工具-选择工 具箱。 4.在“选择工具箱”中

10、选择“.NET Framework组件”,并复选“AxMapControl”,“AxPageLayoutControl”,“AxTOCControl”和“AxToolbarControl”,单击确定按钮。这样所选择的控件将显示在工具箱的Windows窗体标签栏中。二二 创建桌面应用程序创建桌面应用程序6.创建第一个ArcGIS Engine桌面应用程序-2 二二 创建桌面应用程序创建桌面应用程序6.创建第一个ArcGIS Engine桌面应用程序-2 二二 创建桌面应用程序创建桌面应用程序6.创建第一个ArcGIS Engine桌面应用程序-2 5.设置控件Anchor属性,使控件大小随窗口变

11、化而变化二二 创建桌面应用程序创建桌面应用程序6.创建第一个ArcGIS Engine桌面应用程序-2 private void Form1_Load(object sender, EventArgs e)this.Location = new Point(0, 0);axToolbarControl1.Left = this.Left;axToolbarControl1.Width = this.Width;axToolbarControl1.Top = menuStrip1.Height;axTOCControl1.Left = this.Left;axTOCControl1.Top =

12、axToolbarControl1.Top + axToolbarControl1.Height;axTOCControl1.Width = this.Width / 6;axTOCControl1.Height = this.Height - axToolbarControl1.Top - axToolbarControl1.Height;axMapControl1.Top = axTOCControl1.Top;axMapControl1.Height = axTOCControl1.Height;axMapControl1.Left = this.Left + axTOCControl1

13、.Width;axMapControl1.Width = this.Width - axTOCControl1.Width;二二 创建桌面应用程序创建桌面应用程序6.创建第一个ArcGIS Engine桌面应用程序-2 using ESRI.ArcGIS.SystemUI;private void Form1_Load(object sender, EventArgs e)axToolbarControl1.AddItem(“esriControls.ControlsMapZoomInTool“, -1, -1, true, 0, esriCommandStyles.esriCommandSt

14、yleIconOnly);axToolbarControl1.AddItem(“esriControls.ControlsMapZoomOutTool“, -1, -1, false, 0, esriCommandStyles.esriCommandStyleIconOnly);axToolbarControl1.AddItem(“esriControls.ControlsMapZoomInFixedCommand“, -1, -1, false, 0, esriCommandStyles.esriCommandStyleIconOnly);axToolbarControl1.AddItem(

15、“esriControls.ControlsMapZoomOutFixedCommand“, -1, -1, false, 0, esriCommandStyles.esriCommandStyleIconOnly);二二 创建桌面应用程序创建桌面应用程序6.创建第一个ArcGIS Engine桌面应用程序-2 private void Form1_Load(object sender, EventArgs e)string filename =“E:上课资料测绘08-GIS开发mapSD.mxd“;if ( axMapControl1.CheckMxFile (filename) )axMa

16、pControl1.LoadMxFile(filename);/using ESRI.ArcGIS.Carto;/IActiveView activeViw = axMapControl1.Map as IActiveView;/ activeViw.Extent = axMapControl1.FullExtent;/axMapControl1.Refresh();axTOCControl1.SetBuddyControl(axMapControl1);axToolbarControl1.SetBuddyControl(axMapControl1);返回三三 地图基本操作实现地图基本操作实现n加载图层数据n地图显示基本控制三三 地图基本操作实现地图基本操作实现1.加载图层数据 ArcEngine支持多种文件类型,矢量数据如:ArcInfo Covera

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号