Geometry service GetAreasAndLengthsGeodesic method

The GetAreasAndLengthsGeodesic method calculates geodesic area and perimeter for each input polygon.

GetAreasAndLengthsGeodesic (SpatialReference SpatialReference, Polygon[] InPolygonArray, LinearUnit LengthUnit, LinearUnit AreaUnit, out double[] Lengths)




SpatialReference of the geometries in InPolygonArray. Cannot be null.


The array of polygons for which area and boundary length will be calculated. All geometries are assumed to be in the coordinate system defined by SpatialReference.


Output lengths are expressed in this unit of measure (optional).


Output areas are expressed in this (squared) unit of measure (optional).


A double[] containing the boundary length (perimeter) for each polygon in the input array. The variable is populated when the method is called.

Return Value

A double[] containing the area for each polygon in the input array.


Use this method if you want to calculate an area or length using only the vertices of the polygon and define the lines between the points as geodesic segments independent of the actual shape of the polygon. A geodesic segment is the shortest path between two points on an ellipsoid.

The returned areas and lengths are expressed in the specified area units and linear units, if present, or in the units of the spatial reference. If AreaUnit and LengthUnit are not specified and the input spatial reference is a geographic coordinate system, then the lengths and areas are expressed in meters.

The spatial reference can be a projected or a geographic coordinate system. If the former, then each geometry is inverse projected into its associated geographic coordinate system before the distance calculations are performed.