Class: LineString

ol/geom/LineString~LineString


import LineString from 'ol/geom/LineString';

Linestring geometry.

new LineString(coordinates, opt_layout)

geom/LineString.js, line 24
Name Type Description
coordinates Array.<module:ol/coordinate~Coordinate> | Array.<number>

Coordinates. For internal use, flat coordinates in combination with opt_layout are also accepted.

layout module:ol/geom/GeometryLayout

Layout.

Fires:

Extends

Methods

appendCoordinate(coordinate)

geom/LineString.js, line 72

Append the passed coordinate to the coordinates of the linestring.

Name Type Description
coordinate module:ol/coordinate~Coordinate

Coordinate.

applyTransform(transformFn) inherited

geom/SimpleGeometry.js, line 200

Apply a transform function to each coordinate of the geometry. The geometry is modified in place. If you do not want the geometry modified in place, first clone() it and then use this function on the clone.

Name Type Description
transformFn module:ol/proj~TransformFunction

Transform.

changed() inherited

Observable.js, line 36

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

clone(){module:ol/geom/LineString~LineString}

geom/LineString.js, line 87

Make a complete copy of the geometry.

Returns:
Clone.

forEachSegment(callback){T|boolean}

geom/LineString.js, line 119

Iterate over each segment, calling the provided callback. If the callback returns a truthy value the function returns that value immediately. Otherwise the function returns false.

Name Type Description
callback function

Function called for each segment.

Returns:
Value.

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} inherited

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.

getCoordinateAt(fraction, opt_dest){module:ol/coordinate~Coordinate}

geom/LineString.js, line 168

Return the coordinate at the provided fraction along the linestring. The fraction is a number between 0 and 1, where 0 is the start of the linestring and 1 is the end.

Name Type Description
fraction number

Fraction.

dest module:ol/coordinate~Coordinate

Optional coordinate whose values will be modified. If not provided, a new coordinate will be returned.

Returns:
Coordinate of the interpolated point.

getCoordinateAtM(m, opt_extrapolate){module:ol/coordinate~Coordinate}

geom/LineString.js, line 137

Returns the coordinate at m using linear interpolation, or null if no such coordinate exists.

opt_extrapolate controls extrapolation beyond the range of Ms in the MultiLineString. If opt_extrapolate is true then Ms less than the first M will return the first coordinate and Ms greater than the last M will return the last coordinate.

Name Type Description
m number

M.

extrapolate boolean

Extrapolate. Default is false.

Returns:
Coordinate.

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

geom/Geometry.js, line 139

Get the extent of the geometry.

Name Type Description
extent module:ol/extent~Extent

Extent.

Returns:
extent Extent.

getFirstCoordinate(){module:ol/coordinate~Coordinate} inherited

geom/SimpleGeometry.js, line 65

Return the first coordinate of the geometry.

Returns:
First coordinate.

getKeys(){Array.<string>} inherited

Object.js, line 132

Get a list of object property names.

Returns:
List of property names.

getLastCoordinate(){module:ol/coordinate~Coordinate} inherited

geom/SimpleGeometry.js, line 81

Return the last coordinate of the geometry.

Returns:
Last point.

getLayout(){module:ol/geom/Geometry~GeometryLayout} inherited

geom/SimpleGeometry.js, line 90

Return the layout of the geometry.

Returns:
Layout.

getLength(){number}

geom/LineString.js, line 179

Return the length of the linestring on projected plane.

Returns:
Length (on projected plane).

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.

getType(){module:ol/geom/GeometryType}

geom/LineString.js, line 210

Get the type of this geometry.

Returns:
Geometry type.

intersectsCoordinate(coordinate){boolean} inherited

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.

intersectsExtent(extent){boolean}

geom/LineString.js, line 218

Test if the geometry and the passed extent intersect.

Name Type Description
extent module:ol/extent~Extent

Extent.

Returns:
true if the geometry and the extent intersect.

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) inherited

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) inherited

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} inherited

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} inherited

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) inherited

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.