类:矢量瓦片图层

ol/layer/VectorTile~矢量切片图层


import VectorTileLayer from 'ol/layer/VectorTile.js';

用于客户端渲染的矢量切片数据的图层。请注意,在选项中设置的任何属性都将作为BaseObject属性添加到图层对象;例如,设置title: 'My Title'会使title成为可观察属性,并具有get/set访问器。

new VectorTileLayer(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

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

renderOrder OrderFunction | undefined

渲染顺序。用于在渲染前对要素排序的函数。默认情况下,要素按创建顺序绘制。使用null为了避免排序,却会得到未定义的渲染顺序。

renderBuffer number (defaults to 100)

在从矢量切片获取要素以进行渲染或命中检测时,渲染器在切片范围周围使用的缓冲区(以像素为单位)。推荐值:矢量切片通常以缓冲区生成,因此该值应与所用切片的最大可能缓冲区相匹配,且至少为最大点符号尺寸或线宽。

renderMode VectorTileRenderType (defaults to 'hybrid')

矢量切片渲染模式:'hybrid'多边形和线要素渲染为图像,因此在缩放动画中像素会被缩放。点符号和文本则精确渲染为矢量,可在旋转视图中保持正向,但会浮动于所有多边形和线要素之上。'vector'所有内容均以矢量形式渲染,并保持原有的渲染顺序。该模式适用于渲染要素数量有限的矢量瓦片图层,能够提升性能与视觉体验(例如,对具有相同数据源的另一图层中的要素子集进行高亮显示)。

source VectorTileSourceType | undefined

数据源.

map Map | undefined

将图层设为地图的叠加层。地图不会将此图层纳入其图层集合进行管理,且该图层将置于顶层渲染。这适用于临时图层。将图层添加到地图并由地图管理的标准方法是使用map.addLayer().

declutter boolean | string | number (defaults to false)

对图像和文本进行去重。任何真值都将启用去重功能。在图层中,先渲染的要素具有更高的优先级。所有图层均相同。declutter值将一同进行去重处理。优先级由相同优先级的图层的绘制顺序决定。declutter值:在图层堆栈中,位置越高表示优先级越高。要分别对不同的图层或图层组启用避让功能,请使用不同的真值。declutter.

style StyleLike | FlatStyleLike | null | undefined

图层样式。当设置为null,只有拥有独立样式的要素才会被渲染。参见Style若未设置,则采用默认样式。

background BackgroundColor | undefined

图层的背景色。若未指定,则不渲染背景色。

updateWhileAnimating boolean (defaults to false)

设置为时true, 要素批处理将在动画期间重新创建。这意味着矢量数据不会被裁剪显示,但该设置对大量矢量数据会产生性能影响。当设置为false,当无动画活动时,将重新创建批次。

updateWhileInteracting boolean (defaults to false)

当设置为true要素批次将在交互期间重新创建。参见updateWhileAnimating.

preload number (defaults to 0)

预加载。加载低分辨率瓦片最多preload级别。0表示无预加载。

useInterimTilesOnError boolean (defaults to true)

已弃用。发生错误时使用临时图块。

properties Object.<string, *> | undefined

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

cacheSize number (defaults to 0)

内部瓦片缓存大小。若设置过小,将自动扩展以容纳两个缩放级别的瓦片。

触发事件:

继承

可观察属性

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

图层的不透明度。

preload number change:preload

预加载瓦片的缩放级别

source SourceType | null change:source

图层源(或null如果尚未设置)

useInterimTilesOnError boolean 是的 change:useinterimtilesonerror

出错时使用临时瓦片。

visible boolean change:visible

该值visible图层的属性。

zIndex number | undefined 是的 change:zindex

图层的Z索引。

方法

递增修订计数器并派发“更改”事件。

dispatchEvent(event){boolean | undefined} inherited

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

Name Type 描述
event BaseEvent | string

事件对象。

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

获取值。

Name Type 描述
key string

键名。

返回:
值。

getAttributions(view){Array.<string>} inherited

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

Name Type 描述
view View | ViewStateLayerStateExtent | undefined

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

返回:
在指定视图中,该图层的归属信息。
返回:
背景颜色。

getExtent(){Extent | undefined} inherited

如果图层在任何范围下均可见,则返回其 extentundefined

返回:
图层范围。

getFeatures(pixel){Promise<Array<FeatureLike>>}

获取与视口给定像素相交的最顶层要素。返回一个Promise,解析后为要素数组:若检测到命中,则包含最顶层要素;否则数组为空。

此方法所使用的命中检测算法为优化性能而设计,但精度低于 map.getFeaturesAtPixel() 中的算法。文本不被纳入考虑,图标仅通过其边界框表示,而非精确图像。

Name Type 描述
pixel Pixel

像素.

返回:
解析为要素数组的Promise。

getFeaturesInExtent(extent){Array.<FeatureType>}

获取边界框与所提供范围相交的要素。数据源中仅包含最后渲染缩放级别对应的缓存切片要素。因此,该方法仅适用于请求当前渲染范围内的切片。

要素按随机瓦片顺序返回,且包含在瓦片内。这意味着它们可能被裁剪、跨瓦片重复,并简化为渲染分辨率。

Name Type 描述
extent Extent

范围.

返回:
要素。

getKeys(){Array.<string>} inherited

获取对象属性名列表。

返回:
属性名列表

getMaxResolution(){number} inherited

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

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

getMaxZoom(){number} inherited

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

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

getMinResolution(){number} inherited

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

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

getMinZoom(){number} inherited

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

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

getOpacity(){number} inherited

获取图层的不透明度(值域为0到1)。

返回:
图层的不透明度。

getPreload(){number}

返回预加载图块的缩放级别。

返回:
预加载瓦片的缩放级别。

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

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

返回:
对象。

getRevision(){number} inherited

获取此对象的版本号;每当对象被修改时,其版本号将自动递增。

返回:
修订。

getSource(){SourceType | null} inherited

获取图层源。

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

getStyle(){StyleLike | FlatStyleLike | null | undefined} inherited

获取要素的样式。此方法返回在构造时传递给 style 选项或 setStyle 方法的任何内容。

返回:
图层样式。

getStyleFunction(){StyleFunction | undefined} inherited

获取样式函数。

返回:
图层样式函数。

getUseInterimTilesOnError(){boolean}

已弃用。是否在出错时使用临时瓦片?

返回:
出错时使用临时瓦片。

getVisible(){boolean} inherited

返回此图层 visible 属性的值。要确定图层在地图上是否可见,请改用 isVisible()

返回:
图层中 visible 属性的值

getZIndex(){number | undefined} inherited

返回图层的 Z-index,用于在渲染前对图层进行排序。若图层为非托管状态,则返回 undefined。

返回:
图层的 Z 轴索引。

isVisible(view){boolean} inherited

该图层在地图视图上可见,前提是它在最小/最大分辨率或缩放级别与范围内,且未设置为 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

更新而不触发事件。

setBackground(background)

Name Type 描述
background BackgroundColor

背景色。

setDeclutter(declutter) inherited

Name Type 描述
declutter boolean | string | number

清理图像和文本。

setExtent(extent) inherited

设置图层可见范围。若 undefined,图层将在所有范围内可见。

Name Type 描述
extent Extent | undefined

图层范围

设置图层以在地图其他图层之上渲染。地图不会在图层集合中管理此图层。这对于临时图层非常有用。要移除地图上的非托管图层,请使用 #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

图层的不透明度。

setPreload(preload)

设置预加载瓦片的最大缩放级别。

Name Type 描述
preload number

预加载瓦片的缩放级别。

setProperties(values, silent) inherited

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

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

值。

silent boolean | undefined

更新而不触发事件。

setSource(source) inherited

设置图层源。

Name Type 描述
source SourceType | null

图层源。

设置要素的样式。这可以是一个样式对象、一个样式数组,或一个接受要素和分辨率并返回样式数组的函数。如果设置为 null,则图层无样式(null 样式),因此只有具有自身样式的要素才会在图层中渲染。调用不带参数的 setStyle() 以重置为默认样式。参见 the ol/style/Style module 了解默认样式信息。

若图层采用静态样式,则可使用 flat style 对象字面量,而非使用 Style 及符号构造函数(FillStroke 等)。

vectorLayer.setStyle({
  "fill-color": "yellow",
  "stroke-color": "black",
  "stroke-width": 4
})
Name Type 描述
style StyleLike | FlatStyleLike | null | undefined

图层样式。

setUseInterimTilesOnError(useInterimTilesOnError)

已弃用。设置是否在出错时使用临时瓦片。

Name Type 描述
useInterimTilesOnError boolean

出错时使用临时瓦片。

setVisible(visible) inherited

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

Name Type 描述
visible boolean

图层可见性。

setZIndex(zindex) inherited

设置图层的Z索引以控制渲染前的图层顺序,默认值为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

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