类:矢量瓦片

ol/source/VectorTile~矢量切片


import VectorTile from 'ol/source/VectorTile.js';

提供划分为瓦片网格的矢量数据的图层源类,与 VectorTileLayer 配合使用。尽管该源从服务器接收包含矢量要素的瓦片,但它不用于要素编辑。要素针对渲染进行了优化,其几何图形在瓦片边界处或附近被裁剪,并针对视图分辨率进行简化。适用于要素编辑的矢量源,请参阅 VectorSource

new VectorTile(options)

Name Type 描述
attributions AttributionLike | undefined

版权。

attributionsCollapsible boolean (defaults to true)

版权信息是可折叠的。

cacheSize number | undefined

初始瓦片缓存大小。将自动扩展以存储视口中至少两倍的瓦片。

extent Extent | undefined

范围.

format FeatureFormat<FeatureType> | undefined

瓦片要素格式。默认使用并必需。

overlaps boolean (defaults to true)

该数据源可能存在重叠的几何体。将其设置为false(例如,对于行政边界多边形源或TopoJSON源)允许渲染器优化填充和描边操作。

projection ProjectionLike (defaults to 'EPSG:3857')

瓦片数据源的投影。

state State | undefined

源状态。

tileClass Class<VectorTile> | undefined

用于实例化图块的类。默认为VectorTile.

maxZoom number (defaults to 22)

可选的最大缩放级别。如果不使用tileGrid已提供。

minZoom number | undefined

可选的最小缩放级别。如果不使用。tileGrid已提供。

tileSize number | Size (defaults to 512)

可选瓦片尺寸。条件不满足时,不使用。tileGrid已提供。

maxResolution number | undefined

零级可选瓦片网格分辨率,若不指定则无效。tileGrid已提供。

tileGrid TileGrid | undefined

瓦片 网格.

tileLoadFunction LoadFunction | undefined

一个可选函数,用于根据给定URL加载瓦片。对于pbf瓦片,其形式可能如下:

function(tile, url) {
  tile.setLoader(function(extent, resolution, projection) {
    fetch(url).then(function(response) {
      response.arrayBuffer().then(function(data) {
        const format = tile.getFormat() // ol/format/MVT configured as source format
        const features = format.readFeatures(data, {
          extent: extent,
          featureProjection: projection
        });
        tile.setFeatures(features);
      });
    });
  });
}

如果您不需要范围、分辨率和投影来获取图块的要素(例如 GeoJSON 图块),您的tileLoadFunction不需要setLoader()调用。只需确保调用setFeatures()在瓦片上:

const format = new GeoJSON({featureProjection: map.getView().getProjection()});
async function tileLoadFunction(tile, url) {
  const response = await fetch(url);
  const data = await response.json();
  tile.setFeatures(format.readFeatures(data));
}
tileUrlFunction UrlFunction | undefined

可选函数,用于根据瓦片坐标和投影获取瓦片URL。

url string | undefined

URL模板必须包含{x}, {y}或者{-y},和{z}占位符。A{?-?}例如,模板模式subdomain{a-f}.domain.com可用于替代逐一定义每个urls选项。

transition number | undefined

瓦片不透明度过渡的持续时间(毫秒)。设为0时禁用不透明度过渡。

urls Array.<string> | undefined

URL模板数组。

wrapX boolean (defaults to true)

是否水平包裹世界。当设置为false,仅渲染一个世界。当设置为true, 瓦片将水平环绕以渲染多个世界。

zDirection number | NearestDirectionFunction (defaults to 1)

在整数缩放级别之间,选择是否使用更高或更低缩放级别的瓦片。参见getZForResolution.

触发事件:

子类

继承

方法

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

清除源中所有缓存的重新投影切片。下一个渲染周期将生成新的切片。

dispatchEvent(event){boolean | undefined} inherited

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

Name Type 描述
event BaseEvent | string

事件对象。

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

获取值。

Name Type 描述
key string

键名。

返回:
值。

获取源的归属函数。

返回:
归属功能。

getAttributionsCollapsible(){boolean} inherited

返回:
版权信息是可折叠的。

getKeys(){Array.<string>} inherited

获取对象属性名称列表。

返回:
属性名列表。

getProjection(){Projection | null} inherited

获取数据源的投影。

返回:
投影.

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

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

返回:
对象。

getRevision(){number} inherited

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

返回:
修订。

获取数据源的状态,请参阅 State 了解可能的状态。

返回:
状态。

getTileGrid(){TileGrid | null} inherited

返回瓦片源的瓦片网格。

返回:
瓦片 网格.

已弃用。请改用图像瓦片源。返回其瓦片加载函数。

返回:
瓦片加载函数

已弃用。请改用ImageTile源。返回源的瓦片URL函数。

返回:
图块URL函数

getUrls(){!Array.<string> | null} inherited

已弃用。请改用 ImageTile 源。返回此源所使用的 URLs。当使用 tileUrlFunction 而非 url 或 urls 时,将返回 null。

返回:
网址。

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

更新时不触发事件。

setAttributions(attributions) inherited

设置源的归属。

Name Type 描述
attributions AttributionLike | undefined

归属。可以作为string, Array<string>, Attribution,或undefined.

setProperties(values, silent) inherited

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

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

值。

silent boolean | undefined

在不触发事件的情况下更新。

setTileLoadFunction(tileLoadFunction) inherited

已弃用。请改用 ImageTile 源。设置源的瓦片加载函数。

Name Type 描述
tileLoadFunction LoadFunction

瓦片加载函数。

setTileUrlFunction(tileUrlFunction, key) inherited

已弃用。请改用 ImageTile 源。设置源的瓦片 URL 函数。

Name Type 描述
tileUrlFunction UrlFunction

瓦片URL函数

key string | undefined

源的可选新图块键。

设置请求的URL。

Name Type 描述
url string

网址。

已弃用。请改用 ImageTile 源。设置请求的 URL。

Name Type 描述
urls Array.<string>

网址。

un(type, listener) inherited

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

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

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

listener function

监听器函数

unset(key, silent) inherited

清除属性

Name Type 描述
key string

键名。

silent boolean | undefined

取消设置且不触发事件。