arcgisengine实现矩形转面

面文件都有几何类型. arcengine在绘图时,不规则的多边形的几何类型是esriGeometryPolygon,矩形的几何类型是esriGeometryEnvelope,圆的几何类型是esriGeometryPolygon. 在将IGeometry转为IFeatureClass的过程中,矩形的会报错,所以想到将矩形转面.

IGeometry geometry;//绘制好的矩形

IEnvelope envelope =  geometry as IEnvelope;
IPoint pt = new PointClass();

IPointCollection ptc = new PolygonClass();
object _missing = Type.Missing;

pt.PutCoords(envelope.XMin,envelope.YMin);
ptc.AddPoint(pt, ref _missing, ref _missing);
pt.PutCoords(envelope.XMin,envelope.YMax);
ptc.AddPoint(pt, ref _missing, ref _missing);
pt.PutCoords(envelope.XMax,envelope.YMax);
ptc.AddPoint(pt, ref _missing, ref _missing);
pt.PutCoords(envelope.XMax,envelope.YMin);
ptc.AddPoint(pt, ref _missing, ref _missing);

IPolygon polygon = new PolygonClass();
polygon = ptc as IPolygon;
 geometry = polygon as IGeometry;

参考:

https://www.bbsmax.com/A/pRdBZPY1dn/

https://www.bbsmax.com/A/q4zVM4wGdK/

悲观者更正确,乐观者更成长。时代大潮下,充满着机遇和风险。 目标不同,选择也就不同,人生没有标准答案,对大多数人而言,还是要不停地提高自己,这个世界什么都能快,但学习从来都没有捷径,或者说学习已是捷径。
原文地址:https://www.cnblogs.com/youzi-xuchongyou/p/8421325.html