ol/source/Vector
Классы
- VectorSourceEvent
- VectorSource
Определения типов
-
LoadingStrategy()
-
Функция, принимающая в качестве аргументов
Extentи разрешение и возвращающая массивExtentс экстентами для загрузки. Обычно это одна из стандартных стратегийol/loadingstrategy. -
Options{Object}
-
Свойства:
Имя Тип Описание attributionsAttributionLike | undefined Атрибуции.
featuresArray.<FeatureType> | Collection<FeatureType> | undefined Объекты. Если они переданы как
Collection, объекты в источнике и коллекции будут синхронизированы.formatFeatureFormat<FeatureType> | undefined Формат объектов, используемый загрузчиком объектов XHR, если задано
url. Обязателен, если заданоurl, в противном случае игнорируется.loaderFeatureLoader<FeatureType> | undefined Функция загрузчика, используемая для загрузки объектов, например, из удалённого источника. Если она не задана, а задано
url, источник создаст и использует загрузчик объектов XHR. События'featuresloadend'и'featuresloaderror'будут генерироваться только при использовании обратных вызововsuccessиfailure.Пример:
import Vector from 'ol/source/Vector.js'; import GeoJSON from 'ol/format/GeoJSON.js'; import {bbox} from 'ol/loadingstrategy.js'; const vectorSource = new Vector({ loader: async (extent, resolution, projection) => { const url = 'https://ahocevar.com/geoserver/wfs?service=WFS&' + 'version=1.1.0&request=GetFeature&typename=osm:water_areas&' + 'outputFormat=application/json' + 'bbox=' + extent.join(',') + ',' + projection.getCode(); const response = await fetch(url); if (!response.ok) { throw new Error('Network response was not ok'); } const json = await response.json(); const features = new GeoJSON().readFeatures(json, { featureProjection: projection, }); return features; }, strategy: bbox, });Чтобы повторить неудачный запрос, используйте
vectorSource.removeLoadedExtent(extent); vectorSource.changed();
overlapsboolean
(по умолчанию true)В этом источнике могут быть перекрывающиеся геометрии. Установка значения
false(например, для источников с полигонами, представляющими административные границы, или для источников TopoJSON) позволяет средству визуализации оптимизировать операции заливки и обводки.strategyLoadingStrategy | undefined Используемая стратегия загрузки. По умолчанию применяется стратегия
all— стратегия однократной загрузки всех объектов.urlstring | FeatureUrlFunction | undefined Установка этого параметра указывает источнику загружать объекты с помощью загрузчика XHR (см.
xhr). Для однократной загрузки всех объектов по указанному URL используйтеstringиall. Для формирования URL с использованием других стратегий загрузки используйтеFeatureUrlFunction. Также необходимо задатьformat. Если используется загрузчик объектов XHR по умолчанию, при разборе данные будут преобразованы из проекции данных в проекцию представления. Если удалённый источник данных неправильно указывает свою проекцию, это преобразование будет некорректным. Для некоторых форматов проекцию данных по умолчанию (обычно EPSG:4326) можно переопределить, задав параметр конструктора dataProjection для формата. Обратите внимание: если источник содержит данные, не являющиеся объектами, например геометрию GeoJSON или NetworkLink KML, такие данные будут проигнорированы. Для их загрузки используйте пользовательский загрузчик.useSpatialIndexboolean
(по умолчанию true)По умолчанию используется R-дерево в качестве пространственного индекса. Если объекты часто удаляются и добавляются, а их общее количество невелико, установка значения
falseможет повысить производительность.Обратите внимание: методы
getFeaturesInExtent,getClosestFeatureToCoordinateиgetExtentнельзя использовать, если дляuseSpatialIndexзадано значениеfalse, а методforEachFeatureInExtentбудет перебирать все объекты.Если задано значение
false, объекты будут храниться вCollection, которую можно получить с помощьюgetFeaturesCollection.wrapXboolean
(по умолчанию true)Оборачивать мир по горизонтали. Чтобы редактирование векторов через меридианы -180° и 180° работало правильно, этому параметру следует задать значение
false. В результате координаты геометрии будут выходить за границы мира.
© 2005-present, OpenLayers Contributors All rights reserved.Licensed under the BSD 2-Clause License.
https://openlayers.org/en/latest/apidoc/module-ol_source_Vector.html