GIS 二次开发(B)实验报告
学 姓 班 专
号: 名: 级: 业:
指导老师:
2014 年 11 月 22 日
目录
1 实验一:软件安装与 AOI 书签开发 .................................................................... 1 1.1 1.2 1.3 2 实验目的.......................................................................................................... 1 实验内容.......................................................................................................... 1 实验结果.......................................................................................................... 1
实验二:地图数据组织与访问 ............................................................................ 5 2.1 2.2 2.3 实验目的.......................................................................................................... 5 实验内容.......................................................................................................... 5 实验结果.......................................................................................................... 5
3
实验三:地图渲染与制图输出 ............................................................................ 9 3.1 3.2 3.3 实验目的.......................................................................................................... 9 实验内容.......................................................................................................... 9 实验结果.......................................................................................................... 9
4
实验四:空间数据处理 ...................................................................................... 16 4.1 4.2 4.3 实验目的........................................................................................................ 16 实验内容........................................................................................................ 16 实验结果........................................................................................................ 16
5
实验总结 .............................................................................................................. 20
1 实验一:软件安装与 AOI 书签开发
1.1 实验目的
? 掌握 ArcGIS Engine 开发环境的相关软件安装 ? 掌握 AOI 书签程序开发
1.2 实验内容
? 安装 Visual Studio 2010 ? 安装 Microsoft .NET Framework 3.5 ? 安装 ArcGIS Engine 10.1 ? 安装 ArcObjects Developer kit For Microsoft .NET Framework 10.1 ? 安装 ArcGIS License Manager,并授权 ? 实现 AOI 书签的创建 ? 实现 AOI 书签的调用
1.3 实验步骤与结果
1).添加控件和类库引用
1 / 22
在程序主窗体添加一个菜单项(MenuItem),改名字 Name 改成 MiCreateBooke。在创建组合框。
2).添加“创建书签”函数 Public void CreateBookmark(string sBookmarkName) { IAOIBookmark aioBookmark=new AOIIBookmarkClass(); If(aoiBokkmark!=null) { aoiBook.location=axMapControll.ActieView.Extent; aoiBookmark.Name=sBookmarkName; } IMapBookmarks bookmarks=axMapControll.Map as TMapBookmarks; If(bookmarks!=null) { Bookmarks.AddBookmark(aoiBookmark) } cb—BookmarkList.Items.Ad(aoiBookmark.Name); }
2 / 22
3).添加“书签名称设置”窗体
4).实现创建书签与调用书签功能 在主窗体的创建书签中编写函数代码。 Private void btnCreatBookmark_Click(object sender,EventArgs e { AdmitBookmarkName frmABN=new AdmitBookmarkName(this); FrmABN.Show(); )
3 / 22
5).运行结果
4 / 22
2 实验二:地图数据组织与访问
2.1 实验目的
? 了解 ArcGIS Engine 中地图数据的组织结构 ? 掌握 ArcGIS Engine 地图数据访问方法
2.2 实验内容
? 编写“数据操作”类 ? 利用 DataGridView 控件展示 Continents 图层的序号和名称字段
2.3 实验步骤与结果
编 写 数 据 类 , 打 开 一 个 Access Geodatabase 要 素 类 建 立 OpenWorkspaceFromFileAccess,对参数进行编写。 Public static IFeatureClass OpenWorkspaceFromFileAccess(string clsName,string DBPath) { IWorkspaceFacery workspaceFacetory=new AccessWorkspaceFactoryClass(); IWorkspace workspase=workspaceFactroy.OpenfromFile(DBPath,0); IFeatureWorkspace accessWorkspace=workspace; IFeatureClass tFeatureClass=accesssWorkspace.OpenFeatureClass(clsName); Return tFeatureClasss; } 地理数据列表显示 1).田间控件 在程序主窗体 “空间按数据” 下拉菜单添加一个 “文本” 属性为 “访问图层数据” , 控 件 名 为 “ miAccessData ” 用 于 调 试 “ 数 据 展 示 台 ” 的 窗 体 。
2)田间“数据展示台”窗体 选择当前项目添加一个窗体类,命名为“DataBoard.cs”.
5 / 22
Public DataBoard(string sDataName,DataTable dataTable) { InitializeComponent(); tbDataName.Texe=sDataName; dataGridView1.DataSource=dataTable; } 3)添加“数据操作”类 点击“项目”菜单下的“添加类”按钮添加操作菜单。
4)添加“获取地图图层”功能函数 向 DataOpetator 类添加成员函数 GetLayerByName,通过制定图层获取对应图层 对象。
6 / 22
7 / 22
5)实现创建地理数据列表功能 为主窗体的 “访问图层数据” 菜单项 “点击” 事件相应函数, 并添加代码运行 “数 据展示台”窗体。 6)运行结果
8 / 22
3 实验三:地图渲染与制图输出
3.1 实验目的
? 了解地图符号的分类与可视化过程 ? 掌握地图符号的渲染方法
3.2
实验内容
? 编写“地图编制”类,添加成员函数 ? 实现获取地图渲染器信息功能 ? 实现地图的简单符号渲染
3.3
实验步骤结果
1) 添加控件 在程序主窗体上端菜单栏添加一个菜单项“文本”属性为“地图表现”控件 名为“miCarto” 。
。
2) 添加“地图编制”类 当前项目添加一个新的类,名为“MapComposer.cs” 。 3) 完善“地图编制”类的功能 向 MapComposer 类添加成员函数 GetRenderer Type,用于获取指定图层的渲 染器类型信息。
9 / 22
10 / 22
11 / 22
12 / 22
4) 实现图层简单渲染
13 / 22
5) 运行结果
14 / 22
15 / 22
4 实验四:空间数据处理
4.1 实验目的
? 了解创建空间数据的过程 ? 掌握创建空间数据的方法
4.2 实验内容
? 实现创建 Shpefile 文件的程序
4.3 实验步骤与结果
1)添加控件和类库引用 在程序主窗体添加一个“文本”属性为“数据操作”名为“miData” ,将属性 改为“创建 shapefile” 。 2)添加“创建 Spahe 文件”功能函数 创建完 DataOpenraror 类后,添加成员函数 CreateSphaefile,进行编写代 码。
16 / 22
17 / 22
3)实现出啊关键 shape 文件 在 shapefile 中添加天使代码。
18 / 22
4)运行结果
19 / 22
5 实验总结
经过这次实习,我学会了怎么操作 ARC GIS 相关软件,丰富了自身的能力。 在平时上课的时候我总是眼高手低,觉得没什么学的,但是在上机时才发现自己 的错误,所幸我来到了机房实习,在老师同学那里学会了许多东西,这让我有了 更大的信心。
20 / 22