ol/Feature~Feature
import Feature from 'ol/Feature.js';
Векторный объект для географических объектов с геометрией и другими свойствами-атрибутами, аналогичный объектам в векторных форматах файлов, таких как GeoJSON.
Для объектов можно задавать индивидуальные стили с помощью setStyle; в противном случае для них используется стиль векторного слоя.
Обратите внимание: свойства-атрибуты задаются как свойства BaseObject объекта Feature, поэтому за ними можно наблюдать, а также получать и задавать их значения с помощью методов доступа.
Обычно объект имеет одно свойство геометрии. Геометрию можно задать с помощью метода setGeometry и получить с помощью getGeometry. С помощью свойств-атрибутов в объекте можно хранить несколько геометрий. По умолчанию геометрия, используемая для отображения, определяется именем свойства geometry. Чтобы использовать для отображения другое свойство геометрии, примените метод setGeometryName, чтобы изменить свойство-атрибут, связанное с геометрией объекта. Например:
import Feature from 'ol/Feature.js';
import Polygon from 'ol/geom/Polygon.js';
import Point from 'ol/geom/Point.js';
const feature = new Feature({
geometry: new Polygon(polyCoords),
labelPoint: new Point(labelCoords),
name: 'My Polygon',
});
// get the polygon geometry
const poly = feature.getGeometry();
// Render the feature as a point using the coordinates from labelPoint
feature.setGeometryName('labelPoint');
// get the point geometry
const point = feature.getGeometry();
-
new Feature(geometryOrProperties)
-
Имя Тип Описание geometryOrPropertiesGeometry | ObjectWithGeometry.<Geometry, NoInfer.<Properties>> | undefined Можно передать непосредственно объект Geometry или литерал объекта, содержащий свойства. Если передан литерал объекта, можно включить в него Geometry, связанную с ключом
geometry.События:
-
change(BaseEvent) — общее событие изменения. Вызывается при увеличении счётчика ревизии. -
change:geometry(ObjectEvent) -
error(BaseEvent) — общее событие ошибки. Вызывается при возникновении ошибки. -
propertychange(ObjectEvent) — вызывается при изменении свойства.
-
Расширяет
Наблюдаемые свойства
| Имя | Тип | Можно задать | Тип ObjectEvent | Описание |
|---|---|---|---|---|
geometry | Geometry | undefined | да | change:geometry | Геометрия объекта по умолчанию. |
Методы
-
changed() унаследован
-
Увеличивает счётчик ревизии и отправляет событие 'change'.
-
clone(){Feature<Geometry>}
-
Создаёт копию этого объекта. Если исходный объект содержит геометрию, она также копируется. Идентификатор объекта в копию не переносится.
Возвращает:
Копия.
-
dispatchEvent(event){boolean | undefined} унаследован
-
Отправляет событие и вызывает все обработчики, ожидающие события этого типа. Параметр события может быть строкой или объектом со свойством
type.Имя Тип Описание eventBaseEvent | string Объект события.
Возвращает:
false, если кто-либо вызвал preventDefault для объекта события или если один из обработчиков вернул false.
-
get(key){*} унаследован
-
Получает значение.
Имя Тип Описание keystring Имя ключа.
Возвращает:
Значение.
-
getGeometry(){Geometry | undefined}
-
Получает геометрию объекта по умолчанию. У объекта может быть любое количество именованных геометрий. «Геометрия по умолчанию» (та, которая отображается по умолчанию) задаётся при вызове
setGeometry.Возвращает:
Геометрия объекта по умолчанию.
-
getGeometryName(){string}
-
Получает имя геометрии объекта по умолчанию. По умолчанию геометрия по умолчанию называется
geometry.Возвращает:
Получает имя свойства, связанного с геометрией этого объекта по умолчанию.
-
getId(){number | string | undefined}
-
Получает идентификатор объекта. Это постоянный идентификатор объекта, который задаётся при чтении данных из удалённого источника или явно с помощью вызова
setId.Возвращает:
Идентификатор.
-
getKeys(){Array.<string>} унаследован
-
Получает список имён свойств объекта.
Возвращает:
Список имён свойств.
-
getProperties(){NoInfer.<Properties>} унаследован
-
Получает объект со всеми именами свойств и их значениями.
Возвращает:
Объект.
-
getRevision(){number} унаследован
-
Получает номер версии этого объекта. При каждом изменении объекта номер версии увеличивается.
Возвращает:
Ревизия.
-
getStyle(){StyleLike | undefined}
-
Получает стиль объекта. Возвращает значение, переданное методу
setStyle.Возвращает:
Стиль объекта.
-
getStyleFunction(){StyleFunction | undefined}
-
Получает функцию стиля объекта.
Возвращает:
Возвращает функцию, представляющую текущий стиль этого объекта.
-
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 Обновить без вызова события.
-
setGeometry(geometry)
-
Задаёт геометрию объекта по умолчанию. Это обновит свойство с именем, возвращаемым методом
getGeometryName.Имя Тип Описание geometryGeometry | undefined Новая геометрия.
-
setGeometryName(name)
-
Задаёт имя свойства, используемого при получении геометрии объекта по умолчанию. При вызове
getGeometryбудет возвращено значение свойства с этим именем.Имя Тип Описание namestring Имя свойства геометрии по умолчанию.
-
setId(id)
-
Задаёт идентификатор объекта. Идентификатор объекта считается постоянным и может использоваться при запросе объектов или сравнении идентификаторов, полученных из удалённого источника. Идентификатор объекта можно использовать с методом
getFeatureById.Имя Тип Описание idnumber | string | undefined Идентификатор объекта.
События:
-
setProperties(values, silent) унаследован
-
Задаёт набор пар «ключ — значение». Обратите внимание: при этом изменяются существующие свойства и добавляются новые (существующие свойства не удаляются).
Имя Тип Описание valuesPartial.<NoInfer.<Properties>> Значения.
silentboolean | undefined Обновить без вызова события.
-
setStyle(style)
-
Задаёт стиль объекта, переопределяющий стиль слоя. Это может быть один объект стиля, массив стилей или функция, принимающая разрешение и возвращающая массив стилей. Чтобы сбросить стиль объекта, вызовите
setStyle()без аргументов или с ложным значением.Имя Тип Описание styleStyleLike | undefined Стиль этого объекта.
События:
-
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_Feature-Feature.html