ol/layer/Vector~VectorLayer
import VectorLayer from 'ol/layer/Vector.js';
Векторные данные отображаются на стороне клиента в виде векторов. Этот тип слоя обеспечивает наиболее точное отображение даже во время анимации. Точки и подписи остаются вертикальными при повороте карты. При работе с очень большими объемами векторных данных производительность во время панорамирования и масштабирования может снизиться. В этом случае попробуйте VectorImageLayer.
Обратите внимание: любое свойство, заданное в параметрах, устанавливается как свойство BaseObject объекта слоя; например, если задать title: 'My Title' в параметрах, то title будет наблюдаемым и получит методы доступа get/set.
-
new VectorLayer(options)
-
Имя Тип Описание classNamestring (по умолчанию 'ol-layer') Имя CSS-класса для элемента слоя.
opacitynumber (по умолчанию 1) Непрозрачность (0, 1).
visibleboolean (по умолчанию true) Видимость.
extentExtent | undefined Границы отображения слоя. Слой не будет отображаться за пределами этих границ.
zIndexnumber | undefined Z-индекс слоя. При отображении слои упорядочиваются сначала по Z-индексу, а затем по позиции. Если задано
undefined, для слоев, добавленных в коллекциюlayersкарты, предполагается значениеzIndex, равное 0, а для слоев, добавленных с помощью методаsetMap(), —Infinity.minResolutionnumber | undefined Минимальное разрешение (включительно), при котором этот слой будет видимым.
maxResolutionnumber | undefined Максимальное разрешение (не включительно), ниже которого этот слой будет видимым.
minZoomnumber | undefined Минимальный уровень масштабирования карты (не включительно), выше которого этот слой будет видимым.
maxZoomnumber | undefined Максимальный уровень масштабирования карты (включительно), при котором этот слой будет видимым.
renderOrderOrderFunction | undefined Порядок отображения. Функция, используемая для сортировки объектов перед отображением. По умолчанию объекты рисуются в порядке их создания. Используйте
null, чтобы избежать сортировки, но получить неопределенный порядок отрисовки.renderBuffernumber (по умолчанию 100) Буфер в пикселях вокруг границ области просмотра, который рендерер использует при получении объектов из векторного источника для отображения или обнаружения попаданий. Рекомендуемое значение: размер самого крупного символа, ширина линии или подписи.
sourceVectorSourceType | undefined Источник.
mapMap | undefined Добавляет слой на карту в качестве наложения. Карта не будет управлять этим слоем в своей коллекции слоев, а слой будет отображаться поверх остальных. Это полезно для временных слоев. Стандартный способ добавления слоя на карту, управляемого картой, — использовать
map.addLayer().declutterboolean | string | number (по умолчанию false) Предотвращает перекрытие изображений и текста. Любое истинное значение включает предотвращение перекрытия. В пределах одного слоя объект, отрисованный раньше другого, имеет более высокий приоритет. Для всех слоев с одинаковым значением
declutterпредотвращение перекрытия выполняется совместно. Приоритет определяется порядком отрисовки слоев с одинаковым значениемdeclutter. Чем выше слой в стеке, тем выше его приоритет. Чтобы отдельно предотвращать перекрытия для разных слоев или групп слоев, используйте разные истинные значения дляdeclutter.styleStyleLike | FlatStyleLike | null | undefined Стиль слоя. Если задано значение
null, будут отображаться только объекты с собственным стилем. Стиль по умолчанию, используемый, если это значение не задано, см. в разделеStyle.backgroundBackgroundColor | undefined Цвет фона слоя. Если не задан, фон не отображается.
updateWhileAnimatingboolean (по умолчанию false) Если задано значение
true, пакеты объектов будут пересоздаваться во время анимации. Это означает, что векторы не будут обрезаться, однако для больших объемов векторных данных это снизит производительность. Если задано значениеfalse, пакеты будут пересоздаваться, когда анимация не активна.updateWhileInteractingboolean (по умолчанию false) Если задано значение
true, пакеты объектов будут пересоздаваться во время взаимодействия. См. такжеupdateWhileAnimating.propertiesObject.<string, *> | 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 | number | да | change:maxresolution | Максимальное разрешение слоя. |
maxZoom | number | да | change:maxzoom | Максимальный уровень масштабирования слоя. |
minResolution | number | да | change:minresolution | Минимальное разрешение слоя. |
minZoom | number | да | change:minzoom | Минимальный уровень масштабирования слоя. |
opacity | number | да | change:opacity | Непрозрачность слоя. |
source | SourceType | null | да | change:source | Источник слоя (или |
visible | boolean | да | change:visible | Значение свойства |
zIndex | number | undefined | да | change:zindex | Z-индекс слоя. |
Методы
-
changed() унаследовано
-
Увеличивает счётчик ревизии и отправляет событие 'change'.
-
dispatchEvent(event){boolean | undefined} унаследовано
-
Отправляет событие и вызывает все обработчики, ожидающие события этого типа. Параметр event может быть строкой или объектом со свойством
type.Имя Тип Описание eventBaseEvent | string Объект события.
Возвращает:
false, если кто-либо вызвал preventDefault для объекта события или если какой-либо обработчик вернул false.
-
get(key){*} унаследовано
-
Получает значение.
Имя Тип Описание keystring Имя ключа.
Возвращает:
Значение.
-
getAttributions(view){Array.<string>} унаследовано
-
Получает атрибуцию источника этого слоя для указанного вида.
Имя Тип Описание viewView | ViewStateLayerStateExtent | undefined Вид или
FrameState. Требуется только в том случае, если слой не добавлен на карту.Возвращает:
Атрибуция этого слоя для указанного вида.
-
getExtent(){Extent | undefined} унаследовано
-
Возвращает
extentслоя илиundefined, если он будет виден независимо от экстента.Возвращает:
Экстент слоя.
-
getFeatures(pixel){Promise<Array<FeatureLike>>} унаследовано
-
Получает верхний объект, пересекающийся с указанным пикселем в области просмотра. Возвращает promise, который разрешается массивом объектов. Если пересечение обнаружено, массив содержит верхний объект; в противном случае он будет пустым.
Алгоритм обнаружения пересечений, используемый этим методом, оптимизирован для повышения производительности, но менее точен, чем алгоритм метода
map.getFeaturesAtPixel(). Текст не учитывается, а значки представлены ограничивающей рамкой, а не точным изображением.Имя Тип Описание pixelPixel Пиксель.
Возвращает:
Promise, который разрешается массивом объектов.
-
getKeys(){Array.<string>} унаследовано
-
Получает список имён свойств объекта.
Возвращает:
Список имён свойств.
-
getMaxResolution(){number} унаследовано
-
Возвращает максимальное разрешение слоя. Если для слоя не задано максимальное разрешение, возвращает Infinity.
Возвращает:
Максимальное разрешение слоя.
-
getMaxZoom(){number} унаследовано
-
Возвращает максимальный уровень масштабирования слоя. Если для слоя не задан максимальный уровень масштабирования, возвращает Infinity.
Возвращает:
Максимальный уровень масштабирования слоя.
-
getMinResolution(){number} унаследовано
-
Возвращает минимальное разрешение слоя. Если для слоя не задано минимальное разрешение, возвращает 0.
Возвращает:
Минимальное разрешение слоя.
-
getMinZoom(){number} унаследовано
-
Возвращает минимальный уровень масштабирования слоя. Если для слоя не задан минимальный уровень масштабирования, возвращает -Infinity.
Возвращает:
Минимальный уровень масштабирования слоя.
-
getOpacity(){number} унаследовано
-
Возвращает прозрачность слоя (от 0 до 1).
Возвращает:
Прозрачность слоя.
-
getProperties(){NoInfer.<Properties>} унаследовано
-
Получает объект со всеми именами и значениями свойств.
Возвращает:
Объект.
-
getRevision(){number} унаследовано
-
Получает номер версии этого объекта. При каждом изменении объекта его номер версии увеличивается.
Возвращает:
Ревизия.
-
getSource(){SourceType | null} унаследовано
-
Получает источник слоя.
Возвращает:
Источник слоя (илиnull, если он ещё не задан).
-
getStyle(){StyleLike | FlatStyleLike | null | undefined} унаследовано
-
Получает стиль объектов. Возвращает значение, переданное параметру
styleпри создании или методуsetStyle.Возвращает:
Стиль слоя.
-
getStyleFunction(){StyleFunction | undefined} унаследовано
-
Получает функцию стиля.
Возвращает:
Функция стиля слоя.
-
getVisible(){boolean} унаследовано
-
Возвращает значение свойства
visibleэтого слоя. Чтобы узнать, виден ли слой на карте, используйте вместо этогоisVisible().Возвращает:
Значение свойстваvisibleслоя.
-
getZIndex(){number | undefined} унаследовано
-
Возвращает Z-индекс слоя, который используется для упорядочивания слоёв перед отрисовкой. Возвращает undefined, если слой не управляется.
Возвращает:
Z-индекс слоя.
-
isVisible(view){boolean} унаследовано
-
Слой виден в области просмотра карты, то есть находится в пределах минимального/максимального разрешения, уровня масштабирования и экстента, не имеет значения
visible: falseи не входит в группу слоёв, для которой задано значениеvisible: false.Имя Тип Описание viewView | ViewStateLayerStateExtent | undefined Вид или
FrameState. Требуется только в том случае, если слой не добавлен на карту.Возвращает:
Видимость слоя в области просмотра карты.
-
on(type, listener){EventsKey | Array<EventsKey>} унаследовано
-
Ожидает событие указанного типа.
Имя Тип Описание typestring | Array.<string> Тип события или массив типов событий.
listenerfunction Функция-обработчик.
Возвращает:
Уникальный ключ обработчика. Если в первом аргументе передан массив типов событий, будет возвращён массив ключей.
-
once(type, listener){EventsKey | Array<EventsKey>} унаследовано
-
Однократно ожидает событие указанного типа.
Имя Тип Описание typestring | Array.<string> Тип события или массив типов событий.
listenerfunction Функция-обработчик.
Возвращает:
Уникальный ключ обработчика. Если в первом аргументе передан массив типов событий, будет возвращён массив ключей.
-
set(key, value, silent) унаследовано
-
Задаёт значение.
Имя Тип Описание keystring Имя ключа.
value* Значение.
silentboolean | undefined Обновить без вызова события.
-
setDeclutter(declutter) унаследовано
-
Имя Тип Описание declutterboolean | string | number Устранять наложение изображений и текста.
-
setExtent(extent) унаследовано
-
Задаёт экстент, в пределах которого слой виден. Если значение равно
undefined, слой будет виден при любом экстенте.Имя Тип Описание extentExtent | undefined Экстент слоя.
-
setMap(map) унаследовано
-
Устанавливает слой для отрисовки поверх других слоёв на карте. Карта не будет управлять этим слоем в своей коллекции слоёв. Это удобно для временных слоёв. Чтобы удалить неуправляемый слой с карты, используйте
#setMap(null).Чтобы добавить слой на карту и передать управление им карте, используйте вместо этого
addLayer.Имя Тип Описание mapMap | null Карта.
-
setMaxResolution(maxResolution) унаследовано
-
Задаёт максимальное разрешение, при котором слой виден.
Имя Тип Описание maxResolutionnumber Максимальное разрешение слоя.
-
setMaxZoom(maxZoom) унаследовано
-
Задаёт максимальный уровень масштабирования (не включая его), при котором слой виден. Обратите внимание: уровни масштабирования, определяющие видимость слоя, основаны на уровне масштабирования вида, который может отличаться от уровня масштабирования источника тайлов.
Имя Тип Описание maxZoomnumber Максимальный уровень масштабирования слоя.
-
setMinResolution(minResolution) унаследовано
-
Задаёт минимальное разрешение, при котором слой виден.
Имя Тип Описание minResolutionnumber Минимальное разрешение слоя.
-
setMinZoom(minZoom) унаследовано
-
Задаёт минимальный уровень масштабирования (включая его), при котором слой виден. Обратите внимание: уровни масштабирования, определяющие видимость слоя, основаны на уровне масштабирования вида, который может отличаться от уровня масштабирования источника тайлов.
Имя Тип Описание minZoomnumber Минимальный уровень масштабирования слоя.
-
setOpacity(opacity) унаследовано
-
Задаёт прозрачность слоя; допустимые значения — от 0 до 1.
Имя Тип Описание opacitynumber Прозрачность слоя.
-
setProperties(values, silent) унаследовано
-
Задаёт набор пар «ключ-значение». Обратите внимание, что это изменяет существующие свойства и добавляет новые (но не удаляет существующие свойства).
Имя Тип Описание valuesPartial.<NoInfer.<Properties>> Значения.
silentboolean | undefined Обновить без вызова события.
-
setSource(source) унаследовано
-
Задаёт источник слоя.
Имя Тип Описание sourceSourceType | null Источник слоя.
-
setStyle(style) унаследовано
-
Задаёт стиль для объектов. Это может быть один объект стиля, массив стилей или функция, принимающая объект и разрешение и возвращающая массив стилей. Если задать
null, слой не будет иметь стиля (стильnull), поэтому в слое будут отображаться только объекты с собственными стилями. ВызовитеsetStyle()без аргументов, чтобы восстановить стиль по умолчанию. Сведения о стиле по умолчанию см. в разделеthe ol/style/Style module.Если у слоя статический стиль, вместо конструкторов
Styleи символизаторов (Fill,Strokeи т. д.) можно использовать литералы объектовflat style:vectorLayer.setStyle({ "fill-color": "yellow", "stroke-color": "black", "stroke-width": 4 })Имя Тип Описание styleStyleLike | FlatStyleLike | null | undefined Стиль слоя.
-
setVisible(visible) унаследовано
-
Задаёт видимость слоя (
trueилиfalse).Имя Тип Описание visibleboolean Видимость слоя.
-
setZIndex(zindex) унаследовано
-
Задаёт Z-индекс слоя, который используется для упорядочения слоёв перед отрисовкой. Z-индекс по умолчанию равен 0.
Имя Тип Описание zindexnumber Z-индекс слоя.
-
un(type, listener) унаследовано
-
Отменяет прослушивание события указанного типа.
Имя Тип Описание typestring | Array.<string> Тип события или массив типов событий.
listenerfunction Функция-обработчик.
-
unset(key, silent) унаследовано
-
Удаляет свойство.
Имя Тип Описание keystring Имя ключа.
silentboolean | undefined Удалить без вызова события.
© 2005-present, OpenLayers Contributors All rights reserved.Licensed under the BSD 2-Clause License.
https://openlayers.org/en/latest/apidoc/module-ol_layer_Vector-VectorLayer.html