Module: ol/proj

ol/proj


import * as olProj from 'ol/proj';

Functions

addCoordinateTransforms(source, destination, forward, inverse)

import {addCoordinateTransforms} from 'ol/proj';

Registers coordinate transform functions to convert coordinates between the source projection and the destination projection. The forward and inverse functions convert coordinate pairs; this function converts these into the functions used internally which also handle extents and coordinate arrays.

Name Type Description
source ProjectionLike

Source projection.

destination ProjectionLike

Destination projection.

forward function

The forward transform function (that is, from the source projection to the destination projection) that takes a Coordinate as argument and returns the transformed Coordinate.

inverse function

The inverse transform function (that is, from the destination projection to the source projection) that takes a Coordinate as argument and returns the transformed Coordinate. If the transform function can only transform less dimensions than the input coordinate, it is supposeed to return a coordinate with only the length it can transform. The other dimensions will be taken unchanged from the source.

addEquivalentProjections(projections)

import {addEquivalentProjections} from 'ol/proj';

Registers transformation functions that don't alter coordinates. Those allow to transform between projections with equal meaning.

Name Type Description
projections Array<Projection>

Projections.

addProjection(projection)

import {addProjection} from 'ol/proj';

Add a Projection object to the list of supported projections that can be looked up by their code.

Name Type Description
projection Projection

Projection instance.

clearUserProjection()

import {clearUserProjection} from 'ol/proj';

Clear the user projection if set.

equivalent(projection1, projection2){boolean}

import {equivalent} from 'ol/proj';

Checks if two projections are the same, that is every coordinate in one projection does represent the same geographic point as the same coordinate in the other projection.

Name Type Description
projection1 Projection

Projection 1.

projection2 Projection

Projection 2.

Returns:
Equivalent.

fromLonLat(coordinate, projection){Coordinate}

import {fromLonLat} from 'ol/proj';

Transforms a coordinate from longitude/latitude to a different projection.

Name Type Description
coordinate Coordinate

Coordinate as longitude and latitude, i.e. an array with longitude as 1st and latitude as 2nd element.

projection ProjectionLike | undefined

Target projection. The default is Web Mercator, i.e. 'EPSG:3857'.

Returns:
Coordinate projected to the target projection.

get(projectionLike){Projection | null}

import {get} from 'ol/proj';

Fetches a Projection object for the code specified.

Name Type Description
projectionLike ProjectionLike

Either a code string which is a combination of authority and identifier such as "EPSG:4326", or an existing projection object, or undefined.

Returns:
Projection object, or null if not in list.

getPointResolution(projection, resolution, point, units){number}

import {getPointResolution} from 'ol/proj';

Get the resolution of the point in degrees or distance units. For projections with degrees as the unit this will simply return the provided resolution. For other projections the point resolution is by default estimated by transforming the point pixel to EPSG:4326, measuring its width and height on the normal sphere, and taking the average of the width and height. A custom function can be provided for a specific projection, either by setting the getPointResolution option in the Projection constructor or by using setGetPointResolution to change an existing projection object.

Name Type Description
projection ProjectionLike

The projection.

resolution number

Nominal resolution in projection units.

point Coordinate

Point to find adjusted resolution at.

units Units | undefined

Units to get the point resolution in. Default is the projection's units.

Returns:
Point resolution.

getTransform(source, destination){TransformFunction}

import {getTransform} from 'ol/proj';

Given the projection-like objects, searches for a transformation function to convert a coordinates array from the source projection to the destination projection.

Name Type Description
source ProjectionLike

Source.

destination ProjectionLike

Destination.

Returns:
Transform function.

getUserProjection(){Projection | null}

import {getUserProjection} from 'ol/proj';

Get the projection for coordinates supplied from and returned by API methods.

Returns:
The user projection (or null if not set).

setUserProjection(projection)

import {setUserProjection} from 'ol/proj';

Set the projection for coordinates supplied from and returned by API methods. This includes all API methods except for those interacting with tile grids, plus FrameState and State.

Name Type Description
projection ProjectionLike

The user projection.

toLonLat(coordinate, projection){Coordinate}

import {toLonLat} from 'ol/proj';

Transforms a coordinate to longitude/latitude.

Name Type Description
coordinate Coordinate

Projected coordinate.

projection ProjectionLike | undefined

Projection of the coordinate. The default is Web Mercator, i.e. 'EPSG:3857'.

Returns:
Coordinate as longitude and latitude, i.e. an array with longitude as 1st and latitude as 2nd element.

transform(coordinate, source, destination){Coordinate}

import {transform} from 'ol/proj';

Transforms a coordinate from source projection to destination projection. This returns a new coordinate (and does not modify the original). If there is no available transform between the two projection, the function will throw an error.

See transformExtent for extent transformation. See the transform method of Geometry and its subclasses for geometry transforms.

Name Type Description
coordinate Coordinate

Coordinate.

source ProjectionLike

Source projection-like.

destination ProjectionLike

Destination projection-like.

Returns:
Coordinate.

transformExtent(extent, source, destination, stops){Extent}

import {transformExtent} from 'ol/proj';

Transforms an extent from source projection to destination projection. This returns a new extent (and does not modify the original).

Name Type Description
extent Extent

The extent to transform.

source ProjectionLike

Source projection-like.

destination ProjectionLike

Destination projection-like.

stops number | undefined

Number of stops per side used for the transform. By default only the corners are used.

Returns:
The transformed extent.

useGeographic()

import {useGeographic} from 'ol/proj';

Use geographic coordinates (WGS-84 datum) in API methods. This includes all API methods except for those interacting with tile grids, plus FrameState and State.

Type Definitions

ProjectionLike{Projection} {string} {undefined}

A projection as Projection, SRS identifier string or undefined.

TransformFunction(input, output, dimension, stride){Array.<number>}

A transform function accepts an array of input coordinate values, an optional output array, and an optional dimension (default should be 2). The function transforms the input coordinate values, populates the output array, and returns the output array.

Name Type Description
input Array.<number>
output Array.<number> | undefined
dimension number | undefined
stride number | undefined

Transforms{Object}

Properties:
Name Type Description
forward TransformFunction

The forward transform (from geographic).

inverse TransformFunction

The inverse transform (to geographic).