使两层相交并得到结果特征

本文关键字:结果 特征 两层 | 更新日期: 2023-09-27 18:04:15

我在地图上有X个图层,我需要交叉选定的图层(每次两个)并为生成的特征着色。

我正在尝试让这个代码工作

// get first feature (index 0)
ESRI.ArcGIS.ADF.Web.Geometry.Geometry adfFeature =
                m_firstLayer.GeometryFromRow(m_firstLayer.Rows[0]) 
as ESRI.ArcGIS.ADF.Web.Geometry.Geometry;
// THE FOLLOWING LINE RETURNS NULL
ESRI.ArcGIS.Geometry.IGeometry featureInterface = 
    adfFeature as ESRI.ArcGIS.Geometry.IGeometry;
ESRI.ArcGIS.Geometry.ITopologicalOperator topoOp = 
    adfFeature as ESRI.ArcGIS.Geometry.ITopologicalOperator;

如何使用几何界面与ADF几何对象?

我真的找不到两个层之间相交特征的样本,很遗憾空间连接只是一个arcgis桌面功能,我当然可以使用它们!

使两层相交并得到结果特征

我不认为你直接使用几何图形。然而,如果你知道特殊类型(点,折线,多边形),你可以转换(参见"Web ADF到ArcGIS服务器ArcObjects"项目)为ArcObjects。

您可以测试ESRI.ArcGIS.ADF.Web.Geometry.Geometry adfFeature的子类型并相应地进行转换。

顺便说一下,我建议你永远不要使用"as"强制转换,因为它可能无声地失败(只是返回null)。我建议:
ESRI.ArcGIS.Geometry.IGeometry featureInterface = 
    (ESRI.ArcGIS.Geometry.IGeometry)adfFeature;