ol/Geolocation~Геолокация
import Geolocation from 'ol/Geolocation.js';
Вспомогательный класс для предоставления возможностей HTML5 Geolocation. API геолокации Geolocation API используется для определения местоположения пользователя.
Для получения уведомлений о изменениях местоположения и ошибках, зарегистрируйте слушателей для общего события change и события error на вашем экземпляре Geolocation.
Пример:
const geolocation = new Geolocation({
// take the projection to use from the map's view
projection: view.getProjection()
});
// listen to changes in position
geolocation.on('change', function(evt) {
console.log(geolocation.getPosition());
});
// listen to error
geolocation.on('error', function(evt) {
window.console.log(evt.message);
});
-
new Geolocation(options)
-
Имя Тип Описание trackingboolean (по умолчанию false) Начать отслеживание сразу после создания.
trackingOptionsPositionOptions | undefined Параметры отслеживания. См. https://www.w3.org/TR/geolocation-API/#position_options_interface.
projectionProjectionLike | undefined Проекция, в которой сообщается положение.
Срабатывающие события:
-
change(BaseEvent) - Общее событие изменения. Срабатывает при увеличении счётчика версий. -
change:accuracy(ObjectEvent) -
change:accuracyGeometry(ObjectEvent) -
change:altitude(ObjectEvent) -
change:altitudeAccuracy(ObjectEvent) -
change:heading(ObjectEvent) -
change:position(ObjectEvent) -
change:projection(ObjectEvent) -
change:speed(ObjectEvent) -
change:tracking(ObjectEvent) -
change:trackingOptions(ObjectEvent) -
error(GeolocationError) - Срабатывает при возникновении GeolocationPositionError. -
error(BaseEvent) - Общее событие ошибки. Срабатывает при возникновении ошибки. -
propertychange(ObjectEvent) - Срабатывает при изменении свойства.
-
Расширяет
Наблюдаемые свойства
| Имя | Тип | Изменяемое | ObjectEvent тип | Описание |
|---|---|---|---|---|
accuracy | number | undefined | нет | change:accuracy | Точность измерения местоположения в метрах. |
accuracyGeometry | Polygon | нет | change:accuracygeometry | Геометрия точности местоположения. |
altitude | number | undefined | нет | change:altitude | Высота местоположения в метрах над уровнем моря. |
altitudeAccuracy | number | undefined | нет | change:altitudeaccuracy | Точность измерения высоты в метрах. |
heading | number | undefined | нет | change:heading | Азимут устройства в радианах от северной стороны. |
position | Coordinate | undefined | нет | change:position | Текущее местоположение устройства, указанное в текущей проекции. |
projection | Projection | undefined | да | change:projection | Проекция, в которой сообщается положение. |
speed | number | undefined | нет | change:speed | Мгновенная скорость устройства в метрах в секунду. |
tracking | boolean | да | change:tracking | Местоположение устройства отслеживается. |
trackingOptions | PositionOptions | undefined | да | change:trackingoptions | PositionOptions, как определено в спецификации HTML5 Geolocation. |
Методы
-
changed() inherited
-
Увеличивает счётчик ревизий и отправляет событие 'change'.
-
dispatchEvent(event){boolean | undefined} inherited
-
Отправляет событие и вызывает всех слушателей, подписных на события этого типа. Параметр события может быть строкой или объектом с свойством
type.Имя Тип Описание eventBaseEvent | string Объект события.
Возвращает:
false, если кто-то вызвал preventDefault на объекте события или любой из слушателей вернул false.
-
Получает значение.
Имя Тип Описание keystring Имя ключа.
Возвращает:
Значение.
-
getAccuracy(){number | undefined}
-
Получить точность определения позиции в метрах.
Возвращает:
Точность измерения позиции в метрах.
-
getAccuracyGeometry(){Polygon}
-
Получить геометрию точности определения позиции.
Возвращает:
Геометрию точности определения позиции.
-
getAltitude(){number | undefined}
-
Получить высоту, связанную с позицией.
Возвращает:
Высоту позиции в метрах над уровнем моря.
-
getAltitudeAccuracy(){number | undefined}
-
Получить точность измерения высоты позиции.
Возвращает:
Точность измерения высоты в метрах.
-
getHeading(){number | undefined}
-
Получить курс в радианах по часовой стрелке от севера. Примечание: в зависимости от браузера, курс определяется только если
enableHighAccuracyзадано какtrueв опциях отслеживания.Возвращает:
Курс устройства в радианах от севера.
-
Получить список имён свойств объекта.
Возвращает:
Список имён свойств.
-
getPosition(){Coordinate | undefined}
-
Получить позицию устройства.
Возвращает:
Текущую позицию устройства, представленную в текущей проекции.
-
getProjection(){Projection | undefined}
-
Получить проекцию, связанную с позицией.
Возвращает:
Проекцию, в которой представлена позиция.
-
Получить объект со всеми именами и значениями свойств.
Возвращает:
Объект.
-
getRevision(){number} inherited
-
Получить номер версии для этого объекта. Каждый раз при изменении объекта его номер версии увеличивается.
Возвращает:
Ревизия.
-
getSpeed(){number | undefined}
-
Получить скорость в метрах в секунду.
Возвращает:
Текущая скорость устройства в метрах в секунду.
-
getTracking(){boolean}
-
Определить, отслеживается ли местоположение устройства.
Возвращает:
Отслеживается ли местоположение устройства.
-
getTrackingOptions(){PositionOptions | undefined}
-
Получить опции отслеживания. См. https://www.w3.org/TR/geolocation-API/#position-options.
Возвращает:
PositionOptions, как определено в спецификации HTML5 Geolocation.
-
Прослушивать определенный тип события.
Имя Тип Описание typestring | Array.<string> Тип события или массив типов событий.
listenerfunction Функция-обработчик.
Возвращает:
Уникальный ключ для обработчика. Если вызван с массивом типов событий в качестве первого аргумента, возвращаемый результат будет массивом ключей.
-
Прослушивать определенный тип события один раз.
Имя Тип Описание typestring | Array.<string> Тип события или массив типов событий.
listenerfunction Функция-обработчик.
Возвращает:
Уникальный ключ для обработчика. Если вызван с массивом типов событий в качестве первого аргумента, возвращаемый результат будет массивом ключей.
-
set(key, value, silent) inherited
-
Устанавливает значение.
Имя Тип Описание keystring Имя ключа.
value* Значение.
silentboolean | undefined Обновить без срабатывания события.
-
setProjection(projection)
-
Установить проекцию для преобразования координат.
Имя Тип Описание projectionProjectionLike Проекция, в которой сообщается положение.
-
setProperties(values, silent) inherited
-
Устанавливает набор пар ключ-значение. Обратите внимание, что это изменяет любые существующие свойства и добавляет новые (не удаляет какие-либо существующие свойства).
Имя Тип Описание valuesObject.<string, *> Значения.
silentboolean | undefined Обновить без срабатывания события.
-
setTracking(tracking)
-
Включить или выключить отслеживание.
Имя Тип Описание trackingboolean Включить отслеживание.
-
setTrackingOptions(options)
-
Установить параметры отслеживания. См. http://www.w3.org/TR/geolocation-API/#position-options.
Имя Тип Описание optionsPositionOptions PositionOptions, как определено в спецификации HTML5 Geolocation спецификации.
-
un(type, listener) inherited
-
Отписаться от определенного типа события.
Имя Тип Описание typestring | Array.<string> Тип события или массив типов событий.
listenerfunction Функция-обработчик.
-
unset(key, silent) inherited
-
Удаляет свойство.
Имя Тип Описание 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_Geolocation-Geolocation.html