转自原文 ArcGIS Engine检索要素集、要素类和要素

  1. /// <summary>
  2. /// 获取所有要素集
  3. /// </summary>
  4. /// <param name="workspace">工作空间对象</param>
  5. /// <returns>要素集列表</returns>
  6. public static List<IFeatureDataset> GetAllFeatureClass(IWorkspace workspace)
  7. {
  8. IEnumDataset dataset = workspace.get_Datasets(esriDatasetType.esriDTFeatureDataset);
  9. IFeatureDataset featureDataset = dataset.Next() as IFeatureDataset;
  10.  
  11. List<IFeatureDataset> featureDatasetList = new List<IFeatureDataset>();
  12. while (featureDataset != null)
  13. {
  14. featureDatasetList.Add(featureDataset);
  15. featureDataset = dataset.Next() as IFeatureDataset;
  16. }
  17. return featureDatasetList;
  18. }
  1. /// <summary>
  2. /// 获取所有要素类
  3. /// </summary>
  4. /// <param name="featureDataset">要素集</param>
  5. /// <returns>要素类列表</returns>
  6. public static List<IFeatureClass> GetAllFeatureClass(IFeatureDataset featureDataset)
  7. {
  8. IFeatureClassContainer featureClassContainer = (IFeatureClassContainer)featureDataset;
  9. IEnumFeatureClass enumFeatureClass = featureClassContainer.Classes;
  10. IFeatureClass featureClass = enumFeatureClass.Next();
  11.  
  12. List<IFeatureClass> featureClassList = new List<IFeatureClass>();
  13. while (featureClass != null)
  14. {
  15. featureClassList.Add(featureClass);
  16. featureClass = enumFeatureClass.Next();
  17. }
  18. return featureClassList;
  19. }
  1. /// <summary>
  2. /// 获取所有要素
  3. /// </summary>
  4. /// <param name="featureClass">要素类</param>
  5. /// <returns>要素列表</returns>
  6. public static List<IFeature> GetAllFeatureClass(IFeatureClass featureClass)
  7. {
  8. List<IFeature> featureList = new List<IFeature>();
  9. IFeatureCursor featureCursor = featureClass.Search(null, false);
  10. IFeature feature = featureCursor.NextFeature();
  11.  
  12. while (feature != null)
  13. {
  14. featureList.Add(feature);
  15. feature = featureCursor.NextFeature();
  16. }
  17. return featureList;
  18. }

ArcGIS Engine检索要素集、要素类和要素的更多相关文章

  1. C# Arcgis Engine 获得鼠标按下位置的要素

    public IFeature GetFeatureOnMouseDown(IPoint point) { try { ILayer layer = Common.GetLayerByName(mMa ...

  2. 【解决方案】ArcGIS导入要素集后没反应

    内容源自:ArcGIS10.2基础教程(丁华) 书上要求: 1.在“练习”文件夹中新建一个名为“沈阳”的个人地理数据库和名为“shenyang”的要素集,设置地理坐标为“Xi'an 1980”,高程坐 ...

  3. ArcGIS Engine开发之旅10--空间参考及坐标转换

    原文:ArcGIS Engine开发之旅10--空间参考及坐标转换 空间参考(Spatial Reference)是 GIS 数据的骨骼框架,能够将我们的数据定位到相应的位置,为地图中的每一点提供准确 ...

  4. arcgis python 使用光标和内存中的要素类将数据加载到要素集 学习:http://zhihu.esrichina.com.cn/article/634

    学习:http://zhihu.esrichina.com.cn/article/634使用光标和内存中的要素类将数据加载到要素集 import arcpy arcpy.env.overwriteOu ...

  5. Arcgis engine 指定图层对要素进行创建、删除等操作

    Arcgis engine 指定图层创建点要素 在指定的图层上创建一个点要素,点要素的位置是通过X,Y坐标指定的,下面是具体的注释 .其中 和IFeatureClassWrite接口有关的代码不要好像 ...

  6. ArcGIS Engine中删除要素的几种方法总结

    转自原文 ArcGIS Engine中删除要素的几种方法总结 /// <summary> /// 通过IFeature.Delete方法删除要素 /// </summary> ...

  7. 基于ArcGIS ModelBuilder的GDB批量分区裁剪——可保留原始GDB要素集要素类结构

    文章版权由作者pxtgis和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/pxtgis/. 一.概述 在数据处理工作中经常遇到批量裁剪ArcGIS文件地理数据库( ...

  8. ArcGIS Engine中如何获取Map中已经选择的要素呢(转)

    ArcGIS Engine中如何获取Map中已经选择的要素呢   1.使用IEnumFeturea对象获取map中的FeatureSelection,该方法可以获取所有图层的选择要素.IMap中的Fe ...

  9. ArcGIS Engine效率探究——要素的添加和删除、属性的读取和更新

    ArcGIS Engine效率探究——要素的添加和删除.属性的读取和更新 来自:http://blog.csdn.net/freewaywalker/article/details/23703863 ...

随机推荐

  1. P2420 让我们异或吧(树链剖分)

    题目描述 异或是一种神奇的运算,大部分人把它总结成不进位加法. 在生活中-xor运算也很常见.比如,对于一个问题的回答,是为1,否为0.那么: (A是否是男生 )xor( B是否是男生)=A和B是否能 ...

  2. HDU 4889 Scary Path Finding Algorithm

    其实这个题是抄的题解啦…… 题解给了一个图,按照那个图模拟一遍大概就能理解了. 题意: 有一段程序,给你一个C值(程序中某常量),让你构造一组数据,使程序输出"doge" 那段代码 ...

  3. unity SystemInfo类 获得电量battery

    我觉得用Unity 开发最爽的地方, 不是unity跨平台,而是用其他语言,要用很复杂的逻辑才能完成的功能,unity用一两句代码就能搞定 就比如说获取Android 系统的电量,不用发广播,不用申请 ...

  4. berkeley db储存URL队列的简单实现增、删、查

     Berkeley DB(BDB)是一个高效的嵌入式数据库编程库,C语言.C++.Java.Perl.Python.Tcl以及其它非常多语言都有其相应的API. Berkeley DB能够保存随意 ...

  5. 【python下使用OpenCV实现计算机视觉读书笔记2】图像与字节的变换

    import cv2 import numpy import os # Make an array of 120,000 random bytes. randomByteArray = bytearr ...

  6. vue3事件

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. android CoordinatorLayout使用

    一.CoordinatorLayout有什么作用 CoordinatorLayout作为“super-powered FrameLayout”基本实现两个功能: 1.作为顶层布局 2.调度协调子布局 ...

  8. hdoj--2955--Robberies(背包好题)

    Robberies Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total ...

  9. 特性Attibute定义和使用

    1.定义特性 [AttributeUsage(AttributeTargets.Class,AllowMultiple = false,Inherited = false)] public class ...

  10. UVALive - 6268 Cycling 贪心

    UVALive - 6268 Cycling 题意:从一端走到另一端,有T个红绿灯,告诉你红绿灯的持续时间,求最短的到达终点的时间.x 思路: