地图
Map类
地图对象类,封装了地图的属性设置、图层变更、事件交互等接口的类。
MapOptions | 类型 | 说明 |
---|---|---|
container |
HTMLElement | string |
地图容器DIV的ID值或者DIV对象,容器里需为空。 |
minZoom |
Number |
设置地图最小缩放级别。 |
maxZoom |
Number |
设置地图最大缩放级别。 |
hash |
Boolean |
默认为false,当此属性为true时 ,地图的位置(缩放,中心纬度,中心经度,方位)将与页面URL的hash同步,例如, /restapi/to/my/page.html#2.59/39.26/53.07/-24.1/60。 |
interactive |
Boolean |
默认为true,当此属性为false时 ,将禁止地图交互,例如:鼠标拖拽地图,键盘移动地图等,但不影响点击事件。 |
pitchWithRotate |
Boolean |
默认为true,当此属性为false时 ,将禁止右键旋转到地图倾斜。 |
preserveDrawingBuffer |
Boolean |
默认为false,当此属性为true时 ,可以用 map.getCanvas().toDataURL() 方法将地图的画布导出到PNG。默认false情况下性能最佳。 |
maxBounds |
LngLatBoundsLike |
设置地图范围 例子:[[116.319665, 39.855919], [116.468324,39.9756]] |
scrollZoom |
Boolean |
默认为true,当此属性为false时,将禁止鼠标滚动缩放地图 |
dragRotate |
Boolean |
默认为true,当此属性为false时,将禁用鼠标拖拽旋转地图 |
dragPan |
Boolean |
默认为true,当此属性为false时,将禁用鼠标拖拽平移地图 |
keyboard |
Boolean |
默认为true,当此属性为false时,将禁用键盘平移地图 |
doubleClickZoom |
Boolean |
默认为true,当此属性为false时,将禁用鼠标双击缩放地图 |
touchZoomRotate |
Boolean |
默认为true,当此属性为false时,将禁用手势双指捏合旋转或缩放地图(仅限移动端) |
trackResize |
Boolean |
默认为true,当此属性为false时,将禁止地图随浏览器窗口大小调整时,自动调整地图 |
center |
LngLat |
地图的初始地理中心点 |
zoom |
Number |
地图的初始缩放级别 |
bearing |
Number |
地图的初始方位(旋转),以度为单位从北方逆时针测量 |
bounds |
LngLatBounds |
地图的初始边界 |
pitch |
Number |
地图的初始俯仰(倾斜),以度数远离屏幕平面(0-60)测量。 |
renderWorldCopies |
Boolean |
当属性为true时 ,在缩小时将渲染世界的多个副本。 |
方法 | 返回值 | 说明 |
---|---|---|
scrollZoom |
Map实例里的成员对象,包含3个方法isEnable、enable、disable |
|
dragRotate |
Map实例里的成员对象,包含4个方法isEnable、isActive、enable、disable |
|
dragPan |
Map实例里的成员对象,包含4个方法isEnable、isActive、enable、disable |
|
keyboard |
Map实例里的成员对象,包含3个方法isEnable、enable、disable |
|
doubleClickZoom |
Map实例里的成员对象,包含3个方法isEnable、enable、disable |
|
touchZoomRotate |
Map实例里的成员对象,包含3个方法isEnable、enable、disable |
|
addControl(control,position) |
control(实例的控制器类);position(string)可设置控制器的位置,有效参数'top-left' , 'top-right' , 'bottom-left' , and 'bottom-right' . |
|
removeControl(control) |
移除已添加的控制器 |
|
getBounds() |
LngLatBounds |
返回当前地图边界范围,西北和东南的坐标 |
fitBounds(LngLatBounds) |
调整地图到这个范围 |
|
getMaxBounds() |
LngLatBounds |
返回设置的最大地图范围,西北和东南的坐标 |
setMaxBounds(LngLatBounds) |
设置的最大地图范围,西北和东南的坐标 |
|
setMinZoom(minZoom) |
参数类型(Number | null | undefined)。Number将设置最小缩放级别(0-24),如果地图当前的缩放级别低于新的最小值,将缩放到新的最小值。如果想清除最小级别,将设置null | undefined |
|
getMinZoom() |
Number |
返回地图的最小允许缩放级别 |
setMaxZoom(minZoom) |
参数类型(Number | null | undefined)。Number将设置最大缩放级别(0-24),如果地图当前的缩放级别高于新的最大值,将缩放到新的最大值。如果想清除最大级别,将设置null | undefined |
|
getMaxZoom() |
Number |
返回地图的最大允许缩放级别 |
getRenderWorldCopies() |
Boolean |
返回是否缩小时将渲染多个世界副本。如果是true,将渲染多个副本 |
setRenderWorldCopies(Boolean) |
设置是否缩小时将渲染多个世界副本。如果是true,将渲染多个副本 |
|
project(lnglat) |
Point |
返回一个Point对象,表示地理坐标相对于地图的像素坐标,container它对应于指定的地理位置 |
unproject(point) |
Lnglat |
返回一个Lnglat对象,表示与指定像素坐标对应的地理坐标 |
on(type,listener) |
为地图指定类型事件添加侦听器。type:要注册的事件类型(string);listener:触发事件调用的函数(function) |
|
on(type,layer,listener) |
为地图覆盖物指定类型事件添加侦听器。type:要注册的事件类型(string);layer:矢量图形覆盖物的ID。listener:触发事件调用的函数(function) |
|
off(type,listener) |
删除以前添加的事件添加侦听器。type:以前注册的事件类型(string);listener:以前添加的函数(function) |
|
off(type,layer,listener) |
删除以前添加的事件添加侦听器。type:以前注册的事件类型(string);layer:以前添加的覆盖物ID。listener:以前添加的函数(function) |
|
addLayer(layer,beforeId) |
添加覆盖物到地图。layer:polygon、polyline、Circle、CircleMarker等覆盖物对象或者自定义GeoJSon对象。beforeId:插在某个覆盖物之前的ID |
|
moveLayer(layerId,beforeId) |
移动覆盖物顺序。layerId:要移动的覆盖物的id; beforeId:要移动到覆盖物之前的id |
|
removeLayer() |
Map实例里的成员对象,包含4个方法isEnable、isActive、enable、disable |
|
remove() |
清理并释放与此地图关联的所有内部资源。这包括DOM元素,事件绑定,Web worker和WebGL资源。完成使用地图后,请使用此方法,并希望确保它不再消耗浏览器资源。之后,您不得在地图上调用任何其他方法 |
|
getCenter() |
Lnglat |
获取当前地图的中心点坐标 |
setCenter(LngLat) |
设置地图中心点坐标,等同于jumpTo({center: center}) |
|
panBy(offset:[x,y],options) |
以像素为单位,沿x方向和y方向移动地图,x向右为正,y向下为正 |
|
panTo(LngLat) |
地图中心点平移至指定点位置 |
|
getZoom() |
Number |
获取地图当前缩放级别 |
setZoom(zoom) |
设置地图缩放级别,等同于jumpTo({zoom: zoom}) |
|
zoomTo() |
地图中心点平移至指定点位置 |
|
zoomIn() |
地图提高一个缩放级别 |
|
zoomOut() |
地图降低一个缩放级别 |
|
jumpTo(options) |
改变地图中心点、缩放级别的组合对象,没有动画.例:map.jumpTo({center: [116。21, 39.213], zoom: 9}) |
|
flyTo(options) |
改变地图中心点、缩放级别的组合对象,并有飞行动画。例:map.flyTo({center: [116。21, 39.213], zoom: 9}) |