ArcGIS Pro 3.4 API Reference Guide
ArcGIS.Core.Geometry Namespace / PolygonBuilderEx Class / PolygonBuilderEx Constructor / PolygonBuilderEx Constructor(IEnumerable<Coordinate2D>,SpatialReference)
Coordinates for the first ring. Line segments are constructed from the coordinates.
(Optional) The SpatialReference. The default value is null.
Example Version

PolygonBuilderEx Constructor(IEnumerable<Coordinate2D>,SpatialReference)
Initializes a new instance of the PolygonBuilderEx class.
Syntax

Parameters

coordinate2Ds
Coordinates for the first ring. Line segments are constructed from the coordinates.
spatialReference
(Optional) The SpatialReference. The default value is null.
Exceptions
ExceptionDescription
The input coordinates enumeration is null.
Example
Build a donut polygon
List<Coordinate2D> outerCoordinates = new List<Coordinate2D>();
outerCoordinates.Add(new Coordinate2D(10.0, 10.0));
outerCoordinates.Add(new Coordinate2D(10.0, 20.0));
outerCoordinates.Add(new Coordinate2D(20.0, 20.0));
outerCoordinates.Add(new Coordinate2D(20.0, 10.0));

// define the inner polygon as anti-clockwise
List<Coordinate2D> innerCoordinates = new List<Coordinate2D>();
innerCoordinates.Add(new Coordinate2D(13.0, 13.0));
innerCoordinates.Add(new Coordinate2D(17.0, 13.0));
innerCoordinates.Add(new Coordinate2D(17.0, 17.0));
innerCoordinates.Add(new Coordinate2D(13.0, 17.0));

PolygonBuilderEx pbEx = new PolygonBuilderEx(outerCoordinates);
Polygon donutEx = pbEx.ToGeometry() as Polygon;
double areaEx = donutEx.Area;       // area = 100

pbEx.AddPart(innerCoordinates);
donutEx = pbEx.ToGeometry() as Polygon;

areaEx = donutEx.Area;    // area = 84.0

areaEx = GeometryEngine.Instance.Area(donutEx);    // area = 84.0

Requirements

Target Platforms: Windows 11, Windows 10

ArcGIS Pro version: 3 or higher.
See Also