arcgis engine中怎样获取arcgis图层的图元,用的是C#,求代码

2025-01-07 01:15:47
推荐回答(5个)
回答1:

IFeayureLayer是ILayer的子类 ,
IFeature是IFeatureLayer中的一个要素,
可以从IFeatureLayer中得到IFeatureClass  
再利用游标IFeatureCursor就可以把这些IFeature一个个遍历出来了。

  • ArcGIS Engine是ArcGIS的一套软件开发引擎,可以让程序员创建自定义的GIS桌面程序。

  • ArcGIS Engine支持多种开发语言,包括COM、.NET框架、Java和C++,能够运行在Windows、Linux和Solaris等平台上。这套API提供了一系列比较高级的可视化控件,大大方便了程序员构建基于ArcGIS的应用程序。

  • 是ESRI在ArcGIS9版本才开始推出的新产品,它是一套完备的嵌入式GIS 组件库和工具库,使用ArcGIS Engine开发的GIS应用程序可以脱离ArcGIS Desktop而运行。

回答2:

给你个思路吧:
IFeayureLayer是ILayer的子类 ,
IFeature是IFeatureLayer中的一个要素,
可以从IFeatureLayer中得到IFeatureClass
再利用游标IFeatureCursor就可以把这些IFeature一个个遍历出来了!

代码还是自己写吧……错了再改就是了,加油 ^+^

回答3:

以下是代码。

public IFeatureLayer GetLayerByName(IScene _pGlobe, string pGraphicLayerName)
{
UID pUid = new UIDClass();
pUid.Value = "{40A9E885-5533-11d0-98BE-00805F7CED21}";//要素图层
IEnumLayer pEnumLayer = _pGlobe.get_Layers(pUid, true);
ILayer pRetureLayer = null;
ILayer pLayer = pEnumLayer.Next();
while (pLayer != null)
{
if (pLayer.Name == pGraphicLayerName)
{
pRetureLayer = pLayer;
return pRetureLayer as IFeatureLayer;
}
pLayer = pEnumLayer.Next();
}
return pRetureLayer as IFeatureLayer;
}

回答4:

建议你先看看开发文档帮助,里面有具体的代码。

回答5:

分类错误,收回吧