Class: Geometry

ol/geom/Geometry~Geometry


import Geometry from 'ol/geom/Geometry';

Abstract base class; normally only used for creating subclasses and not instantiated in apps. Base class for vector geometries.

To get notified of changes to the geometry, register a listener for the generic change event on your geometry instance.

new Geometry()

geom/Geometry.js, line 31
Fires:

Subclasses

Extends

Methods

changed() inherited

Observable.js, line 36

Increases the revision counter and dispatches a 'change' event.

get(key){*} inherited

Object.js, line 119

Gets a value.

Name Type Description
key string

Key name.

Returns:
Value.

getClosestPoint(point, opt_closestPoint){module:ol/coordinate~Coordinate}

geom/Geometry.js, line 106

Return the closest point of the geometry to the passed point as coordinate.

Name Type Description
point module:ol/coordinate~Coordinate

Point.

closestPoint module:ol/coordinate~Coordinate

Closest point.

Returns:
Closest point.

getExtent(opt_extent){module:ol/extent~Extent}

geom/Geometry.js, line 139

Get the extent of the geometry.

Name Type Description
extent module:ol/extent~Extent

Extent.

Returns:
extent Extent.

getKeys(){Array.<string>} inherited

Object.js, line 132

Get a list of object property names.

Returns:
List of property names.

getProperties(){Object.<string, *>} inherited

Object.js, line 141

Get an object of all property names and values.

Returns:
Object.

getRevision(){number} inherited

Observable.js, line 47

Get the version number for this object. Each time the object is modified, its version number will be incremented.

Returns:
Revision.

intersectsCoordinate(coordinate){boolean}

geom/Geometry.js, line 119

Returns true if this geometry includes the specified coordinate. If the coordinate is on the boundary of the geometry, returns false.

Name Type Description
coordinate module:ol/coordinate~Coordinate

Coordinate.

Returns:
Contains coordinate.

on(type, listener){module:ol/events~EventsKey|Array.<module:ol/events~EventsKey>} inherited

Observable.js, line 60

Listen for a certain type of event.

Name Type Description
type string | Array.<string>

The event type or array of event types.

listener function

The listener function.

Returns:
Unique key for the listener. If called with an array of event types as the first argument, the return will be an array of keys.

once(type, listener){module:ol/events~EventsKey|Array.<module:ol/events~EventsKey>} inherited

Observable.js, line 82

Listen once for a certain type of event.

Name Type Description
type string | Array.<string>

The event type or array of event types.

listener function

The listener function.

Returns:
Unique key for the listener. If called with an array of event types as the first argument, the return will be an array of keys.

rotate(angle, anchor)

geom/Geometry.js, line 155

Rotate the geometry around a given coordinate. This modifies the geometry coordinates in place.

Name Type Description
angle number

Rotation angle in radians.

anchor module:ol/coordinate~Coordinate

The rotation center.

scale(sx, opt_sy, opt_anchor)

geom/Geometry.js, line 170

Scale the geometry (with an optional origin). This modifies the geometry coordinates in place.

Name Type Description
sx number

The scaling factor in the x-direction.

sy number

The scaling factor in the y-direction (defaults to sx).

anchor module:ol/coordinate~Coordinate

The scale origin (defaults to the center of the geometry extent).

set(key, value, opt_silent) inherited

Object.js, line 164

Sets a value.

Name Type Description
key string

Key name.

value *

Value.

silent boolean

Update without triggering an event.

setProperties(values, opt_silent) inherited

Object.js, line 183

Sets a collection of key-value pairs. Note that this changes any existing properties and adds new ones (it does not remove any existing properties).

Name Type Description
values Object.<string, *>

Values.

silent boolean

Update without triggering an event.

simplify(tolerance){module:ol/geom/Geometry~Geometry}

geom/Geometry.js, line 184

Create a simplified version of this geometry. For linestrings, this uses the the href="https://en.wikipedia.org/wiki/Ramer-Douglas-Peucker_algorithm">https://en.wikipedia.org/wiki/Ramer-Douglas-Peucker_algorithm Douglas Peucker algorithm. For polygons, a quantization-based simplification is used to preserve topology.

Name Type Description
tolerance number

The tolerance distance for simplification.

Returns:
A new, simplified version of the original geometry.

transform(source, destination){module:ol/geom/Geometry~Geometry}

geom/Geometry.js, line 258

Transform each coordinate of the geometry from one coordinate reference system to another. The geometry is modified in place. For example, a line will be transformed to a line and a circle to a circle. If you do not want the geometry modified in place, first clone() it and then use this function on the clone.

Name Type Description
source module:ol/proj~ProjectionLike

The current projection. Can be a string identifier or a module:ol/proj/Projection~Projection object.

destination module:ol/proj~ProjectionLike

The desired projection. Can be a string identifier or a module:ol/proj/Projection~Projection object.

Returns:
This geometry. Note that original geometry is modified in place.

translate(deltaX, deltaY)

geom/Geometry.js, line 239

Translate the geometry. This modifies the geometry coordinates in place. If instead you want a new geometry, first clone() this geometry.

Name Type Description
deltaX number

Delta X.

deltaY number

Delta Y.

un(type, listener) inherited

Observable.js, line 101

Unlisten for a certain type of event.

Name Type Description
type string | Array.<string>

The event type or array of event types.

listener function

The listener function.

unset(key, opt_silent) inherited

Object.js, line 195

Unsets a property.

Name Type Description
key string

Key name.

silent boolean

Unset without triggering an event.