类:图层

ol/layer/Layer~图层


import Layer from 'ol/layer/Layer.js';

所有图层类型均派生自该类。仅当使用自定义 render 函数将自定义图层添加到地图时,才应实例化此类。此类函数可在 options 对象中指定,并预期返回一个 HTML 元素。

栅格或矢量地图数据的可视化表示。图层将数据渲染方式相关的属性聚合在一起,而不考虑数据来源。

图层通常通过 map.addLayer() 添加到地图中。Draw 等组件在内部使用非托管图层。这些非托管图层通过 layer.setMap() 与地图关联。

当源状态发生变化时,将触发通用 change 事件。当图层源就绪时,将触发 sourceready 事件。

new Layer(options)

Name Type 描述
className string (defaults to 'ol-layer')

设置图层元素的CSS类名。

opacity number (defaults to 1)

不透明度(0至1)。

visible boolean (defaults to true)

可见.

extent Extent | undefined

图层渲染的边界范围。图层不会在此范围外渲染。

zIndex number | undefined

图层渲染的 z-index。渲染时,图层将首先按 z-index 排序,然后按位置排序。undefined, a zIndex对于添加到地图的图层,默认值为0。layers集合,或Infinity当图层的setMap()采用了该方法。

minResolution number | undefined

该图层可见的最小分辨率(包含)。

maxResolution number | undefined

最大分辨率(排他性)以下,该图层可见。

minZoom number | undefined

最小视图缩放级别(不包括),高于该级别时图层可见。

maxZoom number | undefined

此图层可见的最大视图缩放级别(包含)。

source SourceType | undefined

该图层的源。若未在构造函数中提供,可通过调用来设置。layer.setSource(source)构建后。

map Map | null | undefined

地图.

render RenderFunction | undefined

渲染函数:以框架状态作为输入,并应返回一个HTML元素。它将覆盖图层的默认渲染。

properties Object.<string, *> | undefined

任意可观察属性。可通过以下方式访问。#get()#set().

触发事件:

子类

继承

可观察属性

Name Type 可设置 ObjectEvent type 描述
extent Extent | undefined 是的 change:extent

图层范围。

maxResolution number change:maxresolution

图层的最大分辨率。

maxZoom number 是的 change:maxzoom

图层的最大缩放级别。

minResolution number change:minresolution

图层的最小分辨率。

minZoom number change:minzoom

图层的最小缩放级别。

opacity number 是的 change:opacity

图层的不透明度。

source SourceType | null 是的 change:source

图层源(或null若尚未设置)

visible boolean 是的 change:visible

该值visible图层属性

zIndex number | undefined 是的 change:zindex

图层的Z索引。

方法

递增修订计数器并触发'change'事件。

dispatchEvent(event){boolean | undefined} inherited

分发事件并调用所有监听此类型事件的监听器。事件参数可以是字符串,也可以是具有 type 属性的对象。

Name Type 描述
event BaseEvent | string

事件对象。

返回:
false 如果事件对象上调用了preventDefault,或者任何监听器返回了false。

获取值。

Name Type 描述
key string

键名

返回:
值。

getAttributions(view){Array.<string>}

获取给定视图下该图层数据源的归属信息。

Name Type 描述
view View | ViewStateLayerStateExtent | undefined

查看或FrameState仅当图层未添加到地图时才需要。

返回:
该图层在给定视图中的归属。

getExtent(){Extent | undefined} inherited

返回图层的 extentundefined(如果无论范围如何都可见)。

返回:
图层范围。

getKeys(){Array.<string>} inherited

获取对象属性名称列表。

返回:
属性名称列表。

getMaxResolution(){number} inherited

返回图层的最大分辨率;若图层未设置最大分辨率,则返回无穷大。

返回:
图层的最大分辨率。

getMaxZoom(){number} inherited

返回图层的最大缩放级别。若图层未设置最大缩放级别,则返回Infinity。

返回:
图层的最大缩放级别。

getMinResolution(){number} inherited

返回图层的最小分辨率。若图层未设置最小分辨率,则返回0。

返回:
图层的最小分辨率。

getMinZoom(){number} inherited

返回图层的最小缩放级别。若图层未设置最小缩放级别,则返回 -Infinity。

返回:
图层的最小缩放级别。

getOpacity(){number} inherited

返回图层的不透明度(值在0到1之间)。

返回:
图层的不透明度。

getProperties(){Object.<string, *>} inherited

获取所有属性名称和值的对象。

返回:
对象。

getRevision(){number} inherited

获取该对象的版本号。每次修改对象时,其版本号将自动递增。

返回:
修订。

getSource(){SourceType | null}

获取图层源

返回:
图层源(如果尚未设置,则为 null)。

getVisible(){boolean} inherited

获取此图层的 visible 属性值。若要确定图层在地图上是否可见,请使用 isVisible()

返回:
图层的 visible 属性值。

getZIndex(){number | undefined} inherited

返回图层的Z-index,用于在渲染前对图层进行排序。如果图层未受管理,则返回undefined。

返回:
图层的 Z 索引。

isVisible(view){boolean}

该图层在地图视图中可见,即在其最小/最大分辨率以及缩放和范围之内,未设置为 visible: false,且不位于设置为 visible: false 的图层组内。

Name Type 描述
view View | ViewStateLayerStateExtent | undefined

查看或FrameState仅当图层未添加到地图时才需要。

返回:
图层在地图视图中可见。

on(type, listener){EventsKey | Array<EventsKey>} inherited

监听特定类型的事件。

Name Type 描述
type string | Array.<string>

事件类型或事件类型的数组。

listener function

监听器函数。

返回:
监听器的唯一键。若以事件类型数组作为首个参数调用,则返回键的数组。

once(type, listener){EventsKey | Array<EventsKey>} inherited

一次性监听特定类型的事件。

Name Type 描述
type string | Array.<string>

事件类型或事件类型数组。

listener function

监听器函数。

返回:
监听器的唯一键。若以事件类型数组作为第一个参数调用,则返回将是键数组。

set(key, value, silent) inherited

设置值。

Name Type 描述
key string

键名。

value *

值。

silent boolean | undefined

更新而不触发事件

setExtent(extent) inherited

设置图层的可见范围。若 undefined,则图层在所有范围均可见。

Name Type 描述
extent Extent | undefined

图层范围

setMap(map)

设置图层以在地图其他图层之上渲染。地图不会在其图层集合中管理该图层,这对临时图层非常有用。要从地图中移除非托管图层,请使用 #setMap(null)

请使用 addLayer 将图层添加到地图并由地图管理。

Name Type 描述
map Map | null

地图.

setMaxResolution(maxResolution) inherited

设置图层可见的最大分辨率。

Name Type 描述
maxResolution number

图层的最大分辨率。

setMaxZoom(maxZoom) inherited

设置图层可见的最大缩放级别(不包含)。请注意,图层可见性的缩放级别基于视图缩放级别,该级别可能与瓦片源缩放级别不同。

Name Type 描述
maxZoom number

图层的最大缩放级别。

setMinResolution(minResolution) inherited

设定图层可见的最小分辨率。

Name Type 描述
minResolution number

图层的最小分辨率。

setMinZoom(minZoom) inherited

设置图层可见的最小缩放级别(包含该级别)。请注意,图层可见的缩放级别基于视图的缩放级别,后者可能与图块源的缩放级别不同。

Name Type 描述
minZoom number

图层的最小缩放级别。

setOpacity(opacity) inherited

设置图层的不透明度,允许值范围为0至1。

Name Type 描述
opacity number

图层的不透明度。

setProperties(values, silent) inherited

设置键值对集合。请注意,此操作将修改现有属性并添加新属性,但不会删除任何现有属性。

Name Type 描述
values Object.<string, *>

值。

silent boolean | undefined

更新而不触发事件。

setSource(source)

设置图层源。

Name Type 描述
source SourceType | null

图层源。

setVisible(visible) inherited

设置图层的可见性(truefalse)。

Name Type 描述
visible boolean

图层可见性。

setZIndex(zindex) inherited

设置图层的 Z-index,用于在渲染前确定图层顺序。默认 Z-index 为 0。

Name Type 描述
zindex number

图层的z-index。

un(type, listener) inherited

取消监听特定类型的事件。

Name Type 描述
type string | Array.<string>

事件类型或事件类型数组。

listener function

监听器函数

unset(key, silent) inherited

清除属性。

Name Type 描述
key string

键名。

silent boolean | undefined

在不触发事件的情况下取消设置。