Skip to content

Class: LngLatBounds

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

constructor

new LngLatBounds(sw?, ne?): LngLatBounds

Parameters

Name 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]);

Defined in

src/geo/lng_lat_bounds.ts:65

Methods

contains

contains(lnglat): boolean

Check if the point is within the bounding box.

Parameters

Name 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

Defined in

src/geo/lng_lat_bounds.ts:280


extend

extend(obj): this

Extend the bounds to include a given LngLatLike or LngLatBoundsLike.

Parameters

Name Type Description
obj LngLatLike | LngLatBoundsLike object to extend to

Returns

this

this

Defined in

src/geo/lng_lat_bounds.ts:108


getCenter

getCenter(): LngLat

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}

Defined in

src/geo/lng_lat_bounds.ts:164


getEast

getEast(): number

Returns the east edge of the bounding box.

Returns

number

The east edge of the bounding box.

Defined in

src/geo/lng_lat_bounds.ts:215


getNorth

getNorth(): number

Returns the north edge of the bounding box.

Returns

number

The north edge of the bounding box.

Defined in

src/geo/lng_lat_bounds.ts:222


getNorthEast

getNorthEast(): LngLat

Returns the northeast corner of the bounding box.

Returns

LngLat

The northeast corner of the bounding box.

Defined in

src/geo/lng_lat_bounds.ts:180


getNorthWest

getNorthWest(): LngLat

Returns the northwest corner of the bounding box.

Returns

LngLat

The northwest corner of the bounding box.

Defined in

src/geo/lng_lat_bounds.ts:187


getSouth

getSouth(): number

Returns the south edge of the bounding box.

Returns

number

The south edge of the bounding box.

Defined in

src/geo/lng_lat_bounds.ts:208


getSouthEast

getSouthEast(): LngLat

Returns the southeast corner of the bounding box.

Returns

LngLat

The southeast corner of the bounding box.

Defined in

src/geo/lng_lat_bounds.ts:194


getSouthWest

getSouthWest(): LngLat

Returns the southwest corner of the bounding box.

Returns

LngLat

The southwest corner of the bounding box.

Defined in

src/geo/lng_lat_bounds.ts:173


getWest

getWest(): number

Returns the west edge of the bounding box.

Returns

number

The west edge of the bounding box.

Defined in

src/geo/lng_lat_bounds.ts:201


isEmpty

isEmpty(): boolean

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

Returns

boolean

True if bounds have been defined, otherwise false.

Defined in

src/geo/lng_lat_bounds.ts:259


setNorthEast

setNorthEast(ne): this

Set the northeast corner of the bounding box

Parameters

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

Returns

this

this

Defined in

src/geo/lng_lat_bounds.ts:86


setSouthWest

setSouthWest(sw): this

Set the southwest corner of the bounding box

Parameters

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

Returns

this

this

Defined in

src/geo/lng_lat_bounds.ts:97


toArray

toArray(): [number, number][]

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

Defined in

src/geo/lng_lat_bounds.ts:235


toString

toString(): string

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

Defined in

src/geo/lng_lat_bounds.ts:250


convert

convert(input): LngLatBounds

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

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

Defined in

src/geo/lng_lat_bounds.ts:307


fromLngLat

fromLngLat(center, radius?): LngLatBounds

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

Parameters

Name 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]]

Defined in

src/geo/lng_lat_bounds.ts:325