Map

继承Evented


示例

var map = new wmapgl.Map ({
  container :  'map',
  center : [116.45, 39.9],
  zoom :  13,
  style :  style_object
});

构造函数

new Map (options :  Object)

构造选项

选项名 类型 默认值 描述
container (HTMLElement | string) 指定地图所在的容器DOM, 也可指定DOM的ID。 该DOM不能有子元素。
minZoom number 0 地图最小缩放级别(0-24)
maxZoom numbe 22 地图最大缩放级别(0-24)
style (Object | string) 地图配置样式
pitchWithRotate boolean true 如果为false,地图的俯仰(倾斜)控制与“拖动旋转”交互将被禁用。
maxBounds LngLatBoundsLike 如果设置,地图将被现在在给定的边界
scrollZoom (boolean | Object) true 为true,开启滚动缩放地图模式。
boxZoom boolean true 如果为true,启用拉框缩放模式
dragRotate boolean true 如果为true,启用拖拽旋转模式
dragPan boolean true 为true,启用拖拽平移模式
keyboard boolean true 为true,启用键盘快捷键模式
doubleClickZoom boolean true 为true,启用双击缩放地图模式
touchZoomRotate boolean true 为true,启用捏合旋转、缩放地图模式
center LngLatLike [0,0] 地图初始中心点
zoom number 0 地图初始级别
bearing number 0 地图初始旋转角度
pitch number 0 地图初始倾斜角度
bounds LngLatBoundsLike? 地图初始范围,如果指定该值,会覆盖center和zoom属性

方法

地图基本方法

方法 返回值 描述
addControl (control : IControl,position : string?) this 添加控件。位置可取'top-left' , 'top-right' , 'bottom-left', 'bottom-right'。默认为 'top-right' 。
removeControl (control : IControl) this 移除控件
resize (eventData : Object) this 根据地图容器调整地图大小
panBy (offset : PointLike,options : AnimationOptions,eventData : Object) this 安偏移量移动地图
panTo (lnglat : LngLatLike,options : AnimationOptions,eventData : Object) this 移动到地图指定位置
jumpTo (options : Object,eventData : Object) this 改变中心、级别、方位和俯仰的任何组合,没有动画过度
flyTo (options : Object,eventData : Object) this 改变中心、级别、方位和俯仰的任何组合,使过渡沿曲线运动,从而唤起飞行。
zoomTo (zoom : number,options : AnimationOptions,eventData : Object) this 绽放到指定级别
zoomIn (options : AnimationOptions,eventData : Object) this 放大一级
zoomOut (options : AnimationOptions,eventData : Object) this 缩小一级
rotateTo (bearing : number,options : AnimationOptions,eventData : Object) this 使用动画转换将地图旋转到指定的方位。
stop () this 停止所有动画过渡

地图属性获取和设置方法

方法 返回值 描述
getBounds () LngLatBounds 获取当前地图的范围
getMaxBounds () (LngLatBounds | null) 获取地图最大范围
setMaxBounds (bounds : (LngLatBoundsLike | null) this 设置地图最大范围
getZoom () number 获取地图级别
setZoom (zoom : number,eventData : Object) this 指定级别
getMinZoom () number 获取地图最小级别
setMinZoom (zoom : number) this 设置地图最小级别
getMaxZoom () number 获取地图最大级别
setMaxZoom (zoom : number) this 设置地图最大级别
getCenter () LngLat 获取中心点
setCenter (center : LngLatLike,eventData : Object) this 设置中心点
getBearing () number 获取地图方位
setBearing (bearing : number,eventData : Object) this 设置地图方位
getPitch () number 获取地图俯仰(倾斜)
setPitch (pitch : number,eventData : Object) this 设置地图俯仰(倾斜)
isMoving () boolean 当前地图是否在移动
isZooming () boolean 当前地图是否在缩放
isRotating () boolean 当前地图是否在旋转
getContainer () HTMLElement 获取容器
loaded () boolean 地图加载完成
remove () 清理并释放与此地图关联的所有内部资源。

事件方法

方法 返回值 描述
on (type : string,layerId : string,listener : Function) this 添加特定图层的事件,目前的事件类型有'mousedown' , 'mouseup' , 'click' , 'dblclick' , 'mousemove' , 'mouseenter' , 'mouseleave' , 'mouseover' , 'mouseout' , 'contextmenu' , 'touchstart' , 'touchend' , 'touchcancel'
on (type : string,listener : Function) this 添加地图事件
off (type : string,layerId : string,listener : Function) this 移除特定图层的事件
off (type : string,listener : Function) this 移除Map#on添加的事件

样式方法

方法 返回值 描述
setStyle (style,options : Option) 设置地图样式
getStyle () Object 获取地图样式
isStyleLoaded () boolean 样式是否加载完成

数据源方法

方法 返回值 描述
addSource (id : string,source : Object) this 添加数据源
isSourceLoaded (id : string) boolean 数据源加载完成
removeSource (id : string) this 移除数据源
getSource (id : string) Object 获取数据源

图片方法

方法 返回值 描述
addImage (id : string,image,options : any) 添加图片
updateImage (id : string,image) 更新图片
hasImage (id : string) boolean 图片是否添加到地图
removeImage (id : string) 从地图移除图片
loadImage (url : string,callback : Function (error,data) 加载图片
listImages () string[] 加载到地图的所以图片列表

图层方法

方法 返回值 描述
addLayer (layer : Layers,beforeId : string?) this 添加图层,beforeId是插入新图层前面的现有图层ID。 如果该参数被省略,该图层将会被添加到图层数组的末尾。
moveLayer (id : string,beforeId : string?) this 移动图层
removeLayer (id : string) 移除图层
getLayer (id : string) Object 获取图层
setLayerZoomRange (layerId : string,minZoom : number,maxZoom : number) this 设置指定层的缩放级别范围
setFilter (layerId : string,filter : (Array | null),options : Object?) this 设置过滤条件
getFilter (layerId : string) Array 获取过滤条件
setPaintProperty (layerId : string,name : string,value : any,options : Object?) this 设置绘制属性
getPaintProperty (layerId : string,name : string) any 获取绘制属性
setLayoutProperty (layerId : string,name : string,value : any,options : Object?) this 设置布局属性
getLayoutProperty (layerId : string,name : string) any 获取布局属性

其他方法

方法 返回值 描述
setFeatureState (feature : Object,state : Object) 设置要素的状态。对象会与要素的现有状态合并。
removeFeatureState (feature : Object,key : string?) 移除要素的状态
getFeatureState (feature : Object) Object 获取要素状态
getCanvasContainer () HTMLElement 返回包含地图 标签的 HTML 元素。
getCanvas () HTMLCanvasElement 返回地图的 元素。
areTilesLoaded () boolean 瓦片加载完成

事件

事件名称 数据 描述
resize 改变地图大小事件
remove 地图移除事件
click MapMouseEvent 单击
dblclick MapMouseEvent 双击
mousedown MapMouseEvent 鼠标按下事件
mouseup MapMouseEvent 鼠标弹起
mouseover MapMouseEvent 鼠标移到
mousemove MapMouseEvent 鼠标移动
mouseenter MapMouseEvent 鼠标进入
mouseleave MapMouseEvent 鼠标离开
movestart {originalEvent : DragEvent} 地图移动开始
move MapMouseEvent | MapTouchEvent 地图移动
moveend {originalEvent : DragEvent} 地图移动结束
dragstart {originalEvent : DragEvent} 地图拖动开始
drag MapMouseEvent | MapTouchEvent 地图拖动
dragend {originalEvent : DragEvent} 地图拖动结束
zoomstart MapMouseEvent | MapTouchEvent 地图级别改变开始
zoom MapMouseEvent | MapTouchEvent 地图级别改变
zoomend MapMouseEvent | MapTouchEvent 地图级别改变结束
rotatestart MapMouseEvent | MapTouchEvent 地图旋转开始
rotate MapMouseEvent | MapTouchEvent 地图旋转
rotateend MapMouseEvent | MapTouchEvent 地图旋转结束
pitchstart MapEventData 地图倾斜开始
pitch MapEventData 地图倾斜
pitchend MapEventData 地图倾斜结束
load 地图所以资源加载完成
styledata MapDataEvent 加载或改变地图样式
sourcedata MapDataEvent 加载或改变数据源
error 出现错误
data MapDataEvent 地图数据加载或改变

results matching ""

    No results matching ""