O V E R V I E W

Geometry Service

A geometry service contains utility methods which provide access to sophisticated and frequently used geometric operations.  An ArcGIS Server Web site can only expose one Geometry service with the static name "Geometry".   Note that geometry input and output, where required, is always packaged as an array.         

 

Use a geometry service to:

 

 

WSDL syntax

 

http://<Web Server Hostname>/<ArcGIS Instance>/services/Geometry/GeometryServer?wsdl

 

Working with a geometry service

Geometry service methods typically take as input a spatial reference (SR) and an array of geometries assumed to be in that spatial SR.  This SR cannot be null.  This allows callers to avoid duplicating the spatial reference within each geometry in the array.  The geometry returned from a method call is not associated with a SR.  It is the consumers responsibility to associate the returned geometries with the correct SR.


Finding a Well-Known ID


Working with a geometry service often involves defining a spatial reference, transformation and/or unit. The International Association of Oil & Gas Producers (OGP) maintains a set of internationally recognized numeric codes to identify standard spatial references (coordinate systems), datum transformations and linear and angular units of measure. The codes are termed EPSG codes or "factory codes" from the European Petroleum and Survey Group which was absorbed into the OGP. ESRI has also defined a set of unique numeric codes to identify the same or similar geometric entities. Other authorities and groups can define their own unique numeric codes as well.  In order to accommodate multiple authorities without overlapping codes, the geometry service uses an explicitly defined range of codes for known and unknown (custom) authorities. The codes are designed to identify an commonly recognized geometric entity, thus each code is termed a "well-known id".
Here are the current rules for mapping WKID ranges to default authority names used by a geometry service:


 

WKIDs for the EPSG and ESRI authorities are available for the following entities:

Spatial Reference - Geographic Coordinate Systems
Type

Type2

Type3

Spatial Reference - Planar (Projected) Coordinate Systems
Type

Type2

Type3

Type4

Datum Transformations

Type
Type2

Type3
 

Units
Type

Type2

 
 

Methods

 

Proxy method

Description

AutoComplete

 

Constructs polygons that fill in the gaps between existing polygons and a set of polylines.

Buffer

Buffers an array of geometries by each distance specified in an array of distances.

 

ConvexHull

Constructs the convex hull of the input geometries.

 

Cut

Splits input polylines or polygons where they cross a cutting polyline.

 

Densify

Converts non-linear geometry to linear geometry.  Adds vertices to linear geometry.
 

DensifyGeodesic

Connects input vertices with densified approximations to geodesic paths between them.

 

Difference

Constructs the set-theoretic difference between an array of geometries and another geometry.

 

FindSRByWKID

Defines a spatial reference based upon its well known identifier (WKID) and optionally a WKID for a vertical datum.

 

FindSRByWKT

Defines a spatial reference based upon its well known text string (WKT) and optionally a WKT for a vertical datum.

 

FindUnitsByWKID

Finds a predefined linear or angular unit of measure based on its EPSG or ESRI WKID.

 

FindUnitsByWKT

Finds a predefined linear or angular unit of measure based on its EPSG definition string.  

 

Generalize

Applies Douglas-Poiker generalization to the input polylines and polygons.

 

GetAreasAndLengths

Calculates area and perimeter length for each polygon.

 

GetAreasAndLengths2

Calculates area and perimeter length for each polygon, allowing specification of output units.

 

GetDistance

Reports the shortest distance between two geometries.

 

GetDistanceGeodesic

Reports the shortest geodesic distance between two geometries.

 

GetLabelPoints

Calculates points for label placement inside each input polygon.

 

GetLengths

Calculates length for each input polyline.

 

GetLengths2

Calculates length for each input polyline, allows specification of output units.

 

GetLengthsGeodesic

Calculates the geodesic length for each input polyline, allowing for specification of output units.

 

Intersect

Constructs the set theoretic intersection of each input and another geometry.

 

Offset

Constructs offset copies of the input polylines or polygons.

 

Project

Projects an array of geometries from their current spatial reference to a destination spatial reference.

 

Relation

Determines the pairs of geometries from the input geometry arrays that participate in the specified spatial relation.

 

Reshape

Reshapes a polyline or polygon using a reshaping line.

 

Simplify

Generates topologically correct geometry.

 

TrimExtend

Trims or extends each input polyline to meet another polyline.

 

Union

Constructs the set-theoretic union of the inputs.