Provides access to more standard operations on geometric 'value' objects. The input geometries are never modified by these operations. Designed for use in building web services or other kinds of distributed applications.
Members
Name | Description | |
---|---|---|
AutoComplete | Discovers polygons bounded by existing polygons and input linework. | |
Buffer | Buffers an array of geometries by each distance specified in an array of distances. The distance units can optionally be specified. Geometries buffered at a given distance can optionally be unioned together. | |
BufferGeodesic | Constructs true buffer regions around Points, lines and polygons using true geodesic distances and directions. | |
ConvexHull | Computes the convex hull of the input geometries | |
Cut | Cuts the target polyline or polygon Cutter. | |
Densify | Applies the ArcObjects 'Densify' operation to each element of the geometry array. | |
DensifyGeodesic | Densifies geometries by plotting points along the geodesics between existing vertices (uses IPolycurve4::GeodesicDensify). | |
Difference | Returns an array of geometries where each result geometry R[i] is (array1[i] difference G2). | |
FindSRByWKID | Defines an SR based upon its well known identifier (WKID) and optionally a WKID for a vertical datum. The resolution and xy tolerances are either computed from the sr horizon or set to defaults. 'authority' is typically either 'EPSG' or 'Esri'. | |
FindSRByWKT | Defines a spatial reference object based upon its well known text string (WKT) and optionally a WKT for a vertical datum. The resolution and xy tolerances are either computed from the sr horizon or set to defaults. The output sr is always high precision. | |
FindUnitsByWKID | Defines a unit object based upon its well known identified (WKID). 'authority' is typically either 'EPSG' or 'Esri'. | |
FindUnitsByWKT | Defines a unit object based upon its well known text string. | |
Generalize | Returns generalized (Douglas-Peucker) versions of the input polylines and polygons (uses IPolycurve::Generalize). | |
GetAreasAndLengths | Calculates areas and perimeter lengths for each polygon in the specified array. | |
GetAreasAndLengths2 | Calculates areas and perimeter lengths for each polygon in the specified array. Optionally does unit conversion. | |
GetAreasAndLengthsGeodesic | Returns true geodesic area and geodesic perimeter length for each input polygon. | |
GetAreasAndLengthsPreserveShape | Returns true area and perimeter length for each input polygon. | |
GetDistance | Reports shortest distance between G1 and G2. | |
GetDistanceGeodesic | Reports the shortest geodesic distance between G1 and G2. | |
GetLabelPoints | Calculates an interior point for each polygon. | |
GetLengths | Calculates the length of eacch polyline in the specified array. | |
GetLengths2 | Calculates the length of eacch polyline in the specified array. Optionally does unit conversion. | |
GetLengthsGeodesic | Returns geodesic length of each Polyline. | |
GetLengthsPreserveShape | Returns true length of each polyline. | |
Intersect | Returns an array of geometries where each result geometry R[i] is (array1[i] intersect G2. If G2 is an Envelope, then this is clipping. | |
Offset | Returns an array of polylines and polygons that are offset versions of the input polylines and polygons (uses ITopologicalOperator::ConstructOffset). | |
Project | Projects an array of geometries from their current spatial reference (pInSR) to a destination spatial reference (pOutSR). The projection process can optionally include a datum transformation if the source and destination SRs have different GCSs. | |
Relation | Determines the pairs of geometries from the input geometry arrays that participate in the specified spatial relation. | |
Reshape | Reshapes the target polyline or polygon. The reshaping polyline can have only one part. If the target was not reshaped, an empty geometry of the saem type is returned. | |
Simplify | Applies the ArcObjects 'Simplify' operation to each element of the geometry array. | |
TrimExtend | Trims or extends each polyline in the input array using TrimExtendTo (uses IConstructCurve::ConstructExtended for extension operation). | |
Union | Returns the topological union of the input geometries (uses ITopologicalOperator::ConstructUnion). The input geometries must have the same dimension (0d, 1d, 2d). |
IGeometryServer3.BufferGeodesic Method
Constructs true buffer regions around Points, lines and polygons using true geodesic distances and directions.
Public Function BufferGeodesic ( _
ByVal pInSR As ISpatialReference, _
ByVal pOutSR As ISpatialReference, _
ByVal pDistances As IDoubleArray, _
ByVal bufferDeviation As Double, _
ByVal pLinearDistanceUnit As ILinearUnit, _
ByVal bUnion As Boolean, _
ByVal pInGeometries As IGeometryArray _
) As IGeometryArray
public IGeometryArray BufferGeodesic (
ISpatialReference pInSR,
ISpatialReference pOutSR,
IDoubleArray pDistances,
double bufferDeviation,
ILinearUnit pLinearDistanceUnit,
bool bUnion,
IGeometryArray pInGeometries
);
Remarks
If geometries
are in geographic coordinate system, then geodesic
needs to be set to true
in order to generate a buffer polygon using a geodesic distance. The bufferSR
input parameter will be ignored when geodesic
is set to true
.
IGeometryServer3.GetAreasAndLengthsGeodesic Method
Returns true geodesic area and geodesic perimeter length for each input polygon.
Public Sub GetAreasAndLengthsGeodesic ( _
ByVal pSR As ISpatialReference, _
ByVal pPolygons As IPolygonArray, _
ByVal pLengthUnit As ILinearUnit, _
ByVal pAreaUnit As ILinearUnit, _
ByVal areaUnitEnum As esriAreaUnits, _
ByRef ppAreas As IDoubleArray, _
ByRef ppLengths As IDoubleArray _
)
public void GetAreasAndLengthsGeodesic (
ISpatialReference pSR,
IPolygonArray pPolygons,
ILinearUnit pLengthUnit,
ILinearUnit pAreaUnit,
esriAreaUnits areaUnitEnum,
ref IDoubleArray ppAreas,
ref IDoubleArray ppLengths
);
Remarks
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. This method calculates the ellipsoidal shortest path distance between each pair of the vertices in the polylines.
The spatial reference can be a projected or a geographic coordinate system. If the former, then the geometries are first inverse projected into its associated geographic coordinate system and then the distance calculations are performed.
IGeometryServer3.GetAreasAndLengthsPreserveShape Method
Returns true area and perimeter length for each input polygon.
Public Sub GetAreasAndLengthsPreserveShape ( _
ByVal pSR As ISpatialReference, _
ByVal pPolygons As IPolygonArray, _
ByVal pLengthUnit As ILinearUnit, _
ByVal pAreaUnit As ILinearUnit, _
ByVal areaUnitEnum As esriAreaUnits, _
ByRef ppAreas As IDoubleArray, _
ByRef ppLengths As IDoubleArray _
)
public void GetAreasAndLengthsPreserveShape (
ISpatialReference pSR,
IPolygonArray pPolygons,
ILinearUnit pLengthUnit,
ILinearUnit pAreaUnit,
esriAreaUnits areaUnitEnum,
ref IDoubleArray ppAreas,
ref IDoubleArray ppLengths
);
Remarks
The method calculates the area or length of the geometry on the surface of the Earth ellipsoid, for geometry defined in projected or geographic coordinate system. This method preserves the shape of the geometry in its coordinate system. This means the true area or length will be calculated for the geometry you see in the map. (What you see is what you get.)
The returned lengths and areas are expressed in the specified linear units and area 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.
IGeometryServer3.GetLengthsPreserveShape Method
Returns true length of each polyline.
Public Function GetLengthsPreserveShape ( _
ByVal pSR As ISpatialReference, _
ByVal polylines As IPolylineArray, _
ByVal pLengthUnit As ILinearUnit _
) As IDoubleArray
public IDoubleArray GetLengthsPreserveShape (
ISpatialReference pSR,
IPolylineArray polylines,
ILinearUnit pLengthUnit
);
Remarks
The method calculates the length of the geometry on the surface of the Earth ellipsoid, for geometry defined in projected or geographic coordinate system. This method preserves the shape of the geometry in its coordinate system. This means the true length will be calculated for the geometry you see in the map. (What you see is what you get.)
The returned lengths are expressed in the specified linear units, if present, or in the units of the spatial reference. If LengthUnit is not specified and the input spatial reference is a geographic coordinate system, then the lengths are expressed in meters.
Inherited Interfaces
Interfaces | Description |
---|---|
IGeometryServer2 | Provides access to more standard operations on geometric 'value' objects. The input geometries are never modified by these operations. Designed for use in building web services or other kinds of distributed applications. |
IGeometryServer | Provides access to standard operations on geometric 'value' objects. The input geometries are never modified by these operations. Designed for use in building web services and web applications. |
Classes that implement IGeometryServer3
Classes | Description |
---|---|
GeometryServerImpl | Provides access to standard operations on geometric 'value' objects. The input geometries are never modified by these operations. Designed for use in building web services or other kinds of distributed applications. |