Skip to main content

LngLat

Contents

A LngLat object represents a given longitude and latitude coordinate, measured in degrees. These coordinates are based on the WGS84 (EPSG:4326) standard.

Maps SDK JS uses longitude, latitude coordinate order (as opposed to latitude, longitude) to match the GeoJSON specification.

Note that any Maps SDK JS method that accepts a LngLat object as an argument or option can also accept an Array of two numbers and will perform an implicit conversion. This flexible type is documented as LngLatLike.

Example

let ll = new TrimbleMaps.LngLat(-123.9749, 40.7736);
ll.lng; // = -123.9749

See

Constructors

new LngLat()

new LngLat(lng: number, lat: number): LngLat

Parameters

Parameter Type Description
lng number Longitude, measured in degrees.
lat number Latitude, measured in degrees.

Returns

LngLat

Methods

distanceTo()

distanceTo(lngLat: LngLat): number

Returns the approximate distance between a pair of coordinates in meters Uses the Haversine Formula (from R.W. Sinnott, “Virtues of the Haversine”, Sky and Telescope, vol. 68, no. 2, 1984, p. 159)

Parameters

Parameter Type Description
lngLat LngLat coordinates to compute the distance to

Returns

number

Distance in meters between the two coordinates.

Example

let new_york = new TrimbleMaps.LngLat(-74.0060, 40.7128);
let los_angeles = new LngLat(-118.2437, 34.0522);
new_york.distanceTo(los_angeles); // = 3935751.690893987, "true distance" using a non-spherical approximation is ~3966km

toArray()

toArray(): [number, number]

Returns the coordinates represented as an array of two numbers.

Returns

[number, number]

The coordinates represented as an array of longitude and latitude.

Example

let ll = new TrimbleMaps.LngLat(-73.9749, 40.7736);
ll.toArray(); // = [-73.9749, 40.7736]

toString()

toString(): string

Returns the coordinates represent as a string.

Returns

string

The coordinates represented as a string of the format 'LngLat(lng, lat)'.

Example

let ll = new LngLat(-73.9749, 40.7736);
ll.toString(); // = "LngLat(-73.9749, 40.7736)"

wrap()

wrap(): LngLat

Returns a new LngLat object whose longitude is wrapped to the range (-180, 180).

Returns

LngLat

The wrapped LngLat object.

Example

let ll = new TrimbleMaps.LngLat(286.0251, 40.7736);
let wrapped = ll.wrap();
wrapped.lng; // = -73.9749

convert()

static convert(input: LngLatLike): LngLat

Converts an array of two numbers or an object with lng and lat or lon and lat properties to a LngLat object.

If a LngLat object is passed in, the function returns it unchanged.

Parameters

Parameter Type Description
input LngLatLike An array of two numbers or object to convert, or a LngLat object to return.

Returns

LngLat

A new LngLat object, if a conversion occurred, or the original LngLat object.

Example

let arr = [-73.9749, 40.7736];
let ll = TrimbleMaps.LngLat.convert(arr);
ll;   // = LngLat {lng: -73.9749, lat: 40.7736}
Last updated August 23, 2024.
Contents