ArcGIS Engine检索要素集、要素类和要素

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

[csharp] view plain copy print?

  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. List<IFeatureDataset> featureDatasetList = new List<IFeatureDataset>();
  11. while (featureDataset != null)
  12. {
  13. featureDatasetList.Add(featureDataset);
  14. featureDataset = dataset.Next() as IFeatureDataset;
  15. }
  16. return featureDatasetList;
  17. }

[csharp] view plain copy print?

  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. List<IFeatureClass> featureClassList = new List<IFeatureClass>();
  12. while (featureClass != null)
  13. {
  14. featureClassList.Add(featureClass);
  15. featureClass = enumFeatureClass.Next();
  16. }
  17. return featureClassList;
  18. }

[csharp] view plain copy print?

  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. while (feature != null)
  12. {
  13. featureList.Add(feature);
  14. feature = featureCursor.NextFeature();
  15. }
  16. return featureList;
  17. }
时间: 2024-12-22 11:59:37

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

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

public IFeature GetFeatureOnMouseDown(IPoint point) { try { ILayer layer = Common.GetLayerByName(mMap, "地块"); if (layer == null) { MessageBox.Show("请加载地块图层!", "提示"); return null; } //IFeatureLayer fLayer = layer as IFeatureLa

ArcGIS10.2 网络分析之路径分析(一)---构建要素集

ArcGIS 网络分析之路径分析 说明: 1.本文主要是为了介绍网络分析服务及开发的流程,不会对网络分析服务的每一个细节进行探讨, 2.在进行以下分析之前要准备好路网图层的shp文件,如果没有需要自己建立: 3.主要通过路径分析来介绍和演示: 1.构建要素集 1.1 建立要素集 打开ArcCatalog,数据库连接---右键----新建----要素集: 输入要素集的名称,下一步: 选择坐标系,因为路网图层文件采用WGS1984坐标系,所以此处选择WGS1984: 此处选择默认,下一步 默认,不用

arcgis python 使用光标和内存中的要素类将数据加载到要素集

使用光标和内存中的要素类将数据加载到要素集 import arcpy arcpy.env.overwriteOutput = True arcpy.ImportToolbox("http://flame7/arcgis/services;BufferByVal", "servertools") # List of coordinates coordinates = [[-117.196717216, 34.046944853], [-117.186226483, 3

Arcgis engine 要素集的复制和删除

一. 要素集的删除 1.对于一般的要素类删除 可直接用IDataset.Delete()方法进行删除 2.对于无网络的要素集删除 可用IFeatureDataset.Delete()方法进行删除 3.对有网络的要素集删除时,需用IFeatureWorkspaceManage.DeleteByName(IDatasetName name)方法删除 二.要素集的复制 IGeoDBDataTansfer接口用于实现要素集的复制,注意的是从gdb将要素集复制到sde,且gdb要素集中含有网络时,用此接口

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

转自原文 ArcGIS Engine中删除要素的几种方法总结 /// <summary> /// 通过IFeature.Delete方法删除要素 /// </summary> /// <param name="pFeatureclass">要素类</param> /// <param name="strWhereClause">查询条件</param> public static void De

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

ArcGIS Engine效率探究——要素的添加和删除.属性的读取和更新 来自:http://blog.csdn.net/freewaywalker/article/details/23703863 分类: ArcNotes2014-04-14 20:56 1781人阅读 评论(0) 收藏 举报 1. 要素的添加 ArcGIS Engine中,主要有两个方法用于要素的添加: Using IFeatureClass.CreateFeature followed by IFeature.Store

Arcgis Engine的拓扑检查类

使用方式 TopologyChecker topocheck = new TopologyChecker(mainlogyDataSet);//传入要处理的要素数据集 topocheck.PUB_TopoBuild("testTopo2");//构建拓扑的名字 topocheck.PUB_AddFeatureClass(null);//将该要素中全部要素都加入拓扑 //添加规则 topocheck.PUB_AddRuleToTopology(TopologyChecker.TopoEr

关于arcgis engine的工作空间(IWorkspace)和选择集(FeatureSelection)

1.通过某个WorkspaceFactoryClass(例如AccessWorkspaceFactoryClass)拿到工作空间工厂接口,这时的OpenFromFile方法可以直接打开mdb类型文件,作为工作空间.如果是ShapefileWorkspaceFactoryClass,则直接打开shp文件所在的文件夹. 2.IEnumDataset 接口直接获取工作空间的数据集,然后迭代拿到要素集(可根据别名). 3.可以用IMap接口先调用SelectByShape方法,之后使用Map.Featu

ArcGIS Engine中的8种数据访问 (转)

数据是GIS的基础, 访问数据也是进行任何复杂的空间分析及空间可视化表达的前提.ArcGIS支持的数据格式比较丰富,对不同的数据格式支持的程度也有很大差异.本文主要介绍一下以下八种数据格式在ArcGIS Engine中如何访问.对ArcGIS桌面应用有一定了解的读者更适合阅读本文.本文的示例代码是用C#编写. 1.Shapefile 2.Coverage 3.Personal Geodatabase 4.Enterprise Geodatabase 5.Tin 6.Raster 7.CAD 8.