ol/source/Cluster~Cluster
import Cluster from 'ol/source/Cluster.js';
Источник слоя для кластеризации векторных данных. Работает без дополнительной настройки с точечной геометрией. Для других типов геометрии или если кластеризовать нужно не все геометрические объекты, можно определить пользовательский geometryFunction.
Если экземпляр уничтожается без уничтожения базового источника, необходимо вызвать setSource(null), чтобы удалить ссылку на слушатель из обёрнутого источника.
-
new Cluster(options)
-
Имя Тип Описание attributionsAttributionLike | undefined Атрибуция.
distancenumber (по умолчанию 20) Расстояние в пикселях, в пределах которого объекты объединяются в кластеры.
minDistancenumber (по умолчанию 0) Минимальное расстояние в пикселях между кластерами. Не может превышать заданное расстояние. По умолчанию минимальное расстояние не гарантируется. Эта настройка позволяет избежать наложения значков. Компромисс заключается в том, что положение объекта-кластера больше не будет центром всех входящих в него объектов.
geometryFunctionGeometryFunction<FeatureType> | undefined Функция, принимающая в качестве аргумента
Featureи возвращающаяPoint— точку для расчёта кластера для этого объекта. Если объект не следует учитывать при кластеризации, функция должна возвращатьnull. Значение по умолчанию, подходящее только для случаев, когда базовый источник содержит исключительно точечные объекты:function(feature) { return feature.getGeometry(); }См.
getInteriorPoint, чтобы узнать, как получить точку для расчёта кластера для полигонов.createClusterfunction | undefined Функция, принимающая центральную точку кластера
Pointи массив объектовFeature, входящих в этот кластер. Должна возвращатьFeature, который будет использоваться для отрисовки. Реализация по умолчанию:function(point, features) { return new Feature({ geometry: point, features: features }); }sourceVectorSource<FeatureType> (по умолчанию null) Источник.
wrapXboolean (по умолчанию true) Оборачивать ли мир по горизонтали.
Генерирует события:
-
addfeature(VectorSourceEvent) — срабатывает, когда в источник добавляется объект. -
change(BaseEvent) — общее событие изменения. Срабатывает при увеличении счётчика ревизий. -
changefeature(VectorSourceEvent) — срабатывает, когда объект обновляется. -
clear(VectorSourceEvent) — срабатывает при вызове метода clear для источника. -
error(BaseEvent) — общее событие ошибки. Срабатывает при возникновении ошибки. -
featuresloadend(VectorSourceEvent) — срабатывает после завершения загрузки объектов. -
featuresloaderror(VectorSourceEvent) — срабатывает, если при загрузке объектов возникает ошибка. -
featuresloadstart(VectorSourceEvent) — срабатывает при начале загрузки объектов. -
propertychange(ObjectEvent) — срабатывает при изменении свойства. -
removefeature(VectorSourceEvent) — срабатывает, когда объект удаляется из источника. Исключения см. в описанииsource.clear().
-
Наследует
Методы
-
addFeature(feature) унаследовано
-
Добавляет один объект типа feature в источник. Чтобы добавить сразу несколько объектов типа feature, вместо этого вызовите
#addFeatures(). Объект типа feature не будет добавлен в источник, если в нём уже есть объект с таким же идентификатором. Это сделано, чтобы избежать дублирования объектов при использовании стратегий загрузки bbox или тайлов. Примечание: это также относится к случаям, когда для объектов типа feature используетсяCollection: если в коллекцию добавляется объект с дублирующимся идентификатором, он сразу же удаляется из неё.Имя Тип Описание featureFeatureType Объект типа feature для добавления.
-
addFeatures(features) унаследовано
-
Добавляет в источник несколько объектов типа feature.
Имя Тип Описание featuresArray.<FeatureType> Объекты типа feature для добавления.
-
changed() унаследовано
-
Увеличивает счётчик ревизий и отправляет событие 'change'.
-
clear(fast)
-
Удаляет из источника все объекты типа feature.
Имя Тип Описание fastboolean | undefined Не отправлять события
removefeature. -
dispatchEvent(event){boolean | undefined} унаследовано
-
Отправляет событие и вызывает все обработчики, ожидающие события этого типа. Параметр event может быть строкой или объектом со свойством
type.Имя Тип Описание eventBaseEvent | string Объект события.
Возвращает:
false, если кто-либо вызвал preventDefault для объекта события или если любой из обработчиков вернул false.
-
forEachFeature(callback){T | undefined} унаследовано
-
Перебирает все объекты типа feature в источнике, вызывая для каждого переданную функцию обратного вызова. Если функция возвращает любое «истинное» значение, перебор прекращается, а функция возвращает это же значение. Примечание: эта функция перебирает только объекты типа feature с заданной геометрией.
Имя Тип Описание callbackfunction Вызывается для каждого объекта типа feature в источнике. Чтобы прекратить перебор, верните истинное значение.
Возвращает:
Значение, возвращённое при последнем вызове функции обратного вызова.
-
forEachFeatureInExtent(extent, callback){T | undefined} унаследовано
-
Перебирает все объекты типа feature, чьи ограничивающие прямоугольники пересекаются с заданной областью (обратите внимание, что геометрия объекта может не пересекать эту область), вызывая для каждого функцию обратного вызова. Если функция возвращает «истинное» значение, перебор прекращается, а функция возвращает это же значение.
Если вас интересуют объекты типа feature, геометрия которых пересекает область, вместо этого вызовите метод
#forEachFeatureIntersectingExtent().Если для
useSpatialIndexзадано значение false, этот метод перебирает все объекты типа feature, как и#forEachFeature().Имя Тип Описание extentExtent Область.
callbackfunction Вызывается для каждого объекта типа feature, чей ограничивающий прямоугольник пересекается с заданной областью.
Возвращает:
Значение, возвращённое при последнем вызове функции обратного вызова.
-
forEachFeatureIntersectingExtent(extent, callback){T | undefined} унаследовано
-
Перебирает все объекты типа feature, геометрия которых пересекает заданную область, вызывая для каждого функцию обратного вызова. Если функция возвращает «истинное» значение, перебор прекращается, а функция возвращает это же значение.
Если нужно проверить только пересечение ограничивающих прямоугольников, вместо этого вызовите метод
#forEachFeatureInExtent().Имя Тип Описание extentExtent Область.
callbackfunction Вызывается для каждого объекта типа feature, геометрия которого пересекает заданную область.
Возвращает:
Значение, возвращённое при последнем вызове функции обратного вызова.
-
get(key){*} унаследовано
-
Получает значение.
Имя Тип Описание keystring Имя ключа.
Возвращает:
Значение.
-
getAttributions(){Attribution} унаследовано
-
Возвращает функцию атрибуции для источника.
Возвращает:
Функция атрибуции.
-
getAttributionsCollapsible(){boolean} унаследовано
-
Возвращает:
Атрибуции можно сворачивать.
-
getClosestFeatureToCoordinate(coordinate, filter){FeatureType | null} унаследовано
-
Возвращает ближайший объект типа feature к заданной координате.
Этот метод недоступен, если источник настроен с параметром
useSpatialIndex, равнымfalse, а объекты типа feature в источнике имеют типFeature.Имя Тип Описание coordinateCoordinate Координата.
filterfunction | undefined Функция фильтрации объектов типа feature. Функция фильтрации получает один аргумент —
feature— и должна возвращать логическое значение. По умолчанию фильтрация не выполняется.Возвращает:
Ближайший объект типа feature (илиnull, если он не найден).
-
getDistance(){number}
-
Возвращает расстояние в пикселях между кластерами.
Возвращает:
Расстояние.
-
getExtent(extent){Extent | null} унаследовано
-
Возвращает область охвата объектов типа feature, находящихся в источнике.
Если источник настроен с параметром
useSpatialIndex, равнымfalse, будет возвращеноnull.Имя Тип Описание extentExtent | undefined Целевая область. Если она указана, новая область не создаётся: вместо этого перезаписываются координаты заданной области.
Возвращает:
Область.
-
getFeatureById(id){FeatureClassOrArrayOfRenderFeatures<FeatureType> | null} унаследовано
-
Возвращает объект типа feature по его идентификатору (значению, возвращаемому feature.getId()). При использовании
RenderFeatureметодgetFeatureById()может вернуть массивRenderFeature. Это позволяет обрабатывать геометрииGeometryCollection, для которых средства чтения форматов создают по одномуRenderFeatureна каждый компонентGeometryCollection. Обратите внимание, что индекс считает строковые и числовые идентификаторы одинаковыми. Поэтомуsource.getFeatureById(2)вернёт объект типа feature с идентификатором'2'или2.Имя Тип Описание idstring | number Идентификатор объекта типа feature.
Возвращает:
Объект типа feature (илиnull, если он не найден).
-
getFeatures(){Array.<FeatureType>} унаследовано
-
Возвращает снимок объектов типа feature, находящихся в источнике на данный момент, в произвольном порядке. Возвращаемый массив является копией, а его элементы — ссылками на объекты типа feature в источнике.
Возвращает:
Объекты типа feature.
-
getFeaturesAtCoordinate(coordinate){Array.<FeatureType>} унаследовано
-
Возвращает все объекты типа feature, геометрия которых пересекает заданную координату.
Имя Тип Описание coordinateCoordinate Координата.
Возвращает:
Объекты типа feature.
-
getFeaturesCollection(){Collection<FeatureType> | null} унаследовано
-
Возвращает коллекцию объектов типа feature, связанную с этим источником. Возвращает
null, если источник не был настроен с параметромuseSpatialIndex, равнымfalse, и если в качествеfeaturesне использоваласьCollection.Возвращает:
Коллекция объектов типа feature.
-
getFeaturesInExtent(extent, projection){Array.<FeatureType>} унаследовано
-
Возвращает все объекты типа feature, чьи ограничивающие прямоугольники пересекаются с заданной областью. Обратите внимание, что возвращается массив всех объектов, пересекающих заданную область, в произвольном порядке (поэтому он может содержать объекты, геометрия которых не пересекает эту область).
Если для
useSpatialIndexзадано значение false, этот метод возвращает все объекты типа feature.Имя Тип Описание extentExtent Область.
projectionProjection | undefined Включать объекты, для которых
extentвыходит за границы оси xprojectionи охватывает весь мир.Возвращает:
Объекты типа feature.
-
getFormat(){FeatureFormat<FeatureType> | null} унаследовано
-
Возвращает формат, связанный с этим источником.
Возвращает:
} Формат объектов типа feature.
-
getKeys(){Array.<string>} унаследовано
-
Возвращает список имён свойств объекта.
Возвращает:
Список имён свойств.
-
getMinDistance(){number}
-
Заданное минимальное расстояние между кластерами.
Возвращает:
Минимальное расстояние в пикселях.
-
getProjection(){Projection | null} унаследовано
-
Возвращает проекцию источника.
Возвращает:
Проекция.
-
getProperties(){NoInfer.<Properties>} унаследовано
-
Возвращает объект со всеми именами свойств и их значениями.
Возвращает:
Объект.
-
getRevision(){number} унаследовано
-
Возвращает номер версии этого объекта. При каждом изменении объекта номер версии увеличивается.
Возвращает:
Номер ревизии.
-
getSource(){VectorSource<FeatureType> | null}
-
Возвращает ссылку на обёрнутый источник.
Возвращает:
Источник.
-
getState(){State} унаследовано
-
Возвращает состояние источника. Возможные состояния см. в разделе
State.Возвращает:
Состояние.
-
getUrl(){string | FeatureUrlFunction | undefined} унаследовано
-
Возвращает URL, связанный с этим источником.
Возвращает:
URL.
-
hasFeature(feature){boolean} унаследовано
-
Возвращает true, если объект типа feature содержится в источнике.
Имя Тип Описание featureFeatureType Объект типа feature.
Возвращает:
Наличие объекта типа feature.
-
on(type, listener){EventsKey | Array<EventsKey>} унаследовано
-
Прослушивать события определённого типа.
Имя Тип Описание typestring | Array.<string> Тип события или массив типов событий.
listenerfunction Функция-обработчик.
Возвращает:
Уникальный ключ обработчика. Если первый аргумент — массив типов событий, возвращается массив ключей.
-
once(type, listener){EventsKey | Array<EventsKey>} унаследовано
-
Однократно прослушивать события определённого типа.
Имя Тип Описание typestring | Array.<string> Тип события или массив типов событий.
listenerfunction Функция-обработчик.
Возвращает:
Уникальный ключ обработчика. Если первый аргумент — массив типов событий, возвращается массив ключей.
-
removeFeature(feature) унаследовано
-
Удаляет один объект из источника. Для пакетного удаления объектов используйте метод
#removeFeatures().Имя Тип Описание featureFeatureType Объект для удаления.
-
removeFeatures(features) унаследовано
-
Пакетно удаляет объекты из источника. Чтобы удалить все объекты сразу, используйте метод
#clear().Имя Тип Описание featuresArray.<FeatureType> Объекты для удаления.
-
removeLoadedExtent(extent) унаследовано
-
Помечает область как незагруженную, сохраняя загруженные области за её пределами.
Все ранее загруженные области, пересекающиеся с заданной областью, разделяются на оставшиеся непересекающиеся части с помощью
getDifference(), после чего эти части снова добавляются в дерево.Имя Тип Описание extentExtent Область, которую нужно пометить как незагруженную.
-
set(key, value, silent) унаследовано
-
Задаёт значение.
Имя Тип Описание keystring Имя ключа.
value* Значение.
silentboolean | undefined Обновить без вызова события.
-
setAttributions(attributions) унаследовано
-
Задаёт атрибуции источника.
Имя Тип Описание attributionsAttributionLike | undefined Атрибуции. Можно передать в виде
string,Array<string>,Attributionилиundefined. -
setDistance(distance)
-
Задаёт расстояние, в пределах которого объекты объединяются в кластеры.
Имя Тип Описание distancenumber Расстояние в пикселях.
-
setLoader(loader) унаследовано
-
Задаёт новый загрузчик источника. В следующем цикле отрисовки будет использоваться новый загрузчик.
Имя Тип Описание loaderFeatureLoader Загрузчик, который нужно установить.
-
setMinDistance(minDistance)
-
Задаёт минимальное расстояние между кластерами. Оно не может превышать заданное расстояние.
Имя Тип Описание minDistancenumber Минимальное расстояние в пикселях.
-
setProperties(values, silent) унаследовано
-
Задаёт набор пар ключ-значение. Обратите внимание: это изменяет существующие свойства и добавляет новые, но не удаляет имеющиеся.
Имя Тип Описание valuesPartial.<NoInfer.<Properties>> Значения.
silentboolean | undefined Обновить без вызова события.
-
setSource(source)
-
Заменяет обёрнутый источник.
Имя Тип Описание sourceVectorSource<FeatureType> | null Новый источник для этого экземпляра.
-
setUrl(url) унаследовано
-
Указывает новый URL для источника. В следующем цикле отрисовки будет использоваться новый URL.
Имя Тип Описание urlstring | FeatureUrlFunction URL.
-
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_source_Cluster-Cluster.html