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