gis实习报告.docx
《gis实习报告.docx》由会员分享,可在线阅读,更多相关《gis实习报告.docx(23页珍藏版)》请在冰豆网上搜索。
![gis实习报告.docx](https://file1.bdocx.com/fileroot1/2023-4/21/8dc80af3-e0d2-4e91-83b6-aab7ee87ddb4/8dc80af3-e0d2-4e91-83b6-aab7ee87ddb41.gif)
gis实习报告
苏州科技学院
环境学院
地理信息系统
GIS软件与程序设计
实习报告
专业班级
成员
学号
实习地点
指导教师
2012年7月20日
实验要求概述
通过在一学年的学习中,我们对GIS程序设计的各个分项工程有了初步的了解、熟悉,同时能够掌握一些基本功能并建立其工程。
本次的实验要求让我们能够根据前面的学习,综合GIS的各项地图功能,建立一个完整的系统。
系统分成四个功能模块:
地图浏览模块、地图符号化功能模块、地图编辑模块、地图空间分析模块。
实验过程内容
实验的整个过程均在一个工程里完成,运行进入主界面如下图:
主界面由菜单项、工具条控件ToolbarControl、地图显示控MapControl以及图层显示控件TOCControl组成。
工程中各项命令的执行均通过菜单栏的下拉菜单完成:
菜单“文件”包含打开、另存为、退出命令。
通过CommonDialog控件实现图层的打开和另存为,打开文件使用showopen方法,保存文件实验使用shpwsave方法。
(如下图)
“编辑”选项包含了对图层的各项操作,有加载图层、调整图层、删除图层、全部删除以及撤销操作等。
“鹰眼视图”选项主要通过弹出的窗口对指定区域的图层进行显示。
“符号化”选项针对不同的图层信息(点图层、线图层、面图层)进行符号化以及对图层的相关信息进行文本标注。
“地图渲染”选项是对点线面图层按不同的标准要求进行的渲染操作。
有简单渲染、唯一值渲染、成比例渲染、多比例渲染、点密度渲染,统计图渲染等等。
“地图标注”选项主要是对点、线、面图层的相关属性按特定要求进行标注。
“地图编辑”选项对图层进行的操作有添加点对象,线对象,面对象,同时还可以选择指定的对象进行删除,移动操作。
地图属性中有错误的地方还可以对其修改。
“空间查询分析”利用各种各式的查询方式对所覆盖的区域进行属性查询。
工具栏包含如图所示的一些基本工具
通过在Toolbarcontrol1控件下的【Toolsets】工具集标签页中的【MapNavigation】中添加常用工具:
全局显示,漫游,放大,缩小,视图回退,撤消回退,刷新,书签这几个常用工具。
实验结果
实习一:
1、加载图层,图层的加载可以通过“文件”菜单下的“打开”选项,实现图层的逐个添加,也可以通过“编辑”下的“加载图层”实现多个图层的一次性加载:
单个加载:
多个一次性加载:
图层调整:
删除图层:
地图浏览:
拉框放大:
拉框缩小:
创建书签:
鹰眼视图:
实习二:
点渲染:
1、简单渲染:
2、唯一值渲染:
3、成比例渲染:
4、多比例渲染:
线渲染:
1、简单渲染:
2、唯一值渲染:
面渲染:
1、简单渲染:
2、唯一值渲染:
3、成比例渲染:
4、点密度渲染:
5、统计表渲染:
6、多比例渲染:
地图标注:
简单标注:
1、点标注:
2、线标注:
3、面标注:
复杂标注:
1、线标注:
2、面标注:
文本标注:
实习三:
创建新图层:
DimpfwsAsIFeatureWorkspace
DimpworkspacefactoryAsIWorkspaceFactory
DimstrAsString
str=InputBox("存储地址:
","请输入创建图层的地址","D:
\gcl2012实习\123")
Setpworkspacefactory=NewShapefileWorkspaceFactory
Setpfws=pworkspacefactory.OpenFromFile(str,0)
DimpfieldAsIField
DimpfieldeditAsIFieldEdit
Setpfield=NewField
Setpfieldedit=pfield
pfieldedit.Name="shape"
pfieldedit.Type=esriFieldTypeGeometry
DimpspaAsISpatialReference
DimpgeomdefAsIGeometryDef
DimpgeomdefeditAsIGeometryDefEdit
Setpgeomdef=NewGeometryDef
Setpgeomdefedit=pgeomdef
Setpspa=NewUnknownCoordinateSystem
Withpgeomdefedit
.GeometryType=esriGeometryPolygon
Set.SpatialReference=pspa
EndWith
Setpfieldedit.GeometryDef=pgeomdef
DimpfieldsAsIFields
DimpfieldseditAsIFieldsEdit
Setpfields=NewFields
Setpfieldsedit=pfields
pfieldsedit.AddFieldpfield
Setpfield=NewField
Setpfieldedit=pfield
Withpfieldedit
.length=30
.Name="名称"
.Type=esriFieldTypeString
EndWith
pfieldsedit.AddFieldpfield
DimpfeatclassAsIFeatureClass
Setpfeatclass=pfws.CreateFeatureClass("行政区划",pfields,Nothing,Nothing,esriFTSimple,"shape","")
绘制点线面要素:
选择删除对象:
移动对象:
修改属性:
撤销相关操作:
实习四:
属性查询:
点查询:
线查询:
面查询:
—矩形
—多边形:
实验感想
这次的实习让我收获颇丰。
对于一个个复杂的系统我们可以通过分解成一个个小的模块把它完成。
这就像我们平时做的一个个实验,虽然有点难度,但是分而击破还是给我减去了不少负担。
最后的大系统的形成,我们只要在前面基础上的集成和完善。
当然这其中我们必须对于一些细节问题多多关注。
也许这个系统的成功运行只在一个小的环节出了纰漏。
例如对于各种变量的统一定义。
对于在每一个模块中都要运用的变量,为避免重复。
可以在公共部分定义。
总之这次的实习,对于我们日后步入这个行业有了非常重要的意义:
让我知道大型软件系统的一个基本的开发过程。