Point

class Point : Geometry

A location defined by x and y (and optionally z) coordinates. Point geometries represent discrete locations or entities, such as a geocoded house address, the location of a water meter in a water utility network, or a moving vehicle. Larger geographic entities (such as cities) are often represented as points on small-scale maps. Points can be used as the geometry of features and graphics and are often used to construct more complex geometries. They are also used in a Viewpoint to define the center of the display.

Points store a single set of x,y coordinates that define a location (longitude and latitude, for example), and a SpatialReference. Points can optionally have a z-value (commonly used to describe elevation or altitude) and an m-value (commonly used for measurement relative to the geometry).

For points defined with a geographic spatial reference, the x-coordinate is the longitude (east or west), and the y-coordinate is the latitude (north or south). When geographic coordinates are represented in strings, points are generally written using the form "(latitude, longitude)", where the y-coordinate comes before the x-coordinate. Latitude values south of the equator and longitude values west of the prime meridian are expressed as negative numbers.

Use CoordinateFormatter to convert a latitude and longitude formatted string directly to a Point. The coordinate formatter can also return a latitude and longitude formatted string from an existing Point. Other coordinate notations, such as Military Grid Reference System (MGRS) and United States National Grid (USNG) are also supported.

Points are based upon the parent Geometry class. The geometry class is immutable which means that you can not change its shape once it is created. If you need to modify a point once it has been created, use the PointBuilder class instead. The GeometryBuilder.toGeometry() method provides you with the point object.

Since

200.1.0

Constructors

Link copied to clipboard
fun Point(x: Double, y: Double, z: Double, spatialReference: SpatialReference? = null)

Creates a point with an x, y, z and spatial reference. The minimum z-value is -6,356,752 meters, which is the approximate radius of the earth (the WGS 84 datum semi-minor axis). The maximum z-value is 55,000,000 meters.

Link copied to clipboard
fun Point(x: Double, y: Double, spatialReference: SpatialReference? = null)

Creates a point with an x, y and a spatial reference. Creates a point with x, y for the coordinates and a spatial reference.

Link copied to clipboard
fun Point(x: Double, y: Double, z: Double? = null, m: Double? = null, spatialReference: SpatialReference? = null)

Creates a point with an x, y, z, m and spatial reference. The minimum z-value is -6,356,752 meters, which is the approximate radius of the earth (the WGS 84 datum semi-minor axis). The maximum z-value is 55,000,000 meters.

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
val m: Double?

An optional coordinate to define a measure value for the point.

Link copied to clipboard
val x: Double

The x-coordinate for the point. Returns NAN if an error occurs.

Link copied to clipboard
val y: Double

The y-coordinate for the point. Returns NAN if an error occurs.

Link copied to clipboard
val z: Double?

The z-coordinate for the point.

Inherited properties

Link copied to clipboard

The number of dimensions for the geometry. Returns GeometryDimension.Unknown if an error occurs.

Link copied to clipboard

The extent for the geometry. The extent for the geometry which is a envelope and contains the same spatial reference as the input 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 - for example Mobile Map Packages (MMPK) or geometry JSON. When connecting to ArcGIS feature services that support curves[ArcGISFeatureServiceInfo.supportsTrueCurve], this API retrieves densified versions of curve feature geometries by default.

Link copied to clipboard

A value indicating if the geometry has M. If an error occurs false is returned. M is a vertex value that is stored with the geometry.

Link copied to clipboard

A value indicating if the geometry has Z. If an error occurs false is returned. Z typically represent elevations or heights.

Link copied to clipboard

Check if a geometry is empty or not. Only check the geometry to see if it is empty. Does not check the spatial reference. Returns true if an error occurs.

Link copied to clipboard

The spatial reference for the geometry. If the geometry does not have a spatial reference null is returned.

Inherited functions

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

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

Check if two geometries are equal to within some tolerance. This function performs a lightweight comparison of two geometries, such as 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. Returns true if the difference of each is within the tolerance and all other properties of the geometries are exactly equal (spatial reference, vertex count, etc.). A single tolerance is used even if the units for the horizontal coordinates and other values differ, e.g horizontal coordinates in degrees and vertical coordinates in meters. 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. Returns false if an error occurs. For topological equality, use relational operators instead of this function. See GeometryEngine.equals(Geometry, Geometry).

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

Convert an object to JSON string.