GIS 线数据和面数据的合并(ArcEngine)
1、线数据合并
//线Feature存储在pTypeArray二维数组矩阵中
//说明,此段代码截取与工程项目中,只要大家得到线feature就可,不必要追究为啥放到二维数组中
Polyline pPolyline = null;
if (pTypeArray[i].Count > 0)
{
ITopologicalOperator pTopologicalOperator;
IFeature pFeatureTemp = pTypeArray[i][0] as IFeature;
IGeometry pGeometry = pFeatureTemp.Shape;
int jj = 1;
while (jj < pTypeArray[i].Count)
{
pTopologicalOperator = pGeometry as ITopologicalOperator;
pGeometry = ((IFeature)pTypeArray[i][jj]).Shape;
pGeometry = pTopologicalOperator.Union(pGeometry as IGeometry);
jj++;
}
pPolyline = pGeometry as IPolyline;
}
2、面数据合并
ITopologicalOperator pTopologicalOperator;
IFeature pFeatureTemp = layerArrayTemp[0] as IFeature;
IGeometry pGeometry = pFeatureTemp.Shape;
int jj = 1;
while (jj < layerArrayTemp.Count)
{
pTopologicalOperator = pGeometry as ITopologicalOperator;
pGeometry = ((IFeature)layerArrayTemp[jj]).Shape;
pGeometry = pTopologicalOperator.Union(pGeometry as IGeometry);
jj++;
}
pPolygon = pGeometry as IPolygon;