图层管理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
测绘工程学院GIS开发基础
实验报告书
实验名称:图层操作
专业班级:
姓名:
学号:
实验地点:
实验时间:2015-3-19
实验成绩:
地理信息系
一、实验目的
1、初步了解地理信息系统软件的开发,为今后的学习打好基础。
2、通过对这次简单编程,通过TatukGIS工具如何图层的相关操作,并编程实现获取图层数量、如何指向图层、显示属性表等常见功能。
二、实验准备
1、一台装有DelphiXE7的计算机。
三、实验具体步骤
1、图层管理
使用LegendControl 控件可以修改图层信息,比如:名称、颜色、可见范围、符号等,还可以进行图层標註,图层顺序的获取。同时Legend控件有以下一些属性信息,比如Color 、ColorSelected 、Mode、ReverseOrder、GIS_Layer // 当前选中图层
2、使用LegendControl 方法
GetLayerInfo ( const _idx: Integer; // 图层序号0..N ,var _name: String; // 图层名称,var _active: Boolean; // 是否可见,var _collapsed: Boolean; // 是否折叠var _selected: Boolean // 是否被选中等等一些方法。
3、定义一个文档类的图层的对象
文档类图层的对象在GIS软件开发中经常用到,因为在GIS中会经常处理适量和和栅格图层,所以对这两个图层的加载和定义尤为重要,下列为图层对象的处理方法:
矢量图层【引用GisLayerVector】
–Var pVectorLayer :TGIS_LayerVector ;
柵格图层【引用GisLayerPixel】
–Var pPixelLayer :TGIS_LayerPixel;
4、如何指向图层
指向图层的方法有三种,第一种是图层指向,第二种是用get方法指向,第三种是通过图例控件指向,这三种方法各有优点,在使用过程中应灵活运用。下图为指向图层代码和相关结果。
在图层管理中还涉及到获取图层类型以及获取要素数量,这也是GIS中经常用到的。
5、调用图层属性
方法一
–TatukGIS 数据集控件
ttkDS1.Open(ttklegend.GIS_Layer as TGIS_LayerVector,
ttkViewerOne.VisibleExtent);
dbgrd1.Columns.Items[0].Title.Caption := '序号';
方法二
1.获取要素的数量pVectorLayer.GetLastUid
2.获取层的属性结构
pVectorLayer.Fields.Count pVectorLayer.FieldInfo(1).Name
pVectorLayer.FieldInfo(1).FieldType
3.获取要素的每个字段值
pShape := pVectorLayer.GetShape(UID);//从1起
pShape.GetField(‘字段名’) // Variant类型
三、凸显要素
ttkViewer.VisibleExtent := pShape.Extent ;
ttkViewer.Zoom := GISttkViewer.Zoom * 0.8 ;
四、实验心得
通过本次实验使我初步了解GIS软件开发设计的工具,在试验操作中进行了地图加载、获取图层数量、指向图层、获取图层类型等一系列方法的实现,这些方法在GIS开发过程中会经常用到,所以掌握这些方法是必要的,同时这些都是基础操作,因此在学习过程中要不断了解更深一个层次的东西,这样才能较好的掌握GIS的设计与开发。