Карта

В данном разделе описывается основной класс API карт, который используется для создания и управления картой на странице.

DG.Map

Пример использования

Инициализация карты в элементе div с id "map", с указанием координат центра и коэффициента масштабирования:

var map = DG.map('map', {
    center: [54.98, 82.89],
    zoom: 13
});

Создание

Конструктор Описание
DG.map( <String>> id, <Map options>> options? ) Инициализирует карту в DOM-узле <div> элемента с указанным id с необязательным набором опций, которые описаны ниже.
DG.map( <HTMLElement> el, <Map options> options? ) Инициализирует карту в переданном DOM-узле <div> элемента с необязательным набором опций, которые описаны ниже.

Опции

Опция Тип По умолчанию Описание
preferCanvas Boolean false Должны ли экземпляры Path отрисовываться на Canvas. По умолчанию все экземпляры Path отрисовываются с помощью SVG рендерера.
Опции элементов управления
Опция Тип По умолчанию Описание
zoomControl Boolean true Добавлен ли элемент управления масштабом на карту.
fullscreenControl Boolean true Добавлена ли кнопка включения полноэкранного режима на карту.
Опции взаимодействия
Опция Тип По умолчанию Описание
closePopupOnClick Boolean true Закрывать ли попапы при клике в карту.
zoomSnap Number 1 Всегда приводит уровень масштабирования к значению кратному данному параметру. Приведение происходит сразу после выполнения fitBounds() или изменения масштаба "щипком" (pinch-zoom). По умолчанию уровень масштабирования приводится к ближайшему целому числу; меньшие значения (например, 0.5 или 0.1) позволяют более точно управлять приведением масшатаба. Значение 0 говорит о том, что уровень масштабирования не будет приводиться после fitBounds или изменения масштаба "щипком".
zoomDelta Number 1 Управляет тем, насколько изменится уровень масштаба после zoomIn(), zoomOut(), нажатия + или - на клавиатуре или используя элемент управления масштабом. Значения меньшие чем 1 (например, 0.5) предоставляют большую точность.
trackResize Boolean true Обновляется ли карта при изменении размера окна браузера.
boxZoom Boolean true Может ли масштаб карты быть изменен с помощью box-масштабирования (shift + выделение мышью).
doubleClickZoom Boolean|String true Разрешено ли увеличивать масштаб карты двойным кликом мыши (удерживание Shift позволяет уменьшать масштаб). Если передано значение center, карта всегда масштабируется отностиельно центра просматриваемой области, независимо от положения курсора.
dragging Boolean true Разрешено ли перетаскивать карту мышью или тачем.
geoclicker Boolean | Object false Включено ли геокодирование по клику (геокликер). Если false, тогда при клике в любой объект карты (улицы, дома, остановки) не будет отображаться информация об этом объекте. Если в качестве параметра передан объект с опциями, тогда геокликер будет включен. Опции showPhotos и showBooklet позволяют отключить в балуне организации ссылки на буклеты и фотографии.
projectDetector Boolean true Включает или отключает механизм определения проектов 2ГИС. Проект — это агломерация, включающая крупный город и ближайшие населённые пункты.
tilesCheck Boolean true Возвращается ли карта к предыдущему состоянию, если на целевом уровне масштабирования нет тайлов.
Опции состояния карты
Опция Тип По умолчанию Описание
center LatLng undefined Начальный географический центр карты.
zoom Number undefined Начальный уровень масштаба.
minZoom Number undefined Минимальный уровень масштабируемости карты. Переопределяет свойство minZoom используемых слоев.
maxZoom Number undefined Максимальный уровень масштабируемости карты. Переопределяет свойство maxZoom используемых слоев.
layers Layer[] [] Массив слоев, которые изначально будут добавлены на карту.
maxBounds LatLngBounds null Если свойство установлено, карта ограничивает область просмотра согласно заданным географическим границам, "отбрасывая" пользователя назад, если он пытается выйти за пределы установленных границ, а также не позволяет уменьшить масштаб так, чтобы можно было просмотреть неразрешенные участки карты. Для установки ограничения динамически, используйте метод setMaxBounds.
renderer Renderer * Метод, который используется для отрисовки векторных слоев на карте. По умолчанию устанавливается DG.SVG или DG.Canvas в зависимости от поддержки браузером.
poi Boolean true Отображать ли точки интереса на карте.
Опции анимации
Опция Тип По умолчанию Описание
fadeAnimation Boolean true Включена ли анимация затухания тайлов. По умолчанию включена во всех браузерах поддерживающих CSS3 transitions, кроме Android.
markerZoomAnimation Boolean true Включена ли анимация масштабирования маркеров при анимации масштабирования карты, если выключена, тогда маркеры пропадают во время анимации карты. По умолчанию включена во всех браузерах поддерживающих CSS3 transitions, кроме Android.
transform3DLimit Number 2^23 Определяет максимальное значение CSS translation transform. Значение по умолчанию изменять не стоит, до тех пор пока браузер не начинает позиционировать слои в неправильном месте после большего смещения в результате panBy.
zoomAnimation Boolean true Включена ли анимация масштабирования тайлов. По умолчанию включена во всех браузерах поддерживающих CSS3 transitions, кроме Android.
zoomAnimationThreshold Number 4 Порог, начиная с которого будет отключаться анимация масштабирования.
Опции инерции при перемещении
Опция Тип По умолчанию Описание
inertia Boolean * Если опция включена, тогда создается эффект инерции при движении карты — при перетаскивании карта продолжает движение в том же направлении какое-то время. Полезно для тач-устройств. По умолчанию, эта опция включена везде, за исключением старых Android-устройств.
inertiaDeceleration Number 3000 Величина, на которую замедляется движение карты, указывается в пикселях/секунду2.
inertiaMaxSpeed Number Infinity Максимальная скорость инерционного движения, указывается в пикселях/секунду.
easeLinearity Number 0.2
worldCopyJump Boolean false Опция позволяет зациклить просмотр карты с сохранением слоев и маркеров на ней.
maxBoundsViscosity Number 0.0 Если установлено свойство maxBounds, эта опция позволяет контролировать "прочность" границ при перемещении карты мышью или тачем. Значение по умолчанию 0.0 — позволяет пользователю перемещать карту за ее границы с нормальной скоростью, чем выше значение, тем меньше будет скорость при пермещении за пределы границы карты. При значении 0.1, границы становятся полностью "непроницаемы", предотвращая любое перемещение карты вне их пределов.
Опции навигации клавишами
Опция Тип По умолчанию Описание
keyboard Boolean true Устанавливает фокус на карту и позволяет перемещаться по карте с помощью кнопок +/- и стрелок клавиатуры.
keyboardPanDelta Number 80 Указывает, на сколько пикселей сдвинется карта, при нажатии стрелки на клавиатуре.
Опции колеса мыши
Опция Тип По умолчанию Описание
scrollWheelZoom Boolean | String true Можно ли изменять масштаб карты с помощью колеса мыши. Если в качестве параметра передано значение 'center', изменение масштаба будет происходить относительно центра просматриваемой области, вне зависимости от позиции указателя мыши.
wheelDebounceTime Number 40 Ограничевает частоту, с которой прокрутка колеса мыши будет отправлять событие на изменение масштаба (в милисекундах). По умолчанию, пользователь не может изменять масштаб карты более чем один раз в 40 мс.
wheelPxPerZoomLevel Number 50 Какое количество пикселей прокрутки (можно определить через DG.DomEvent.getWheelDelta) означает изменение на один уровень масштабирования. Меньшие значения будут изменять масштаб карты, с помощью колеса, быстрей (и наоборот).
Опции взаимодействия на тач-устройствах
Опция Тип По умолчанию Описание
tap Boolean true Активирует поддержку мгновенных тапов (отключение задержки в 200мс в iOS/Android) и долгих тапов (в этом случае посылается событие contextmenu).
tapTolerance Number 15 Максимальное число пикселей, на которое пользователь может сдвинуть свой палец во время тача, для того, чтобы это событие было воспринято как тап.
touchZoom Boolean * Разрешено ли изменять масштаб карты двумя пальцами на тач-устройствах. Если передано значение 'center', карта всегда будет масштабироваться относительно центра просматриваемой области, независимо от того, где на карте произошли события тача. Активируется в веб-браузерах с тач поддержкой, за исключением устройств со старой версией Android.
bounceAtZoomLimits Boolean false Если true, карта будет возвращаться к допустимому масштабу, когда пользователь будет пытаться выйти за предельный максимальный/минимальный масштаб карты с помощью масштабирования пальцами.

События

События слоев
Событие Данные Описание
layeradd LayerEvent Вызывается при добавлении нового слоя на карту.
layerremove LayerEvent Вызывается при удалении слоя с карты.
События изменения состояния карты
Событие Данные Описание
zoomlevelschange Event Вызывается, если при добавлении или удалении слоя карты изменилось количество доступных уровней масштабирования.
resize Event Вызывается при изменении размера карты.
unload Event Вызывается при удалении карты c помощью метода remove.
viewreset Event Вызывается, когда нужно перерисовать содержимое карты (обычно при изменении масштаба или загрузке). Полезно при создании дополнительных слоев.
load Event Вызывается при инициализации карты (при первой установке ее центра и масштаба).
zoomstart Event Вызывается в начале изменения масштаба (перед анимацией изменения масштаба).
movestart Event Вызывается в начале изменения области просмотра карты (например, когда пользователь начинает перетаскивать карту).
zoom Event Вызывается периодически, в течении любого изменения уровня масштаба, включая анимации перелета.
move Event Вызывается периодически, во время любого передвижения карты, включая анимации перелета.
zoomend Event Вызывается после изменения масштаба и анимаций.
moveend Event Вызывается при окончании передвижения карты (например, когда пользователь прекращает перетаскивать карту).
projectchange ProjectEvent Вызывается при перемещении пользователя из одного проекта 2ГИС в другой.
projectleave ProjectEvent Вызывается при выходе пользователя из текущего проекта 2ГИС.
entranceshow Event Вызывается при отображении входа в здание.
entrancehide Event Вызывается при скрытии входа в здание.
poihover MetaEvent Вызывается при наведении курсора мыши на точку интереса.
poileave MetaEvent Вызывается, когда курсор мыши покидает область точки интереса.
langchange LangEvent Вызывается при изменении языка карты.
События попапа
Событие Данные Описание
popupopen PopupEvent Вызывается при открытии попапа.
popupclose PopupEvent Вызывается при закрытии попапа.
autopanstart Вызывается, когда карта начинает двигаться после появления попапа.
События взаимодействий
События Данные Описание
click MouseEvent Вызывается при клике (или тапе) по карте.
dblclick MouseEvent Вызывается при двойном клике (или двойном тапе) по карте.
mousedown MouseEvent Вызывается при нажатии кнопки мыши над областью карты.
mouseup MouseEvent Вызывается, когда пользователь отпускает кнопку мыши над областью карты.
mouseover MouseEvent Вызывается при наведении курсора мыши на карту.
mouseout MouseEvent Вызывается, когда курсор мыши покидает область карты.
mousemove MouseEvent Вызывается, когда курсор мыши перемещается над картой.
contextmenu MouseEvent Вызывается при нажатии правой кнопки мыши на карте, предотвращает появление стандартного контекстного меню браузера, если на это событие подписаны обработчики. Также вызывается на мобильных устройствах, когда пользователь удерживает тач в течение секунды (долгое нажатие).
keypress Event Вызывается при нажатии клавиш на клавиатуре, когда карта находится в фокусе.
preclick MouseEvent Вызывается перед кликом мыши на карте (полезно, если нужно выполнить какое-либо действие до вызова обработчика клика).
События анимаций
Событие Данные Описание
zoomanim ZoomAnimEvent Вызывается каждый кадр, в процессе изменения масштаба.
События местоположения
Событие Данные Описание
locationerror ErrorEvent Вызывается при возникновении ошибок, во время обнаружения местоположения пользователя (при использовании метода locate).
locationfound LocationEvent Вызывается при успешном обнаружении местоположения пользователя (при использовании метода locate).

Методы

Метод Возвращает Описание
getRenderer( <Path> layer) Renderer Возвращает экземпляр Renderer, который должен быть использован для отрисовки необходимого векторного слоя. Метод гарантирует, что опции движка отображения карты и векторных слоев будут учитываться, и что необходимые движки отображения действительно существуют на карте.
Методы слоев и элементов управления
Метод Возвращает Описание
addLayer( <Layer> layer) this Добавляет слой на карту.
removeLayer( <Layer> layer) this Удаляет указанные слои с карты.
hasLayer( <Layer> layer) Boolean Возвращает true, если слой, на данный момент, добавлен на карту.
eachLayer( <Function> fn, <Object> context?) this Выполняет заданную функцию для каждого слоя карты. Дополнительно можно указать контекст выполнения функции.
map.eachLayer(function(layer){
    layer.bindPopup('Hello');
});
openPopup( <Popup> popup) this Показывает указанный попап, предварительно закрыв все открытые.
openPopup( <String|HTMLElement> content, <LatLng> latlng, <Popup options> options?) this Создает попап с переданными опциями и содержимым и открывает его в определенной точке на карте.
closePopup(<Popup> popup?) this Закрывает попап, открытый с помощью openPopup.
addControl( <Control> control) this Добавляет элемент управления на карту.
removeControl( <Control> control) this Удаляет элемент управления с карты.
Методы модификации состояния карты
Метод Возвращает Описание
setView( <LatLnt> center, <Number> zoom, <Zoom/Pan options> options?) this Устанавливает область просмотра карты (географический центр и масштаб). Дополнительно можно указать опции анимации.
setZoom( <Number> zoom, <Zoom/Pan options> options) this Устанавливает уровень масштаба.
zoomIn( <Number> delta?, <Zoom options> options?) this Увеличивает масштаб карты на величину delta (по умолчанию zoomDelta).
zoomOut( <Number> delta?, <Zoom options> options?) this Уменьшает масштаб карты на величину delta (по умолчанию zoomDelta).
setZoomAround( <LatLng> latlng, <Number> zoom, <Zoom options> options) this Масштабирует карту, сохраняя при этом указанную точку в неподвижном состоянии (например, используется для масштабировании при помощи колесика мыши и двойного клика).
setZoomAround( <Point> offset, <Number> zoom, <Zoom options> options) this Масштабирует карту, сохраняя при этом указанную точку в пикселях в неподвижном состоянии (относительно левого верхнего угла).
fitBounds( <LatLngBounds> bounds, <fitBounds options> options) this Устанавливает область просмотра карты так, чтобы она содержала заданные границы, на максимально возможном уровне масштаба.
fitWorld( <fitBounds options> options?) this Устанавливает область просмотра карты так, чтобы та отображала весь мир, на максимально возможном уровне масштаба.
panTo( <LatLng> latlng, <Pan options> options?) this Передвигает карту к указанному центру.
panBy( <Point> offset) this Перемещает карту на заданное количество пикселей (анимировано).
setMaxBounds( <Bounds> bounds) this Ограничивает область просмотра карты заданными границами (см. опцию maxBounds).
setMinZoom(<Number> zoom) this Устанавливает нижний предел уровней масштабирования (см. опцию minZoom).
setMaxZoom(<Number> zoom) this Устанавливает верхний предел уровней масштабирования (см. опцию maxZoom).
panInsideBounds( <LatLngBounds> bounds, <Pan options> options?) this Перемещает карту в ближайшую область просмотра, лежащую в пределах заданных границ. Можно контролировать анимацию, передав объект опций вторым параметром.
invalidateSize(<Zoom/Pan options> options) this Обновляет карту при изменении размера ее контейнера. Этот метод необходимо вызывать, если размер контейнера изменяется динамически (по умолчанию, также будет происходить анимация переимещения). Если параметр options.pan установлен в false, то карта не будет перемещаться. Если параметр options.debounceMoveend установлен в true, то событие moveend не будет вызываться часто, даже если метод будет вызываться много раз подряд.
invalidateSize(<Boolean> animate) this Обновляет карту при изменении размера ее контейнера. Этот метод необходимо вызывать, если размер контейнера изменяется динамически (по умолчанию, также будет происходить анимация переимещения).
stop() this Останавливает текущие запущенные анимации panTo или flyTo.
flyTo( <LatLng> latlng, <Number> zoom?, <Zoom/Pan options> options?) this Устанавливает область просмотра карты (гегорафический центр и масштаб), выполняя плавную анимацию изменения масштаба и перемещения.
flyToBounds( <LatLngBounds> bounds, <fitBounds options> options?) this Устанавливает область просмотра карты с плавной анимацией изменения масштаба и перемещения, как flyTo, но примнимает в качестве параметра границы, как fitBounds.
setLang( <String> lang ) String Устанавливает язык карты. В качестве параметра принимает код языка (например, 'en').
Другие методы
Метод Возвращает Описание
addHandler( <String> name, <Function> HandlerClass) this Добавляет новый Handler на карту, c переданным именем и функцией-конструктором.
remove() this Удаляет карту и все обработчики, связанные с ней.
createPane( <String> name, <HTMLElement> container?) HTMLElement Создает новую панель карты с данным именем, если она еще не существует, и затем возвращает ее. Панель создается как ребенок container, или как дочерний элемент главной панели карты, если container не установлен.
getPane(<String | HTMLElement> pane) HTMLElement Возвращает панель карты по ее имени или по ее HTML-элементу
getPanes() Object Возвращает объект, содержащий имена всех панелей как ключи и сами панели, как значения
getContainer() HTMLElement Возвращает контейнер карты (HTML-элемент).
whenReady( <Function> fn, <Object> context?) this Выполняет функцию fn после инициализации карты (когда установлен центр и масштаб) и, по крайней мере, одним слоем, или сразу, если она была инициализирована ранее. Опционально можно передать контекст выполнения.
Методы получения состояния карты
Метод Возвращает Описание
getCenter() LatLng Возвращает географический центр области просмотра карты.
getZoom() Number Возвращает текущий уровень масштабирования.
getBounds() LatLngBounds Возвращает географические прямоугольные границы текущей области просмотра карты.
getMinZoom() Number Возвращает минимальный уровень масштабирования карты (если установлена опция minZoom у карты или любого слоя) или 0, по умолчанию.
getMaxZoom() Number Возвращает максимальный уровень масштабирования карты (если установлена опция maxZoom у карты или любого слоя).
getBoundsZoom( <LatLngBounds> bounds, <Boolean> inside?) Number Возвращает максимальный уровень масштабирования, при котором заданные границы полностью входят в область просмотра. Если опция inside установлена в true, тогда метод возвращает минимальный уровень зума, с теми же условиями.
getSize() Point Возвращает текущий размер контейнера карты (в пикселях).
getPixelBounds() Bounds Возвращает прямоугольные границы области просмотра карты, спроецированные на пиксельные координаты (иногда полезно в реализациях слоев и оверлеев).
getPixelOrigin() Point Возвращает спроецированные пиксельные координаты левой верхней точки слоя карты. Полезно при реализации дополнительных слоев и оверлеев.
getPixelWorldBounds( <Number> zoom?) Bounds Возвращает пиксельные координаты границ мира для заданного уровня масштабирования zoom. Если zoom пропущен, используется текущий уровень масштаба карты.
getLang() String Возвращает текущий язык карты.
Методы преобразования
Метод Возвращает Описание
getZoomScale( <Number> toZoom, <Number> fromZoom) Number Возвращает коэффициент масштабирования, который будет применен к переходу с уровня fromZoom до toZoom. Используется внутри библиотеки в анимациях изменения масштаба.
getScaleZoom( <Number> scale, <Number> fromZoom) Number Возвращает уровень масштаба, на котором окажется карта, если ее текущий уровень масштабирования fromZoom и коэффициент масштабирования scale. Метод обратный getZoomScale.
project( <LatLng> latlng, <Number> zoom) Point Проецирует географические координаты LatLng в соответствии с типом проекции карты (CRS), затем масштабирует их в соответствии с параметром zoom и CRS Transformation Результат - пиксельные координаты относительно основания CRS.
unproject( <Point> point, <Number> zoom) LatLng Метод обратный project.
layerPointToLatLng( <Point> point) LatLng По переданным пиксельным координатам относительно origin pixel возвращает соответствующие географические координаты (для текущего уровня масштабирования).
latLngToLayerPoint( <LatLng> latlng) Point По переданным географическим координатам возвращает соответствующие пиксельные координаты относительно origin pixel.
wrapLatLng( <LatLng> latlng) LatLng Возвращает LatLng, где lat и lng "зацикливаются" в соответствии с CRS-свойствами wrapLat и wrapLng, если они выходят за CRS-границы. По умолчанию это значит, что долгота переносится относительно линии перемены даты. Таким образом, ее значение всегда будет находиться между -180 и +180 градусами.
distance( <LatLng> latlng1, <LatLng> latlng2) Number Возвращает расстояние между двумя географическими координатами в соответствии с CRS карты. По умолчанию расстояние измеряется в метрах.
containerPointToLayerPoint( <Point> point) Point По переданным пиксельным координатам, относительно контейнера карты, возвращает соответствующие пиксельные координаты, относительно origin pixel.
layerPointToContainerPoint( <Point> point) Point По переданным пиксельным координатам, относительно origin pixel, возвращает соответствующие пиксельные координаты, относительно контейнера карты.
containerPointToLatLng( <Point> point) Point По переданным пиксельным координатам, относительно контейнера карты, возвращает географические координаты (для текущего уровня масштабирования).
latLngToContainerPoint( <LatLng> latlng) Point По переданным географическим координатам, возвращает пиксельные координаты, относительно контейнера карты.
mouseEventToContainerPoint( <MouseEvent> ev) Point По переданному объекту MouseEvent, возвращает пиксельную координату места, где произошло событие, относительно левого верхнего угла контейнера карты.
mouseEventToLayerPoint( <MouseEvent> ev) Point По переданному объекту MouseEvent, возвращает пиксельную координату, где произошло событие, относительно origin pixel.
mouseEventToLatLng( <MouseEvent> ev) LatLng По переданному объекту MouseEvent, возвращает географическую координату, где произошло событие.
Методы геолокации
Метод Возвращает Описание
locate( <Locate options> options?) this Пытается определить местоположение пользователя используя Geolocation API. При успешном определении вызывается событие locationfound с данными о местоположении, в случае ошибки будет вызвано событие locationerror. Опционально устанавливает область просмотра карты согласно местоположению пользователя (или отображает карту мира, если возникла ошибка геолокации). Для дополнительной информации см. опции определения местоположения.
stopLocate() this Останавливает отслеживание местоположения, предварительно инициированное методом map.locate({watch: true}), и предотвращает сброс карты, если map.locate был вызван с ({setView: true}).
Методы, унаследованные от Evented

Методы, унаследованные от Evented, смотрите здесь.

Свойства

Свойства карты включают в себя обработчики взаимодействия, которые позволяют контролировать интерактивное поведение, подключение и отключение определенных возможностей карты, таких как перетаскивание и масштабирование тачем (см. методы Handler). Например:

map.doubleClickZoom.disable();

Вы также можете получить доступ к элементам управления картой, которые включены по умолчанию, например, к элементу управления масштабом:

map.zoomControl.setPosition('topright');
Обработчики
Свойство Тип Описание
boxZoom Handler Обработчик box-масштабирования (shift + выделение мышью).
doubleClickZoom Handler Обработчик масштабирования по двойному клику.
dragging Handler Обработчик перетаскивания карты (мышью и тачем).
keyboard Handler Обработчик навигации с помощью клавиатуры.
scrollWheelZoom Handler Обработчик масштабирования по скроллу.
tap Handler Обработчики мобильных тач хаков (быстрый тап и удерживание тача).
touchZoom Handler Обработчик масштабирования с помощью тача.
geoclicker Handler Обработчик геокодирования по клику.
projectDetector Handler Обработчик определения проекта 2ГИС.
zoomControl Control.Zoom Элемент управления масштабом.
fullscreenControl Control.FullScreen Кнопка включения полноэкранного режима.
rulerControl Control.Ruler Кнопка включения линейки.
trafficControl Control.Traffic Кнопка включения слоя с пробками.
baseLayer TileLayer Слой с тайлами 2ГИС, автоматически добавляемый на карту при её создании.

Панели карты

Панели - это DOM-элементы, которые используются для контроля очередности отображения слоев на карте. Получить панели можно с помощью методов map.getPane или map.getPanes. Новые панели можно создать с помощью метода map.createPane. У каждой карты по умолчанию есть следующий набор панелей, которые отличаются только zIndex.

Панель Тип Z-index Описание
mapPane HTMLElement 'auto' Панель, содержащая в себе все другие панели
tilePane HTMLElement 2 Панель для тайловых слоев
overlayPane HTMLElement 4 Панель для векторных слоев, таких как ломаные и многоугольники.
shadowPane HTMLElement 5 Панель для наложения теней (например, тени от маркеров).
markerPane HTMLElement 6 Панель маркеров.
popupPane HTMLElement 7 Панель попапов.

Опции определения местоположения

Некоторые методы геолокации объекта Map принимают параметр options. Это обычный JavaScript-объект со следующими опциональными компонентами:

Опция Тип По умолчанию Описание
watch Boolean false Если true, то местоположение будет отслеживаться постоянно (вместо определения местоположения один раз) используя W3C метод watchPosition. Можно остановить отслеживание, вызвав метод map.stopLocate().
setView Boolean false Если true, то автоматически устанавливает область просмотра карты в точку местоположения пользователя, в соответствии с точностью определения. В случае ошибки поиска, отображаетcя карта мира.
maxZoom Number Infinity Задает максимальный уровень масштабирования при автоматическом перемещения карты, когда включена опция setView.
timeout Number 10000 Количество миллисекунд ожидания ответа геолокации, перед тем как произойдет вызов события locationerror.
maximumAge Number 0 Максимальное время жизни данных о местоположении. Если с момента последнего поиска прошло меньше времени, чем указанно в данной опции, locate вернет данные из кэша.
enableHighAccuracy Boolean false Включает функцию повышения точности, см. описание в W3C спецификации.

Опции масштабирования

Некоторые методы объекта Map, которые изменяют масштаб, принимают параметр options. Это обычный JavaScript-объект со следующими необязательными компонентами:

Опция Тип По умолчанию Описание
animate Boolean Если не указано, то масштабирование будет анимироваться, если точка, относительно которой происходит масштабирование, находится в пределах просматриваемой области карты. Если true, всегда будет производиться попытка анимировать масштабирование, вне зависимости от положения источника масштабирования. Если false, то масштабирование будет происходить без анимации.

Опции перемещения

Некоторые методы объекта Map, которые меняют центр карты, принимают параметр options. Это обычный JavaScript-объект со следующими необязательными компонентами:

Опция Тип По умолчанию Описание
animate Boolean Если true, то перемещения будут анимироваться всегда. Если false, перемещения не будут анимироваться при сбросе карты в исходное положение, если она была передвинута более чем на один экран; перемещения также не будут анимироваться при установке нового смещения панели карты (за исключением использования метода panBy).
duration Number 0.25 Продолжительность анимации перемещения.
easeLinearity Number 0.25 Коэффициент кривизны затухания анимации (третий параметр Кривой Безье). Значение 1.0 означает линейную анимацию; чем меньше значение, тем больше кривизна.
noMoveStart Boolean false Если true, тогда при перемещении не будет инициироваться событие movestart (используется внутри библиотеки при реализации инерции перемещения).

Дополнительные опции масштабирования/перемещения

Дополнительные опции наследуются от Zoom options и Pan options

Опции соответствия границам

Опция Тип По умолчанию Описание
paddingTopLeft Point [0, 0] Задает отступ от верхнего левого угла контейнера карты, который не должен учитываться при подстройке центра и масштаба. Удобно использовать, например, если на карте приложения имеется левая панель и вы не хотите, чтобы при масштабировании под ней скрывались объекты.
paddingBottomRight Point [0, 0] То же самое, но для нижнего правого угла карты.
padding Point [0, 0] Эквивалентно установке и верхнего левого, и нижнего правого отступов в одинаковые значения.
maxZoom Number null Максимальный возможный уровень зума.