Skip to content

Both copy text to your clipboard — Build with AI copies a setup prompt to paste into Claude Code, Cursor, Codex or Copilot; Copy page as Markdown copies this page to paste into a chat. How it works

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 ​

ts
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?: [number, number, number, number] | LngLatLike | [LngLatLike, LngLatLike], ne?: LngLatLike): LngLatBounds

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

Parameters ​

ParameterTypeDescription
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?LngLatLikeThe northeast corner of the bounding box.

Returns ​

LngLatBounds

Example ​

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

OR

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

OR

ts
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 ​

ts
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 ​

ParameterTypeDescription
lnglatLngLatLikegeographic point to check against.

Returns ​

boolean

true if the point is within the bounding box.

Example ​

ts
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 ​

ParameterTypeDescription
objLngLatLike | LngLatBoundsLikeobject 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 ​

ts
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 ​

ParameterTypeDescription
neLngLatLikea 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 ​

ParameterTypeDescription
swLngLatLikea 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 ​

ts
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 ​

ts
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 ​

ParameterTypeDescription
inputLngLatBoundsLikeAn 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 ​

ts
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 ​

ParameterTypeDefault valueDescription
centerLngLatundefinedcenter coordinates of the new bounds.
radiusnumber0Distance in meters from the coordinates to extend the bounds.

Returns ​

LngLatBounds

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

Example ​

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