AE开发实验报告.docx

上传人:b****0 文档编号:10062756 上传时间:2023-05-23 格式:DOCX 页数:22 大小:1.61MB
下载 相关 举报
AE开发实验报告.docx_第1页
第1页 / 共22页
AE开发实验报告.docx_第2页
第2页 / 共22页
AE开发实验报告.docx_第3页
第3页 / 共22页
AE开发实验报告.docx_第4页
第4页 / 共22页
AE开发实验报告.docx_第5页
第5页 / 共22页
AE开发实验报告.docx_第6页
第6页 / 共22页
AE开发实验报告.docx_第7页
第7页 / 共22页
AE开发实验报告.docx_第8页
第8页 / 共22页
AE开发实验报告.docx_第9页
第9页 / 共22页
AE开发实验报告.docx_第10页
第10页 / 共22页
AE开发实验报告.docx_第11页
第11页 / 共22页
AE开发实验报告.docx_第12页
第12页 / 共22页
AE开发实验报告.docx_第13页
第13页 / 共22页
AE开发实验报告.docx_第14页
第14页 / 共22页
AE开发实验报告.docx_第15页
第15页 / 共22页
AE开发实验报告.docx_第16页
第16页 / 共22页
AE开发实验报告.docx_第17页
第17页 / 共22页
AE开发实验报告.docx_第18页
第18页 / 共22页
AE开发实验报告.docx_第19页
第19页 / 共22页
AE开发实验报告.docx_第20页
第20页 / 共22页
亲,该文档总共22页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

AE开发实验报告.docx

《AE开发实验报告.docx》由会员分享,可在线阅读,更多相关《AE开发实验报告.docx(22页珍藏版)》请在冰点文库上搜索。

AE开发实验报告.docx

AE开发实验报告

AE开发实验报告

 

姓名:

王宁

班级:

2013012

学号:

201301204

专业:

地理信息科学

院系:

资源与环境学院

一.实验目的

1)掌握使用控件创建桌面应用程序的主要流程;

2)掌握MapControl控件、TOC控件、Toobar控件的特性及其与ArcMap中的对应关系;

3)编写代码实现加载Mxd文档、添加Shape文件、鹰眼放大等功能;

4)掌握ArcGISDeveloperhelp查询接口帮助的方法。

二.实验内容

1)使用控件创建桌面应用程序的主要流程;

2)代码加载Mxd文档

3)添加Shape文件

4)鹰眼功能

三.实验步骤

1.使用控件创建桌面应用程序

1)新建一个Windows窗体应用程序(文件--新建--项目--Windos窗体应用程序)

2)设置项目保存位置及项目名称,在点了确定之后,在VS的工具箱中找到到和ArcGISEngine相关的控件

其中,AxMapControl就是Map地图控件,AxPageLayouControl是布局地图控件,AxTOCControl是目录控件,AxToolbarControl是GIS工具栏控件,AxSceneControl是Scene三维场景控件,axGlobeControl是Globe控件,AxLicenseControl是许可控件,AxSymbologyControl控件,AxArcReaderControl是ArcReader控件,AxArcReaderGlobeControl是ArcReaderGlobe控件。

AxLicenseControl是许可控件,一般GIS系统中都必须添加,否则无法使用。

3)然后添加Toc、Map、Toolbar、license控件。

License(许可)控件是首选的,否则其他控件无法使用,具体布局如下图所示

4)设置工程初始化时自动添加地图文档(Map控件-右键-属性)

5)设置Buddy属性,使Toolbar控件和Toc控件与Map控件的关联

6)在Toolbar中进行设置(Toolbar控件-右键-属性)

7)添加工具命令

在Toolbarcontrol上右键—属性在items选项卡中添加几个工具命令

至此,我们的没有编写任何语句,只是使用一些Arcengine控件,就可以搭建一个简单的ArcGIS桌面应用程序。

2.编程实现加载Mxd文档

用代码添加Mxd文档,用到AxMapControl.LoadMxFile(sFilePath),我们只要将Mxd文档的路径传给这个方法即可。

我们添加一个按钮,把text属性改为“加载Mxd文档”,如下图所示:

编写“打开Mxd文档”按钮的单击事件代码,如下图所示:

单击F5运行程序,效果如下:

单击“加载Mxd文档”按钮,打开一个Mxd文档

效果如下:

3.编程实现鹰眼功能

分析:

鹰眼图的操作主要由以下几个动作,当在一个控件中移动一幅图的时候另一控件中的图也发生变化,当在主控件中重新加载一幅图的时候,另外一个控件的图也发生相应的变化,同时我们在鸟瞰的控件中加入一红色边框,注意这个其实是一个面,只是填充的颜色是透明的而已。

通过分析我们知道,我们要添加两个MapControl控件,名字分别是axMapControl1和axMapControl2,其中axMapControl1为主图,而axMapControl1为鸟瞰图。

1)在主窗体上添加一个axmapcontrol控件,作为鹰眼功能的鸟瞰图。

2)编写主图axMapControl1中axMapControl1_OnMouseDown响应事件代码,实现当主图中显示的范围改变时,鸟瞰图中相应的出现一个红色的矩形框,表示主图中的显示范围

单击F5,运行效果如下图所示:

3.1增加一状态栏,当地图放大缩小后显示图幅范围坐标值。

1)在主窗体中添加一个statusStrip(状态栏)控件。

2)在弹出的“ItemsCollectionEditor”对话框总单击Add按钮,添加三个状态项目成员,并把“toolStripStatusLablel1“Text属性改为“当前图幅信息”,如下图所示:

3)在主图(axMapControl1)axMapControl1_OnMouseMove事件中添加如下代码,实现当主图的图幅范围改变时,状态也相应的显示出当前图幅的信息。

按F5运行程序,效果如下所示:

4布局视图与地图视图同步;

当切换两个控件的时候,地图的同步各自控件上激活的工具或者命令的保留

当存在TOC控件和ToolBar控件的时候,切换了地图控件和布局控件,那么这两个控件的伙伴控件也应发生变化。

具体实现步骤如下:

1)在Form中添加TabControl控件,分别将地图控件和布局控件放置到里面,如下图所示:

2)为了保持地图视图和布局视图的同步,新增类ControlsSynchronizer.cs

3)为“ControlsSynchronizer“类增加一些必要的引用

为“ControlsSynchronizer“定义一些必要的全局变量

 

在tabControl1的tabControl1_SelectedIndexChanged事件中填写代码,使其数据视图与地图视图同步;

添加“地图与数据同步“菜单

编程“地图与数据同步“菜单单击事件代码

4.1要素选择,编程实现通过话一个多变形实现要素的选择

1)在主窗体中添加“要素选择“菜单

编写”要素选择”菜单单击事件响应代码,如下图所示:

按F5运行程序,效果如下所示:

4.2拉框放大,拉框缩小

1)在主窗体中添加“拉框放大“和“拉框缩小”菜单

编写”拉框放大”“拉框缩小”菜单单击事件响应代码,如下图所示:

按F5运行程序,效果如下所示:

原图:

拉框放大:

拉框缩小:

5.输出两个矢量图层的交集,差集和异域;

1)在主窗口上创建“相交运算(Intersect)”菜单

2)编写“相交运算(Intersect)”单击事件响应代码:

求差运算:

6.包含统计(统计面要素内部点的个数)

1)在主窗体上添加“包含统计“菜单

2)编写“包含统计”菜单单击事件响应代码(详见源程序)

3)编写上述代码中所涉及的CreateTable函数(详见源代码)

4)运行程序,包含统记错误列表如下:

7缓冲显示

1)在主窗口中创建“缓冲显示”菜单

2)声明全局变量DoBuffer,并设置其初始值为0;

3)编写“缓冲显示”菜单单击事件代码(详见源程序)

运行程序,缓冲显示效果如下图所示:

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2