Parameters
- geometry
- The input geometry. Cannot be null and its spatial reference cannot be null.
Return Value
The calculated shape preserving area of the geometry in square meters. If the geometry is empty, then zero is returned.
| Exception | Description |
|---|---|
| System.ArgumentNullException | Geometry is null or geometry's spatial reference is null. |
| System.NotImplementedException | The method is not implemented for GeometryBag or Multipatch. |
| ArcGIS.Core.Geometry.Exceptions.ProjectionEngineException | Geometry is missing a spatial reference. |
| System.NotImplementedException | Spatial reference of geometryis an image coordinate system. |
{
// pt
MapPoint pt = MapPointBuilderEx.CreateMapPoint(1.0, 3.0, SpatialReferences.WebMercator);
double area = GeometryEngine.Instance.ShapePreservingArea(pt); // area = 0
List<MapPoint> pts =
[
MapPointBuilderEx.CreateMapPoint(1.0, 1.0, 3.0),
MapPointBuilderEx.CreateMapPoint(1.0, 3.0, 3.0),
MapPointBuilderEx.CreateMapPoint(3, 3, 3.0),
MapPointBuilderEx.CreateMapPoint(3.0, 1.0, 3.0),
];
// multipoint
Multipoint mPt = MultipointBuilderEx.CreateMultipoint(pts);
area = GeometryEngine.Instance.ShapePreservingArea(mPt); // area = 0
// polyline
polyline = PolylineBuilderEx.CreatePolyline(pts);
area = GeometryEngine.Instance.ShapePreservingArea(polyline); // area = 0
// polygon
polygon = PolygonBuilderEx.CreatePolygon(pts, SpatialReferences.WGS84);
area = GeometryEngine.Instance.ShapePreservingArea(polygon);
polygon = PolygonBuilderEx.CreatePolygon(pts, SpatialReferences.WebMercator);
area = GeometryEngine.Instance.ShapePreservingArea(polygon);
polygon = PolygonBuilderEx.CreatePolygon(
[
MapPointBuilderEx.CreateMapPoint( -170, 45),
MapPointBuilderEx.CreateMapPoint( 170, 45),
MapPointBuilderEx.CreateMapPoint( 170, -45),
MapPointBuilderEx.CreateMapPoint( -170, -54)
], SpatialReferences.WGS84);
var area_meters = GeometryEngine.Instance.ShapePreservingArea(polygon);// , AreaUnits.SquareMeters);
var area_miles = GeometryEngine.Instance.ShapePreservingArea(polygon, AreaUnit.SquareMiles);
// area_meters - 352556425383104.37
// area_miles - 136122796.848425
}
Target Platforms: Windows 11 Home, Pro, Enterprise (64 bit)