FeatureLayer,FeatureDataset,FeatureClass,Feature的概念
刚学AE,其中很多概念都模糊不清。经过一段时间的摸索总结,对FeatureLayer,FeatureDataset,FeatureClass,Feature几个概念有了一点认识。拿出来分享一下,有错误的请多多指教,共同进步.
FeatureLayer: 要素图层,承载要素数据。几个重要的接口如下:
IFeatureLayer接口,用于管理要素图层的数据源,即要素类(FeatureClass)。具体察看IFeatureLayer.DataSourceType条目。
IFeatureLayer::FeatureClass属性可以返回要素图层使用的要素类。
IFeatureLayer::search方法,返回一个ICursor对象,仅仅指向一个要素指针。
IFeatureSelection接口负责管理一个图层中的要素的选择集的方法和属性。
IFeatureSelection:SelectFeatures使用一个过滤器把符合要求的要素放入图层的选择中(IEnumFeature)。
ILayerFields接口,可以直接获得一个要素图层的要素类字段结构。
FeatureDataset: 先看官方解释:A FeatureDataset is a container for feature classes that share the same spatial refrence.
要素数据集对象在GeoDatabase是一个简单的要素类的容器,在这个容器内放置着相同空间参考的要素类
FeatureClass:(要素类)是用来存储空间数据的对象类,是ObjectClass的扩展。在一个要素类中的所有的要素都使用同样的字段结构,要素类与表,对象类最大的区别是它有一个几何字段,即Shape字段,用于存储要素的几何信息,这样使得用户可以在地图上看到一个要素的形状和位置。在地图上,要素类是离散对象,”小”对象(small objects)表示为点要素,”长”对象表示为线要素,”大”对象表示为多边形要素.(不要老往Shapefile上面想),不包含Raster。
IFields接口,字段集可以通过ITable::Fields获取(IFeatureClass.Fields)IFields有2个属性,其中一个是Field(index),通过传入不同的字段索引值可以返回某个字段。两个方法,一个是FindField,用字段名作为字段的索引。IField接口是字段对象的主要接口,可以个从这个接口中得到字段的主要属性,如名称、别名,字段的值域,字段的类型等。
Feature:是要素类中一条记录,主要接口是IFeature,定义了要素对象特有的属性。IFeature ::get_Value(i)可以获得索引值为i的要素的属性值。通过循环就可以获得所有属性值。
还是图最清楚:

FeatureLayer,FeatureDataset,FeatureClass,Feature的概念的更多相关文章
- Convert part to feature command
Search 库主页 Related Links ArcObjects SDK for ArcGIS 10Microsoft Help System Documentation Convert par ...
- Arcgis Engine(ae)接口详解(1):featureClass
//IFeatureClass 来源请自行解决 IFeatureClass featureClass = null; //获取featureClass的各种名称 //PS:featureClass可以 ...
- Geodatabase介绍
一.概述 (1)Geodatabase是什么? ArcGIS操作基于GIS文件格式和存储于地理数据库(Geodatabase)中的地理信息.Geodatabase是ArcGIS的本地数据结构,是用于编 ...
- AE 创建
using System; using System.Drawing; using System.Runtime.InteropServices; using ESRI.ArcGIS.ADF; usi ...
- 使用AddLayer方法加载shp文件中使用的Map、Dataset等对象详解
内容源自:ArcGIS Engine+C#入门经典 方法二:使用axMapControl1对象的AddLayer方法加载ShapeFile文件 添加ShapeFile文件需要用到Map.Dataset ...
- PIE属性表多字段的文本绘制
最近研究了PIE SDK文本元素的绘制相关内容,因为在我们的开发中,希望可以做到在打开一个Shp文件后,读取到属性表的所有字段,然后可以选择一些需要的字段,将这些字段的所有要素值的文本,绘制到shp图 ...
- ae_feature的插入、复制和删除
1.插入 /// <summary> ///向featureclass中批量插入features ,批量插入features,用buffer的方法,要比循环一个个Store的方法快 /// ...
- ArcGIS Engine 中 Geometric Network 显示流向代码
原文地址:http://hi.baidu.com/steeeeps/item/165fbc15475e94741009b5b3 非常感谢作者. 以前学习几何网络时,对效用网络流向进行了总结,原理与效果 ...
- ArcEngine查询、添加、删除要素的方法
原文 ArcEngine查询.添加.删除要素的方法 1.查找数据 1).利用FeaturCursor进行空间查询 //空间查询 ISpatialFilter spatialFilter = new S ...
随机推荐
- Spark入门实战系列--6.SparkSQL(中)--深入了解SparkSQL运行计划及调优
[注]该系列文章以及使用到安装包/测试数据 可以在<倾情大奉送--Spark入门实战系列>获取 1.1 运行环境说明 1.1.1 硬软件环境 线程,主频2.2G,10G内存 l 虚拟软 ...
- Android Studio1.4.x JNI开发基础 - 简单实例
接上一篇,搭建好基于Android Studio的环境之后,编写native代码相对来说也比较简单了.在Android上编写Native代码和在Linux编写C/C++代码还是有区别,Native代码 ...
- 创建支持多种屏幕尺寸的Android应用
Android涉及各种各样的支持不同屏幕尺寸和密度的设备.对于应用程序,Android系统通过设备和句柄提供了统一的开发环境,大部分工作是校正每一个应用程序的用户界面到它显示的屏上.与此同时,系统提供 ...
- 15 Best Responsive HTML5 Frameworks 2014
Best HTML5 frameworks are most popular because with the use of these frameworks you can create websi ...
- EasyUI的datagrid分页
EasyUI的datagrid分页 前台代码: <script type="text/javascript"> $(function () { //查询 search( ...
- C# CGI程序
一.控制面板—>程序和功能—>打开或关闭Windows功能 把相关的功能勾上,点“确定” 二.新建一个网站,配置ISAPI和CGI限制.处理程序映射 三.CGI控制台应用程序代码: usi ...
- 关于Response.Redirect和Server.Execute的区别
Server.Transfer("path")内部重定向请求,是服务器内部的接管,浏览器无法意识到这个接管的发生,浏览器地址栏也不会发生变化.而Response.Redirect( ...
- 【C#】递归搜索指定目录下的指定项目(文件或目录)
---------------更新:201411201121--------------- 主要更新说明:将原bool recurse参数改为int depth,这样可以指定递归深度,而不是笼统的是否 ...
- visual C++ 项目和解决方案的区别
项目: 项目是构成某个程序的全部组件的容器,该程序可能是控制台程序.基于窗口的程序或某种别的程序.程序通常由一个或多个包含用户代码的源文件,可能还要加上包含其它辅助数据的文件组成.某个 ...
- mysql中变量赋值
http://www.cnblogs.com/qixuejia/archive/2010/12/21/1913203.html sql server中变量要先申明后赋值: 局部变量用一个@标识,全局变 ...