C#Arcengine通过坐标点生成面(环形)
来自:http://www.cnblogs.com/lee24789229/p/5481978.html
通过传入坐标点,返回几何图形,此代码部分可以生成环形面。
方法一
private IGeometry getGeometry(IPointCollection Points)
{
IPointCollection iPointCollection = new PolygonClass();
Ring ring = new RingClass();
object missing = Type.Missing;
ring.AddPointCollection(Points);
IGeometryCollection pointPolygon = new PolygonClass();
pointPolygon.AddGeometry(ring as IGeometry, ref missing, ref missing);
IPolygon polyGonGeo = pointPolygon as IPolygon;
//polyGonGeo.Close();
polyGonGeo.SimplifyPreserveFromTo();
return polyGonGeo as IGeometry;
}
方法二:
private IGeometry getGeometry1(IPointCollection Points)
{
//IPointCollection iPointCollection = new PolygonClass();
object pMissing = Type.Missing;
//iPointCollection.AddPointCollection(Points);
IGeometryCollection pGeoColl = Points as IGeometryCollection;
ISegmentCollection pRing = new RingClass();
pRing.AddSegmentCollection(pGeoColl as ISegmentCollection);
object miss = Type.Missing;
IGeometryCollection pPolygon = new PolygonClass();
pPolygon.AddGeometry(pRing as IGeometry, ref miss, ref miss);
ITopologicalOperator topologicalOperator = pPolygon as ITopologicalOperator;
topologicalOperator.Simplify();
return pPolygon as IGeometry;
}
本博客有部分内容来自网络,如有问题请联系QQ24789229,并注明来自博客园。