ArcEngine地图基本操作的实现

上传人:宝路 文档编号:3418147 上传时间:2017-08-04 格式: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、第九章 地图基本操作的实现,中国石油大学(华东)地球科学与技术学院测绘系,地理信息系统设计与开发,本 章 内 容,使用ArcEngine控件开发创建桌面应用程序地图基本操作实现,一 使用ArcEngine控件开发,ArcEngine提供大量高级开发控件,使开发人员可以建立或扩展GIS应用程序和创建高质量的地图用户界面。包括MapControl、PageLayoutControl、ReaderControl、TOCControl和ToolbarControl。GlobeControl和SceneControl也可以获得,但使用这两个控件的应用程序必须具有ArcEngine的3D分析选项授权。,一

2、 使用ArcEngine控件开发,嵌入式组件:可拖放到可视化设计环境提供的容器窗体或对话框中,并可调整控件的大小和位置。属性页:右键单击控件并选择“属性”菜单项。ArcObjects:每个控件为其封装的ArcObjects上频繁使用的属性和方法提供了快捷方式;每个控件还有一个执行公共任务的帮助方法。事件:每个控件都会响应终端用户的键盘和鼠标交互而触发事件。响应发生在控件内的行为会触发一些其他事件。,1.ArcGIS控件主题和概念,一 使用ArcEngine控件开发,1.ArcGIS控件主题和概念,伙伴控件:ToolbarControl和TOCControl都要与另一个“伙伴控件”协同工作。控件

3、命令:ArcEngine提供了一系列命令、工具和菜单与ArcGIS控件协同工作;开发人员也可以通过创建自定义命令、工具和菜单来扩展ArcEngine提供的命令集。地图制作:ArcGIS Desktop应用程序可用于预制作能被装载到ArcGIS控件中的文档,以便快速生产高质量的地图。,一 使用ArcEngine控件开发,2. MapControl和PageLayoutControl,MapControl和PageLayoutControl对应于ArcMap桌面应用程序的“数据”和“布局”视图。用ArcMap创作的地图文档可以装载到这两个控件中。地图文档可在设计时通过这两个控件的属性页设置,控件可

4、以被设置为“链接”或“包含”地图文档;地图文档也可以使用LoadMxFile方法通过编程装载到控件中。MapControl和PageLayoutControl不仅可以读取地图文档,还可以写入地图文档(*.mxd)。,一 使用ArcEngine控件开发,3. GlobeControl和SceneControl,GlobeControl和SceneControl对应于ArcGlobe和ArcScene桌面应用程序的三维试图。用ArcGlobe和ArcScene应用程序创作的Globe和Scene文档可以分别装载到GlobeControl和SceneControl中。这两个控件都具有内置的导航功能,

5、运行终端用户移动三维视图和可视化三维数据,而不必使用控件命令。要使用内置的导航工具,必须通过属性页或者编程设置Navigate属性。,一 使用ArcEngine控件开发,4. ReaderControl,ReaderControl对应于ArcReader桌面应用程序的“数据”和“布局”视图及其内容表(TOC)。该控件还包含ArcReader桌面应用程序使用的内部窗口和工作,如Find窗口和Identify工具等。用ArcMap桌面应用程序创造并用ArcGIS Publisher扩展模块发布的发布地图文档(PMF)若在发布时设置为允许装载到定制的ArcReader应用程序中,则可以装载到Read

6、erControl中。ReaderControl中有一个简单的自包含对象模型,提供ArcReader桌面应用程序所有功能而不需要访问ArcObjects。,一 使用ArcEngine控件开发,5. TOCControl和ToolbarControl,TOCControl要与一个“伙伴控件”协同工作。“伙伴控件”可在设计时通过TOCControl属性页设置或在驻留TOCControl的容器被显示时用SetBuddyControl方法通过编程设置。ToolbarControl要与一个“伙伴控件”协同工作。“伙伴控件”可在设计时通过ToolbarControl属性页设置或在驻留ToolbarCont

7、rol的容器被显示时用SetBuddyControl方法通过编程设置。 ToolbarControl可以驻留操作其“伙伴控件”显示的命令、工具和菜单。,返回,二 创建桌面应用程序,1.目标,创建第一个ArcGIS Engine桌面应用程序加载MXD文档,2.准备工作,Visual Studio 2005/2008ArcGIS Engine Developer kit 9.2制作ArcGIS实验数据地图文档MXD,二 创建桌面应用程序,3.设计流程图,二 创建桌面应用程序,4.创建第一个ArcGIS Engine桌面应用程序-1,二 创建桌面应用程序,可以看到新创建的项目中自动加载了ToolBa

8、rControl、TocControl、LicenseControl、MapControl四个ArcGISEngine控件以及一个.NET StatusStrip控件,4.创建第一个ArcGIS Engine桌面应用程序-1,二 创建桌面应用程序,5.加载MXD地图文档数据-1,二 创建桌面应用程序,6.创建第一个ArcGIS Engine桌面应用程序-2,1. 动Visual Studio .NET,并从新建项目对话框中创建一个新的Visual C# “Windows应用程序”项目。2.将项目命名为“DEMO”,并选择位置存取该项目。3.在“工具箱”的“Windows窗体”标签栏中单击右键,

9、然后从上下文菜单中选择“选择项”(VS2005)“添加/移除项(I)”(VS2003);或者工具-选择工具箱。4.在“选择工具箱”中选择“.NET Framework组件”,并复选“AxMapControl”,“AxPageLayoutControl”,“AxTOCControl”和“AxToolbarControl”,单击确定按钮。这样所选择的控件将显示在工具箱的Windows窗体标签栏中。,二 创建桌面应用程序,6.创建第一个ArcGIS Engine桌面应用程序-2,二 创建桌面应用程序,6.创建第一个ArcGIS Engine桌面应用程序-2,二 创建桌面应用程序,6.创建第一个Arc

10、GIS Engine桌面应用程序-2,5.设置控件Anchor属性,使控件大小随窗口变化而变化,二 创建桌面应用程序,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; axTOCContr

11、ol1.Left = this.Left; axTOCControl1.Top = 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;

12、 axMapControl1.Left = this.Left + axTOCControl1.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,

13、 true, 0, esriCommandStyles.esriCommandStyleIconOnly); axToolbarControl1.AddItem(esriControls.ControlsMapZoomOutTool, -1, -1, false, 0, esriCommandStyles.esriCommandStyleIconOnly); axToolbarControl1.AddItem(esriControls.ControlsMapZoomInFixedCommand, -1, -1, false, 0, esriCommandStyles.esriCommandSt

14、yleIconOnly); axToolbarControl1.AddItem(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 ( axMapContro

15、l1.CheckMxFile (filename) ) axMapControl1.LoadMxFile(filename); /using ESRI.ArcGIS.Carto; /IActiveView activeViw = axMapControl1.Map as IActiveView; / activeViw.Extent = axMapControl1.FullExtent; /axMapControl1.Refresh(); axTOCControl1.SetBuddyControl(axMapControl1); axToolbarControl1.SetBuddyControl(axMapControl1); ,

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

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

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