Skip to content

LngLatBounds

Defined in: src/geo/lng_lat_bounds.ts:41

A LngLatBounds object represents a geographical bounding box, defined by its southwest and northeast points in longitude and latitude.

If no arguments are provided to the constructor, a null bounding box is created.

Note that any Mapbox GL method that accepts a LngLatBounds object as an argument or option can also accept an Array of two LngLatLike constructs and will perform an implicit conversion. This flexible type is documented as LngLatBoundsLike.

Example

let sw = new LngLat(-73.9876, 40.7661);
let ne = new LngLat(-73.9397, 40.8002);
let llb = new LngLatBounds(sw, ne);

Constructors

new LngLatBounds()

new LngLatBounds(sw?: [number, number, number, number] | LngLatLike | [LngLatLike, LngLatLike], ne?: LngLatLike): LngLatBounds

Defined in: src/geo/lng_lat_bounds.ts:65

Parameters

Parameter Type Description
sw? [number, number, number, number] | LngLatLike | [LngLatLike, LngLatLike] The southwest corner of the bounding box. OR array of 4 numbers in the order of west, south, east, north OR array of 2 LngLatLike: [sw,ne]
ne? LngLatLike The northeast corner of the bounding box.

Returns

LngLatBounds

Example

let sw = new LngLat(-73.9876, 40.7661);
let ne = new LngLat(-73.9397, 40.8002);
let llb = new LngLatBounds(sw, ne);
OR
let llb = new LngLatBounds([-73.9876, 40.7661, -73.9397, 40.8002]);
OR
let llb = new LngLatBounds([sw, ne]);

Methods

adjustAntiMeridian()

adjustAntiMeridian(): LngLatBounds

Defined in: src/geo/lng_lat_bounds.ts:342

Adjusts the given bounds to handle the case where the bounds cross the 180th meridian (antimeridian).

Returns

LngLatBounds

The adjusted LngLatBounds

Example

let bounds = new LngLatBounds([175.813127, -20.157768], [-178. 340903, -15.449124]);
let adjustedBounds = bounds.adjustAntiMeridian();
// adjustedBounds will be: [[175.813127, -20.157768], [181.659097, -15.449124]]

contains()

contains(lnglat: LngLatLike): boolean

Defined in: src/geo/lng_lat_bounds.ts:277

Check if the point is within the bounding box.

Parameters

Parameter Type Description
lnglat LngLatLike geographic point to check against.

Returns

boolean

true if the point is within the bounding box.

Example

let llb = new LngLatBounds(
  new LngLat(-73.9876, 40.7661),
  new LngLat(-73.9397, 40.8002)
);

let ll = new LngLat(-73.9567, 40.7789);

console.log(llb.contains(ll)); // = true

extend()

extend(obj: LngLatLike | LngLatBoundsLike): this

Defined in: src/geo/lng_lat_bounds.ts:105

Extend the bounds to include a given LngLatLike or LngLatBoundsLike.

Parameters

Parameter Type Description
obj LngLatLike | LngLatBoundsLike object to extend to

Returns

this


getCenter()

getCenter(): LngLat

Defined in: src/geo/lng_lat_bounds.ts:161

Returns the geographical coordinate equidistant from the bounding box's corners.

Returns

LngLat

The bounding box's center.

Example

let llb = new LngLatBounds([-73.9876, 40.7661], [-73.9397, 40.8002]);
llb.getCenter(); // = LngLat {lng: -73.96365, lat: 40.78315}

getEast()

getEast(): number

Defined in: src/geo/lng_lat_bounds.ts:212

Returns the east edge of the bounding box.

Returns

number

The east edge of the bounding box.


getNorth()

getNorth(): number

Defined in: src/geo/lng_lat_bounds.ts:219

Returns the north edge of the bounding box.

Returns

number

The north edge of the bounding box.


getNorthEast()

getNorthEast(): LngLat

Defined in: src/geo/lng_lat_bounds.ts:177

Returns the northeast corner of the bounding box.

Returns

LngLat

The northeast corner of the bounding box.


getNorthWest()

getNorthWest(): LngLat

Defined in: src/geo/lng_lat_bounds.ts:184

Returns the northwest corner of the bounding box.

Returns

LngLat

The northwest corner of the bounding box.


getSouth()

getSouth(): number

Defined in: src/geo/lng_lat_bounds.ts:205

Returns the south edge of the bounding box.

Returns

number

The south edge of the bounding box.


getSouthEast()

getSouthEast(): LngLat

Defined in: src/geo/lng_lat_bounds.ts:191

Returns the southeast corner of the bounding box.

Returns

LngLat

The southeast corner of the bounding box.


getSouthWest()

getSouthWest(): LngLat

Defined in: src/geo/lng_lat_bounds.ts:170

Returns the southwest corner of the bounding box.

Returns

LngLat

The southwest corner of the bounding box.


getWest()

getWest(): number

Defined in: src/geo/lng_lat_bounds.ts:198

Returns the west edge of the bounding box.

Returns

number

The west edge of the bounding box.


isEmpty()

isEmpty(): boolean

Defined in: src/geo/lng_lat_bounds.ts:256

Check if the bounding box is an empty/null-type box.

Returns

boolean

True if bounds have been defined, otherwise false.


setNorthEast()

setNorthEast(ne: LngLatLike): this

Defined in: src/geo/lng_lat_bounds.ts:85

Set the northeast corner of the bounding box

Parameters

Parameter Type Description
ne LngLatLike a LngLatLike object describing the northeast corner of the bounding box.

Returns

this


setSouthWest()

setSouthWest(sw: LngLatLike): this

Defined in: src/geo/lng_lat_bounds.ts:95

Set the southwest corner of the bounding box

Parameters

Parameter Type Description
sw LngLatLike a LngLatLike object describing the southwest corner of the bounding box.

Returns

this


toArray()

toArray(): [number, number][]

Defined in: src/geo/lng_lat_bounds.ts:232

Returns the bounding box represented as an array.

Returns

[number, number][]

The bounding box represented as an array, consisting of the southwest and northeast coordinates of the bounding represented as arrays of numbers.

Example

let llb = new LngLatBounds([-73.9876, 40.7661], [-73.9397, 40.8002]);
llb.toArray(); // = [[-73.9876, 40.7661], [-73.9397, 40.8002]]

toString()

toString(): string

Defined in: src/geo/lng_lat_bounds.ts:247

Return the bounding box represented as a string.

Returns

string

The bounding box represents as a string of the format 'LngLatBounds(LngLat(lng, lat), LngLat(lng, lat))'.

Example

let llb = new LngLatBounds([-73.9876, 40.7661], [-73.9397, 40.8002]);
llb.toString(); // = "LngLatBounds(LngLat(-73.9876, 40.7661), LngLat(-73.9397, 40.8002))"

convert()

static convert(input: LngLatBoundsLike): LngLatBounds

Defined in: src/geo/lng_lat_bounds.ts:304

Converts an array to a LngLatBounds object.

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

Internally, the function calls LngLat#convert to convert arrays to LngLat values.

Parameters

Parameter Type Description
input LngLatBoundsLike An array of two coordinates to convert, or a LngLatBounds object to return.

Returns

LngLatBounds

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

Example

let arr = [[-73.9876, 40.7661], [-73.9397, 40.8002]];
let llb = LngLatBounds.convert(arr); // = LngLatBounds {_sw: LngLat {lng: -73.9876, lat: 40.7661}, _ne: LngLat {lng: -73.9397, lat: 40.8002}}

fromLngLat()

static fromLngLat(center: LngLat, radius: number): LngLatBounds

Defined in: src/geo/lng_lat_bounds.ts:322

Returns a LngLatBounds from the coordinates extended by a given radius. The returned LngLatBounds completely contains the radius.

Parameters

Parameter Type Default value Description
center LngLat undefined center coordinates of the new bounds.
radius number 0 Distance in meters from the coordinates to extend the bounds.

Returns

LngLatBounds

A new LngLatBounds object representing the coordinates extended by the radius.

Example

let center = new LngLat(-73.9749, 40.7736);
LngLatBounds.fromLngLat(100).toArray(); // = [[-73.97501862141328, 40.77351016847229], [-73.97478137858673, 40.77368983152771]]