ArcGISGeometry

Namespace: GameEngine.Geometry
Class: GameEngine/Geometry/ArcGISGeometry
Since: 1.0.0

Summary

Base class for all classes that represent geometric shapes.

Properties

PropertyTypeNullableReadonlySummary
No
Yes

Indicates the dimensionality of an ArcGISGeometry, relating to the number of spatial dimensions in which the geometry may have a size.

No
Yes

The minimum enclosing bounding-box (or ArcGISEnvelope) that covers the geometry.

No
Yes

True if this geometry contains curve segments, false otherwise.

No
Yes

True if the geometry has m values (measure values), false otherwise.

No
Yes

True if the geometry has z-coordinate values, false otherwise.

No
Yes

True if the geometry is empty, false otherwise.

Yes
Yes

The spatial reference for this geometry.

Dimension

Indicates the dimensionality of an ArcGISGeometry, relating to the number of spatial dimensions in which the geometry may have a size.

You can use ArcGISGeometry.Dimension to determine what kind of symbol can be applied to a specific type of geometry. For example, ArcGISPoint and ArcGISMultipoint are both zero-dimensional point geometries, and both can be displayed using a type of MarkerSymbol. ArcGISPolygon and ArcGISEnvelope are both 2-dimensional area geometries that can be displayed using a type of FillSymbol.

Returns ArcGISGeometryDimension.Unknown if an error occurs.

Extent

The minimum enclosing bounding-box (or ArcGISEnvelope) that covers the geometry.

HasCurves

bool HasCurves

True if this geometry contains curve segments, false otherwise.

ArcGIS software supports polygon and polyline geometries that contain curve segments (where ArcGISSegment.IsCurve is true, sometimes known as true curves or nonlinear segments). Curves may be present in certain types of data - for example Mobile Map Packages (MMPK) or geometry JSON.

If a polygon or polyline geometry contains curve segments, this property returns true. Prior to v100.12, it was not possible to access curve segments, and only ArcGISLineSegment instances would be returned when iterating through the segments in an ArcGISPolygon or ArcGISPolyline object, irrespective of this property.

From v100.12, you can use curve segments when using an ArcGISMultipartBuilder to create or edit polygon and polyline geometries, and also get curve segments when iterating through the segments of existing ArcGISMultipart geometries when this property returns true.

HasM

bool HasM

True if the geometry has m values (measure values), false otherwise.

M is a vertex value that is stored with the geometry. These values typically represent non-spatial measurements or attributes.

HasZ

bool HasZ

True if the geometry has z-coordinate values, false otherwise.

Only 3D geometries contain z-coordinate values. These values typically represent elevation, height, or depth.

IsEmpty

bool IsEmpty

True if the geometry is empty, false otherwise.

A geometry is empty if it does not have valid geographic coordinates, even if the ArcGISSpatialReference is specified. An empty ArcGISGeometry is a valid object that has no location in space.

SpatialReference

ArcGISSpatialReference SpatialReference

The spatial reference for this geometry.

This can be null if the geometry is not associated with an ArcGISSpatialReference.

Methods

SignatureReturn TypeSummary

Equals(ArcGISGeometry)

bool

Checks if two geometries are exactly equal. The types of geometry, order of points, all values, and the ArcGISSpatialReference must all be equal.

Equals(ArcGISGeometry, double)

bool

Checks if two geometries are approximately the same within the given tolerance.

FromJSON(string, ArcGISSpatialReference)

ArcGISGeometry

Creates a geometry from an ArcGIS JSON geometry representation.

Equals

bool Equals(ArcGISGeometry right)

Checks if two geometries are exactly equal. The types of geometry, order of points, all values, and the ArcGISSpatialReference must all be equal.

Since 1.0.0

Arguments
NameTypeSummary
right

The second geometry.

Returns bool

True if the comparison succeeds and the objects are equal, false otherwise.

Equals

bool Equals(ArcGISGeometry right, double tolerance)

Checks if two geometries are approximately the same within the given tolerance.

Since 1.0.0

Arguments
NameTypeSummary
right

The second geometry.

tolerance

The tolerance.

Returns bool

True if the geometries are equal, within the tolerance, otherwise false.

FromJSON

static ArcGISGeometry FromJSON(string inputJSON, ArcGISSpatialReference spatialReference)

Creates a geometry from an ArcGIS JSON geometry representation.

Since 1.0.0

Arguments
NameTypeSummary
inputJSON

JSON representation of geometry.

spatialReference

The geometry's spatial reference.

Returns ArcGISGeometry

Geometry converted from a JSON String.

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.