LngLatBounds
定义于: src/geo/lng_lat_bounds.ts
LngLatBounds
对象表示地理边界框,由西南角和东北角的经纬度坐标定义;
示例
let sw = new LngLat(-73.9876, 40.7661);
let ne = new LngLat(-73.9397, 40.8002);
let llb = new LngLatBounds(sw, ne);
构造函数
构造函数
new LngLatBounds(sw?: LngLatLike, ne?: LngLatLike): LngLatBounds
定义于: src/geo/lng_lat_bounds.ts:48
参数
参数 | 类型 | 描述 |
---|---|---|
sw | LngLatLike | 边界框的西南角 |
ne | LngLatLike | 边界框的东北角 |
返回
LngLatBounds
方法
adjustAntiMeridian()
adjustAntiMeridian(): [number, number, number, number]
定义于: src/geo/lng_lat_bounds.ts:280
为那些穿过反子午线(即日期变更线,经度为±180度)的边界计算调整后的经纬度数组;
返回
[number, number, number, number]
如果边界跨越反子午线,则返回调整后的[west, south, east, north]数组;如果未跨越,则返回未调整的数组;
示例
let bounds = new LngLatBounds([175.813127, -20.157768], [-170.813127, -15.449124]);
bounds.adjustAntiMeridian(); // = [175.813127, -20.157768, 181.659097, -15.449124]
// 其中181.659097是-170.813127转换至180以东的表示法
// 因此adjustedBounds将是: [[175.813127, -20.157768], [181.659097, -15.449124]]
contains()
contains(lnglat: LngLatLike): boolean
定义于: src/geo/lng_lat_bounds.ts:277
检查指定点是否在边界框内;
参数
参数 | 类型 | 描述 |
---|---|---|
lnglat | LngLatLike | 要检查的地理点 |
返回
boolean
如果点在边界框内则返回true
;
示例
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
定义于: src/geo/lng_lat_bounds.ts:105
扩展边界框以包含给定的LngLatLike或LngLatBoundsLike对象;
参数
参数 | 类型 | 描述 |
---|---|---|
obj | LngLatLike | LngLatBoundsLike | 要扩展包含的对象 |
返回
this
getCenter()
getCenter(): LngLat
定义于: src/geo/lng_lat_bounds.ts:161
返回边界框角落之间等距的地理坐标;
返回
LngLat
边界框的中心点;
示例
let llb = new LngLatBounds([-73.9876, 40.7661], [-73.9397, 40.8002]);
llb.getCenter(); // = LngLat {lng: -73.96365, lat: 40.78315}
getEast()
getEast(): number
定义于: src/geo/lng_lat_bounds.ts:212
返回边界框的东边缘;
返回
number
边界框的东边缘;
getNorth()
getNorth(): number
定义于: src/geo/lng_lat_bounds.ts:219
返回边界框的北边缘;
返回
number
边界框的北边缘;
getNorthEast()
getNorthEast(): LngLat
定义于: src/geo/lng_lat_bounds.ts:177
返回边界框的东北角;
返回
LngLat
边界框的东北角;
getNorthWest()
getNorthWest(): LngLat
定义于: src/geo/lng_lat_bounds.ts:184
返回边界框的西北角;
返回
LngLat
边界框的西北角;
getSouth()
getSouth(): number
定义于: src/geo/lng_lat_bounds.ts:205
返回边界框的南边缘;
返回
number
边界框的南边缘;
getSouthEast()
getSouthEast(): LngLat
定义于: src/geo/lng_lat_bounds.ts:191
返回边界框的东南角;
返回
LngLat
边界框的东南角;
getSouthWest()
getSouthWest(): LngLat
定义于: src/geo/lng_lat_bounds.ts:170
返回边界框的西南角;
返回
LngLat
边界框的西南角;
getWest()
getWest(): number
定义于: src/geo/lng_lat_bounds.ts:198
返回边界框的西边缘;
返回
number
边界框的西边缘;
isEmpty()
isEmpty(): boolean
定义于: src/geo/lng_lat_bounds.ts:256
检查边界框是否为空/null
类型边界;
返回
boolean
如果边界已定义则返回true,否则返回false;
setNorthEast()
setNorthEast(ne: LngLatLike): this
定义于: src/geo/lng_lat_bounds.ts:85
设置边界框的东北角;
参数
参数 | 类型 | 描述 |
---|---|---|
ne | LngLatLike | 描述边界框东北角的LngLatLike对象 |
返回
this
setSouthWest()
setSouthWest(sw: LngLatLike): this
定义于: src/geo/lng_lat_bounds.ts:95
设置边界框的西南角;
参数
参数 | 类型 | 描述 |
---|---|---|
sw | LngLatLike | 描述边界框西南角的LngLatLike对象 |
返回
this
toArray()
toArray(): [number, number][]
定义于: src/geo/lng_lat_bounds.ts:232
以数组形式返回边界框;
返回
[number, number][]
以数组形式表示的边界框,由边界框的西南角和东北角坐标组成的数字数组;
示例
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
定义于: src/geo/lng_lat_bounds.ts:247
以字符串形式返回边界框;
返回
string
以'LngLatBounds(LngLat(lng, lat), LngLat(lng, lat))'
格式的字符串表示的边界框;
示例
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
定义于: src/geo/lng_lat_bounds.ts:304
将数组转换为LngLatBounds
对象;
如果传入LngLatBounds
对象,函数将原样返回它;
在内部,该函数调用LngLat#convert
将数组转换为LngLat
值;
参数
参数 | 类型 | 描述 |
---|---|---|
input | LngLatBoundsLike | 要转换的两个坐标组成的数组,或要返回的LngLatBounds对象 |
返回
LngLatBounds
如果发生转换,则返回新的LngLatBounds
对象,否则返回原始的LngLatBounds
对象;
示例
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 = 0): LngLatBounds
定义于: src/geo/lng_lat_bounds.ts:322
返回一个由给定坐标扩展指定radius
后的LngLatBounds
;返回的LngLatBounds
完全包含radius
;
参数
参数 | 类型 | 默认值 | 描述 |
---|---|---|---|
center | LngLat | undefined | 新边界的中心坐标 |
radius | number | 0 | 从坐标扩展边界的距离(以米为单位) |
返回
LngLatBounds
表示坐标扩展radius
后的新LngLatBounds
对象;
示例
let center = new LngLat(-73.9749, 40.7736);
LngLatBounds.fromLngLat(100).toArray(); // = [[-73.97501862141328, 40.77351016847229], [-73.97478137858673, 40.77368983152771]]