Spec-Zone.ru › OpenLayers

ol/layer/VectorImage~СлойВекторИзображение


import VectorImageLayer from 'ol/layer/VectorImage.js';

Векторные данные отрисовываются на клиенте в виде изображения. Этот тип слоя обеспечивает высокую производительность при масштабировании и перемещении, но символы и текст всегда поворачиваются вместе с представлением, а пиксели масштабируются во время анимации масштабирования. Для более точной отрисовки векторных данных используйте VectorLayer вместо этого.

Обратите внимание, что любой свойство, заданное в параметрах, устанавливается как свойство BaseObject объекта слоя; например, установка title: 'My Title' в параметрах означает, что title является наблюдаемым и имеет методы доступа get/set.

Новый СлойВекторИзображение(параметры)

layer/VectorImage.js, строка 70
Имя Тип Описание
className строка (по умолчанию 'ol-layer')

Имя класса CSS, которое необходимо установить для элемента слоя.

opacity число (по умолчанию 1)

Непрозрачность (0, 1).

visible логическое значение (по умолчанию true)

Видимость.

extent Extent | undefined

Граница области, для которой будет выполняться отрисовка слоя. Слой не будет отрисовываться за пределами этой области.

zIndex число | undefined

Индекс z для отрисовки слоя. Во время отрисовки слои упорядочиваются сначала по индексу Z, а затем по положению. При undefined предполагается значение zIndex 0 для слоёв, которые добавляются в коллекцию layers карты, или Infinity, когда был использован метод setMap() слоя.

minResolution число | undefined

Минимальное разрешение (включительно), при котором этот слой будет виден.

maxResolution число | undefined

Максимальное разрешение (исключительно), ниже которого этот слой не будет виден.

minZoom число | undefined

Минимальный уровень масштабирования представления (исключительно), выше которого этот слой будет виден.

maxZoom число | undefined

Максимальный уровень масштабирования представления (включительно), при котором этот слой будет виден.

renderOrder OrderFunction | undefined

Порядок отрисовки. Функция, которая используется при сортировке объектов перед отрисовкой. По умолчанию объекты отрисовываются в порядке их создания. Используйте null, чтобы избежать сортировки, но получить неопределённый порядок отрисовки.

renderBuffer число (по умолчанию 100)

Буфер в пикселях вокруг области просмотра, используемый рендерером при получении объектов из источника векторных данных для отрисовки или обнаружения нажатий. Рекомендуемое значение: размер самого большого символа, ширины линии или метки.

source VectorSourceType | undefined

Источник.

map Карта | undefined

Устанавливает слой как наложение на карту. Карта не будет управлять этим слоем в своей коллекции слоёв, и слой будет отрисован сверху. Это полезно для временных слоёв. Стандартный способ добавления слоя на карту и управления им картой — использование map.addLayer().

declutter логическое значение | строка | число (по умолчанию false)

Сгруппировать изображения и текст на этом слое. Любое ненулевое значение включит группировку. Приоритет определяется по zIndex стиля и порядку отрисовки объектов. Более высокий индекс z означает более высокий приоритет. В пределах одного индекса z объект, отрисованный раньше, имеет более высокий приоритет. Элементы не будут группироваться с элементами на других слоях с одинаковым значением declutter. Если это нужно, используйте VectorLayer вместо этого.

style StyleLike | FlatStyleLike | null | undefined

Стиль слоя. При установке значения в null, будут отрисованы только те объекты, которые имеют свой собственный стиль. См. Style для определения стиля по умолчанию, который будет использован, если этот параметр не задан.

background BackgroundColor | undefined

Цвет фона для слоя. Если не указан, фон не будет отрисован.

imageRatio число (по умолчанию 1)

Отношение, на которое рендерируемая область должна быть больше области просмотра. Более высокое отношение избегает обрезания изображений при перемещении, но снижает производительность.

properties Объект.<строка, *> | undefined

Произвольные наблюдаемые свойства. Доступны с помощью #get() и #set().

События:
  • change (BaseEvent) - Общее событие изменения. Срабатывает при увеличении счетчика пересмотра.
  • change:extent (ObjectEvent)
  • change:maxResolution (ObjectEvent)
  • change:maxZoom (ObjectEvent)
  • change:minResolution (ObjectEvent)
  • change:minZoom (ObjectEvent)
  • change:opacity (ObjectEvent)
  • change:source (ObjectEvent)
  • change:visible (ObjectEvent)
  • change:zIndex (ObjectEvent)
  • error (BaseEvent) - Общее событие об ошибке. Срабатывает при возникновении ошибки.
  • postrender (RenderEvent) - Срабатывает после отрисовки слоя.
  • prerender (RenderEvent) - Срабатывает перед отрисовкой слоя.
  • propertychange (ObjectEvent) - Срабатывает при изменении свойства.
  • sourceready (BaseEvent)

Расширяет

  • БазовыйВекторныйСлой

Наблюдаемые свойства

Имя Тип Устанавливаемое Тип ObjectEvent Описание
extent Extent | undefined да change:extent

Область слоя.

maxResolution число да change:maxresolution

Максимальное разрешение слоя.

maxZoom число да change:maxzoom

Максимальный уровень масштабирования слоя.

minResolution число да change:minresolution

Минимальное разрешение слоя.

minZoom число да change:minzoom

Минимальный уровень масштабирования слоя.

opacity число да change:opacity

Непрозрачность слоя.

source SourceType | null да change:source

Источник слоя (или null, если ещё не задан).

visible логическое да change:visible

Значение свойства visible слоя.

zIndex число | undefined да change:zindex

Индекс Z слоя.

Методы

changed() inherited

Observable.js, line 68

Увеличивает счётчик ревизий и отправляет событие 'change'.

dispatchEvent(event){boolean | undefined} inherited

events/Target.js, line 85

Отправляет событие и вызывает всех слушателей, ожидающих события этого типа. Параметр события может быть строкой или объектом с свойством type.

Имя Тип Описание
event BaseEvent | string

Объект события.

Возвращает:
false, если кто-то вызвал preventDefault на объекте события или если любой из слушателей вернул false.

get(key){*} inherited

Object.js, line 135

Получает значение.

Имя Тип Описание
key string

Имя ключа.

Возвращает:
Значение.

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

layer/Layer.js, line 345

Получает атрибуты источника этого слоя для заданного представления.

Имя Тип Описание
view View | ViewStateLayerStateExtent | undefined

Представление или FrameState. Требуется только в том случае, если слой не добавлен в карту.

Возвращает:
Атрибуты этого слоя в заданном представлении.

getExtent(){Extent | undefined} inherited

layer/Base.js, line 207

Возвращает extent слоя или undefined, если он будет виден независимо от области.

Возвращает:
Область слоя.

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

layer/BaseVector.js, line 178

Получает самый верхний объект, пересекающий заданный пиксель на представлении. Возвращает промис, который разрешается массивом объектов. Массив будет содержать самый верхний объект, когда была обнаружена точка попадания, или он будет пустым.

Алгоритм обнаружения попадания, используемый для этого метода, оптимизирован для производительности, но менее точен, чем тот, что используется в map.getFeaturesAtPixel(). Текст не учитывается, а значки представляются только своей ограничивающей рамкой вместо точного изображения.

Имя Тип Описание
pixel Pixel

Пиксель.

Возвращает:
Промис, который разрешается массивом объектов.

getKeys(){Array.<string>} inherited

Object.js, line 148

Получить список имён свойств объекта.

Возвращает:
Список имён свойств.

getMaxResolution(){number} inherited

layer/Base.js, line 220

Возвращает максимальное разрешение слоя. Возвращает Infinity, если для слоя не задано максимальное разрешение.

Возвращает:
Максимальное разрешение слоя.

getMaxZoom(){number} inherited

layer/Base.js, line 253

Возвращает максимальный уровень масштабирования слоя. Возвращает Infinity, если для слоя не задан максимальный уровень масштабирования.

Возвращает:
Максимальный уровень масштабирования слоя.

getMinResolution(){number} inherited

layer/Base.js, line 231

Возвращает минимальное разрешение слоя. Возвращает 0, если для слоя не задано минимальное разрешение.

Возвращает:
Минимальное разрешение слоя.

getMinZoom(){number} inherited

layer/Base.js, line 242

Возвращает минимальный уровень масштабирования слоя. Возвращает -Infinity, если для слоя не задан минимальный уровень масштабирования.

Возвращает:
Минимальный уровень масштабирования слоя.

getOpacity(){number} inherited

layer/Base.js, line 263

Возвращает непрозрачность слоя (между 0 и 1).

Возвращает:
Непрозрачность слоя.

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

Object.js, line 157

Получить объект со всеми именами и значениями свойств.

Возвращает:
Объект.

getRevision(){number} унаследованное

Observable.js, строка 79

Получить номер версии для этого объекта. Каждый раз, когда объект изменяется, его номер версии увеличивается.

Возвращает:
Номер версии.

getSource(){SourceType | null} унаследованное

layer/Layer.js, строка 209

Получить источник слоя.

Возвращает:
Источник слоя (или null, если он ещё не задан).

getStyle(){StyleLike | FlatStyleLike | null | undefined} унаследованное

layer/BaseVector.js, строка 204

Получить стиль для объектов. Возвращает значение, переданное в параметр style при создании или в методе setStyle.

Возвращает:
Стиль слоя.

getStyleFunction(){StyleFunction | undefined} унаследованное

layer/BaseVector.js, строка 213

Получить функцию стиля.

Возвращает:
Функция стиля слоя.

getVisible(){boolean} унаследованное

layer/Base.js, строка 282

Возвращает значение свойства visible этого слоя. Чтобы определить, виден ли слой на карте, используйте isVisible().

Возвращает:
Значение свойства visible слоя.

getZIndex(){number | undefined} унаследованное

layer/Base.js, строка 293

Возвращает индекс Z слоя, который используется для упорядочивания слоёв перед отрисовкой. Возвращает undefined, если слой не управляется.

Возвращает:
Индекс Z слоя.

isVisible(view){boolean} унаследованное

layer/Layer.js, строка 301

Слой виден на представлении карты, т.е. в пределах его минимального/максимального разрешения или масштаба и области, не установлен в visible: false и не находится внутри группы слоёв, установленной в visible: false.

Имя Тип Описание
view Представление | ViewStateLayerStateExtent | undefined

Представление или FrameState. Требуется только в том случае, если слой не добавлен на карту.

Возвращает:
Слой виден на представлении карты.

on(type, listener){EventsKey | Array<EventsKey>} унаследованное

Observable.js, строка 152

Прослушивание определённого типа события.

Имя Тип Описание
type строка | Массив.<строка>

Тип события или массив типов событий.

listener функция

Функция-обработчик.

Возвращает:
Уникальный ключ обработчика. Если вызван с массивом типов событий в качестве первого аргумента, возвращается массив ключей.

once(type, listener){EventsKey | Array<EventsKey>} унаследованное

Observable.js, строка 164

Прослушивание определённого типа события один раз.

Имя Тип Описание
type строка | Массив.<строка>

Тип события или массив типов событий.

listener функция

Функция-обработчик.

Возвращает:
Уникальный ключ обработчика. Если вызван с массивом типов событий в качестве первого аргумента, возвращается массив ключей.

set(key, value, silent) унаследованное

Object.js, строка 215

Устанавливает значение.

Имя Тип Описание
key строка

Имя ключа.

value *

Значение.

silent boolean | undefined

Обновить без запуска события.

setDeclutter(declutter) унаследованное

layer/BaseVector.js, строка 288
Имя Тип Описание
declutter boolean | строка | число

Деактивировать обработку наложения изображений и текста.

setExtent(extent) inherited

layer/Base.js, line 313

Установить область видимости слоя. Если undefined, слой будет виден при любых масштабах.

Name Type Description
extent Extent | undefined

Область видимости слоя.

setMap(map) inherited

layer/Layer.js, line 440

Устанавливает слой для отображения поверх других слоев на карте. Карта не будет управлять этим слоем в своей коллекции слоев. Это полезно для временных слоев. Чтобы удалить неуправляемый слой с карты, используйте #setMap(null).

Чтобы добавить слой на карту и управлять им с помощью карты, используйте addLayer.

Name Type Description
map Map | null

Карта.

setMaxResolution(maxResolution) inherited

layer/Base.js, line 323

Установить максимальное разрешение, при котором слой виден.

Name Type Description
maxResolution number

Максимальное разрешение слоя.

setMaxZoom(maxZoom) inherited

layer/Base.js, line 345

Установить максимальный масштаб (исключая) , при котором слой виден. Обратите внимание, что уровни масштабирования для видимости слоя основаны на уровне масштабирования представления, который может отличаться от уровня масштабирования источника фрагментов.

Name Type Description
maxZoom number

Максимальный масштаб слоя.

setMinResolution(minResolution) inherited

layer/Base.js, line 333

Установить минимальное разрешение, при котором слой виден.

Name Type Description
minResolution number

Минимальное разрешение слоя.

setMinZoom(minZoom) inherited

layer/Base.js, line 357

Установить минимальный масштаб (включительно), при котором слой виден. Обратите внимание, что уровни масштабирования для видимости слоя основаны на уровне масштабирования представления, который может отличаться от уровня масштабирования источника фрагментов.

Name Type Description
minZoom number

Минимальный масштаб слоя.

setOpacity(opacity) inherited

layer/Base.js, line 367

Установить прозрачность слоя, допустимые значения находятся в диапазоне от 0 до 1.

Name Type Description
opacity number

Прозрачность слоя.

setProperties(values, silent) inherited

Object.js, line 235

Устанавливает набор пар «ключ-значение». Обратите внимание, что это изменяет все существующие свойства и добавляет новые (существующие свойства не удаляются).

Name Type Description
values Object.<string, *>

Значения.

silent boolean | undefined

Обновление без вызова события.

setSource(source) inherited

layer/Layer.js, line 488

Установить источник слоя.

Name Type Description
source SourceType | null

Источник слоя.

setStyle(style) inherited

layer/BaseVector.js, line 276

Установить стиль для объектов. Это может быть один объект стиля, массив стилей или функция, которая принимает объект и разрешение и возвращает массив стилей. Если установлено значение null, слой не имеет стиля (стиль null), поэтому в слое будут отображаться только объекты, имеющие свои собственные стили. Вызов setStyle() без аргументов для сброса на стиль по умолчанию. См. the ol/style/Style module для получения информации о стиле по умолчанию.

Если ваш слой имеет статический стиль, вы можете использовать объекты литералов flat style вместо использования конструкторов Style и символизаторов (Fill, Stroke и т. д.):

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

Стиль слоя.

setVisible(visible) inherited

layer/Base.js, line 378

Установите видимость слоя (true или false).

Имя Тип Описание
visible boolean

Видимость слоя.

setZIndex(zindex) inherited

layer/Base.js, line 389

Установите индекс Z слоя, который используется для упорядочения слоёв перед отрисовкой. По умолчанию индекс Z равен 0.

Имя Тип Описание
zindex number

Индекс Z слоя.

un(type, listener) inherited

Observable.js, line 173

Отменить прослушивание определённого типа события.

Имя Тип Описание
type string | Array.<string>

Тип события или массив типов событий.

listener function

Функция-обработчик события.

unset(key, silent) inherited

Object.js, line 259

Снимает установку свойства.

Имя Тип Описание
key string

Имя ключа.

silent boolean | undefined

Удалить без срабатывания события.

© 2005-present, OpenLayers Contributors All rights reserved.Licensed under the BSD 2-Clause License.
https://openlayers.org/en/latest/apidoc/module-ol_layer_VectorImage-VectorImageLayer.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API