sealed class Multipart : Geometry

Defines common members for polyline and polygon multipart geometries. Multipart geometries are based upon the parent Geometry class. The geometry class is immutable which means that you cannot change its shape once it is created. If you need to modify a multipart once it has been created, use the MultipartBuilder class instead. The MultipartBuilder.toGeometry() method provides you with the base geometry object.

A multipart geometry is comprised of a collection of shapes (of the same type) that is managed as a single geometry. A classic example is a set of islands that represent a single country or state. The individual island shapes are distinct, but ArcGIS considers it a single geometry.

Polygon and Polyline inherit from multipart, which in turn inherits from Geometry. Multipart provides access to the geometry's PartCollection via the property. Each Part in the collection is a collection of Segment objects. You can iterate through the segments or points in each part.



See also



Link copied to clipboard

The parts for the multipart. This is a copy and the any changes must be set.

Inherited properties

Link copied to clipboard

Indicates the dimensionality of a Geometry, relating to the number of spatial dimensions in which the geometry may have a size. You can use Geometry.dimension to work out what kind of symbol can be applied to a specific type of geometry. For example, Point and Multipoint are both zero-dimensional point geometries, and both can be displayed using a type of MarkerSymbol. Polygon and Envelope are both 2-dimensional area geometries that can be displayed using a type of FillSymbol.

Link copied to clipboard

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

Link copied to clipboard

True if this geometry contains curve segments, false otherwise. ArcGIS software supports polygon and polyline geometries that contain curve segments (where Segment.isCurve is true, sometimes known as true curves or nonlinear segments). Curves may be present in certain types of data, such as Mobile Map Packages (MMPK) or geometry JSON. When connecting to ArcGIS feature services that support curves (see ArcGISFeatureServiceInfo.supportsTrueCurve), this API retrieves densified versions of curve feature geometries by default.

Link copied to clipboard

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.

Link copied to clipboard

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.

Link copied to clipboard

True if the geometry is empty, false otherwise. A geometry is empty if it does not have valid geographic coordinates, even if the SpatialReference is specified. An empty Geometry is a valid object that has no location in space.

Link copied to clipboard

The spatial reference for this geometry. This can be null if the geometry is not associated with a SpatialReference.

Inherited functions

Link copied to clipboard
open operator override fun equals(other: Any?): Boolean

fun equals(right: Geometry, tolerance: Double): Boolean

Checks if two geometries are approximately the same within the given tolerance. This function performs a lightweight comparison of two geometries that might be useful when writing test code. It uses the tolerance to compare each of x, y, and any other values the geometries possess (such as z or m) independently in the manner: abs(value1 - value2) <= tolerance. The single tolerance value is used even if the x, y, z or m units differ. This function does not respect modular arithmetic of spatial references which wrap around, so longitudes of -180 and +180 degrees are considered to differ by 360 degrees.

Link copied to clipboard
open override fun hashCode(): Int
Link copied to clipboard
open override fun toJson(): String

Convert an object to JSON string.