Skip to content

BaseLayer

BaseLayer

基础图层类

注:不可直接实例化,需继承后使用

constructor

构造函数

Parameters

addToMap

添加图层到地图

Parameters

  • map Map
  • before string? 图层插入到某个图层之前, before为图层id

Returns this

removeFromMap

从地图上移除图层

Parameters

Returns this

getLayerId

获取layer id

Returns string

getSourceData

获取source data

Returns GeoJSONSourceRaw

getSourceId

获取source id

Returns string

addFeature

添加元素到图层,如果元素已存在,则不添加

Parameters

Returns this

addFeatures

添加多个元素到图层

Parameters

Returns this

setFeatures

重新添加元素列表到图层,会清空原有元素列表

Parameters

Returns this

getFeatures

获取feature,如果不传featureId,则返回所有feature,否则返回指定feature

Parameters

Returns (BaseFeature | Array<BaseFeature> | undefined)

clearFeatures

清空元素

Returns this

updateFeature

更新元素

Parameters

  • featureId string
  • options Partial<xxFeatureOptions>
  • immediateRender boolean?

Returns this

removeFeature

移除元素

Parameters

Returns this

removeFeatures

移除多个元素

Parameters

Returns this

hasFeature

判断是否包含某个元素

Parameters

Returns boolean

scaleWithAnimation

带动画缩放

Parameters

  • duration number 动画持续时间,单位毫秒

  • options Object? 属性

    • options.cubicBezier Array<number>? 缓动函数,4个参数,分别为控制点1x, 控制点1y, 控制点2x, 控制点2y
    • options.onFinished Function? 动画结束回调
    • options.onProgress Function? 动画过程回调, 参数为动画进度,0-1
  • featureIds Array<string>? 指定缩放的元素, 不传则缩放所有元素

Returns this

fitToBounds

将图层视角调整到最佳显示范围

Parameters

Returns this

getBounds

获取图层最佳显示范围

Returns LngLatBoundsLike

setPaintProperty

设置图层[Paint](/jsapi/apis/types/Types.html#paint)

Parameters

Returns this

setLayoutProperty

设置图层[Layout](/jsapi/apis/types/Types.html#layout)

Parameters

Returns this

getPaintProperty

获取图层[Paint](/jsapi/apis/types/Types.html#paint)

Parameters

Returns any

getLayoutProperty

获取图层[Layout](/jsapi/apis/types/Types.html#layout)

Parameters

Returns any

show

显示图层

Returns this

hide

隐藏图层

Returns this

on

监听鼠标事件

Parameters

Returns this

once

监听鼠标事件,只触发一次

Parameters

Returns this

off

取消监听鼠标事件

Parameters

Returns this

isAddedToMap

判断是否已经绘制在地图上

Returns boolean

LayerMouseEvent

图层事件类型

Type: LayerMouseEvent

Examples

javascript
type LayerMouseEvent<T extends keyof MapLayerEventType> = MapLayerEventType[T] & EventData