2gis-maps
Version:
Interactive 2GIS maps API, based on Leaflet
1,102 lines (1,084 loc) • 108 kB
HTML
<h2 id="карта">Карта</h2><p>В данном разделе описывается основной класс API карт, который используется для создания и управления картой на странице.</p>
<p><dl class="api-incut"><ul class="page-contents"><li><a href="#dgmap">DG.Map</a><ul><li><a href="#пример-использования">Пример использования</a></li><li><a href="#создание">Создание</a></li><li><a href="#опции">Опции</a><ul><li><a href="#опции-элементов управления">Опции элементов управления</a></li><li><a href="#опции-взаимодействия">Опции взаимодействия</a></li><li><a href="#опции-состояния карты">Опции состояния карты</a></li><li><a href="#опции-анимации">Опции анимации</a></li><li><a href="#опции-инерции при перемещении">Опции инерции при перемещении</a></li><li><a href="#опции-навигации клавишами">Опции навигации клавишами</a></li><li><a href="#опции-колеса мыши">Опции колеса мыши</a></li><li><a href="#опции-взаимодействия на тач-устройствах">Опции взаимодействия на тач-устройствах</a></li></ul></li><li><a href="#события">События</a><ul><li><a href="#события-слоев">События слоев</a></li><li><a href="#события-изменения состояния карты">События изменения состояния карты</a></li><li><a href="#события-попапа">События попапа</a></li><li><a href="#события-взаимодействий">События взаимодействий</a></li><li><a href="#события-анимаций">События анимаций</a></li><li><a href="#события-местоположения">События местоположения</a></li></ul></li><li><a href="#методы">Методы</a><ul><li><a href="#методы-слоев и элементов управления">Методы слоев и элементов управления</a></li><li><a href="#методы-модификации состояния карты">Методы модификации состояния карты</a></li><li><a href="#другие-методы">Другие методы</a></li><li><a href="#методы-получения состояния карты">Методы получения состояния карты</a></li><li><a href="#методы-преобразования">Методы преобразования</a></li><li><a href="#методы-геолокации">Методы геолокации</a></li><li><a href="#методы,-унаследованные от evented">Методы, унаследованные от Evented</a></li></ul></li><li><a href="#свойства">Свойства</a><ul><li><a href="#обработчики">Обработчики</a></li></ul></li><li><a href="#панели-карты">Панели карты</a></li><li><a href="#опции-определения местоположения">Опции определения местоположения</a></li><li><a href="#опции-масштабирования">Опции масштабирования</a></li><li><a href="#опции-перемещения">Опции перемещения</a></li><li><a href="#дополнительные-опции масштабирования/перемещения">Дополнительные опции масштабирования/перемещения</a></li><li><a href="#опции-соответствия границам">Опции соответствия границам</a></li></ul></dl></p>
<h3 id="dgmap">DG.Map</h3><h4 id="пример-использования">Пример использования</h4><p>Инициализация карты в элементе <code>div</code> с id "map", с указанием координат центра и коэффициента
масштабирования:</p>
<pre><code>var map = DG.map('map', {
center: [54.98, 82.89],
zoom: 13
});
</code></pre><h4 id="создание">Создание</h4><table>
<thead>
<tr>
<th>Конструктор</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="map-l-map">
<td><code><b>DG.map</b>(
<nobr><String>> <i>id</i>,</nobr>
<nobr><Map options>> <i>options?</i> )</nobr>
</code></td>
<td>Инициализирует карту в DOM-узле <code><div></code> элемента с указанным id с необязательным
набором опций, которые описаны ниже.</td>
</tr>
<tr>
<td><code><b>DG.map</b>(
<nobr><HTMLElement> <i>el</i>,</nobr>
<nobr><Map options> <i>options?</i> )</nobr>
</code></td>
<td>Инициализирует карту в переданном DOM-узле <code><div></code> элемента с необязательным набором
опций, которые описаны ниже.</td>
</tr>
</tbody>
</table>
<h4 id="опции">Опции</h4><table>
<thead>
<tr>
<th>Опция</th>
<th>Тип</th>
<th>По умолчанию</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="map-prefercanvas">
<td><code><b>preferCanvas</b></code></td>
<td><code>Boolean </code></td>
<td><code>false</code></td>
<td>Должны ли экземпляры <a href="/doc/maps/ru/manual/vector-layers#dgpath"><code>Path</code></a>
отрисовываться на <a href="/doc/maps/ru/manual/vector-layers#dgcanvas">
<code>Canvas</code></a>. По умолчанию все экземпляры <code>Path</code>
отрисовываются с помощью <a href="/doc/maps/ru/manual/vector-layers#dgsvg"><code>SVG</code></a> рендерера.
</td>
</tr>
</tbody>
</table>
<h5 id="опции-элементов управления">Опции элементов управления</h5><table>
<thead>
<tr>
<th>Опция</th>
<th>Тип</th>
<th>По умолчанию</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr>
<td><code><b>zoomControl</b></code></td>
<td><code>Boolean</code></td>
<td><code>true</code></td>
<td>Добавлен ли <a href="/doc/maps/ru/manual/controls#dgcontrol.zoom">элемент управления масштабом</a>
на карту.
</td>
</tr>
<tr>
<td><code><b>fullscreenControl</b></code></td>
<td><code>Boolean</code></td>
<td><code>true</code></td>
<td>Добавлена ли <a href="/doc/maps/ru/manual/controls#dgcontrol.fullscreen">
кнопка включения полноэкранного режима</a> на карту.
</td>
</tr>
</tbody>
</table>
<h5 id="опции-взаимодействия">Опции взаимодействия</h5><table>
<thead>
<tr>
<th>Опция</th>
<th>Тип</th>
<th>По умолчанию</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr>
<td><code><b>closePopupOnClick</b></code></td>
<td><code>Boolean</code></td>
<td><code>true</code></td>
<td>Закрывать ли попапы при клике в карту.</td>
</tr>
<tr id="map-zoomsnap">
<td><code><b>zoomSnap</b></code></td>
<td><code>Number </code></td>
<td><code>1</code></td>
<td>Всегда приводит уровень масштабирования к значению кратному данному параметру. Приведение
происходит сразу после выполнения <a href="#map-fitbounds"><code>fitBounds()</code></a>
или изменения масштаба "щипком" (pinch-zoom). По умолчанию уровень масштабирования
приводится к ближайшему целому числу; меньшие значения (например, <code>0.5</code> или
<code>0.1</code>) позволяют более точно управлять приведением масшатаба. Значение <code>0</code>
говорит о том, что уровень масштабирования не будет приводиться после <code>fitBounds</code>
или изменения масштаба "щипком".
</td>
</tr>
<tr id="map-zoomdelta">
<td><code><b>zoomDelta</b></code></td>
<td><code>Number </code></td>
<td><code>1</code></td>
<td>Управляет тем, насколько изменится уровень масштаба после
<a href="#map-zoomin"><code>zoomIn()</code></a>,
<a href="#map-zoomout"><code>zoomOut()</code></a>, нажатия <code>+</code> или
<code>-</code> на клавиатуре или используя
<a href="/doc/maps/ru/manual/controls#dgcontrol.zoom">элемент управления масштабом</a>.
Значения меньшие чем <code>1</code> (например, <code>0.5</code>) предоставляют большую точность.
</td>
</tr>
<tr id="map-trackresize">
<td><code><b>trackResize</b></code></td>
<td><code>Boolean </code></td>
<td><code>true</code></td>
<td>Обновляется ли карта при изменении размера окна браузера.</td>
</tr>
<tr id="map-boxzoom">
<td><code><b>boxZoom</b></code></td>
<td><code>Boolean </code></td>
<td><code>true</code></td>
<td>Может ли масштаб карты быть изменен с помощью box-масштабирования (shift + выделение мышью).</td>
</tr>
<tr id="map-doubleclickzoom">
<td><code><b>doubleClickZoom</b></code></td>
<td><code>Boolean|String </code></td>
<td><code>true</code></td>
<td>Разрешено ли увеличивать масштаб карты двойным кликом мыши (удерживание Shift позволяет уменьшать
масштаб). Если передано значение <code>center</code>, карта всегда масштабируется отностиельно центра
просматриваемой области, независимо от положения курсора.
</td>
</tr>
<tr id="map-dragging">
<td><code><b>dragging</b></code></td>
<td><code>Boolean </code></td>
<td><code>true</code></td>
<td>Разрешено ли перетаскивать карту мышью или тачем.</td>
</tr>
<tr id="map-geoclicker">
<td><code><b>geoclicker</b></code></td>
<td><code>Boolean | Object</code></td>
<td><code>false</code></td>
<td>Включено ли геокодирование по клику (геокликер). Если <code>false</code>, тогда при клике в любой объект
карты (улицы, дома, остановки) не будет отображаться информация об этом объекте. Если
в качестве параметра передан объект с опциями, тогда геокликер будет включен. Опции
<code>showPhotos</code> и <code>showBooklet</code> позволяют отключить в балуне организации ссылки на буклеты
и фотографии.
</td>
</tr>
<tr id="map-projectdetector">
<td><code><b>projectDetector</b></code></td>
<td><code>Boolean</code></td>
<td><code>true</code></td>
<td>Включает или отключает механизм определения проектов 2ГИС. Проект — это агломерация,
включающая крупный город и ближайшие населённые пункты.
</td>
</tr>
<tr id="map-tilescheck">
<td><code><b>tilesCheck</b></code></td>
<td><code>Boolean </code></td>
<td><code>true</code></td>
<td>Возвращается ли карта к предыдущему состоянию, если на целевом уровне
масштабирования нет тайлов.
</td>
</tr>
<tr id="map-museum">
<td><code><b>museum</b></code></td>
<td><code>Boolean</code></td>
<td><code>true</code></td>
<td>Будет ли отображаться сообщение о том, что браузер не поддерживается.</td>
</tr>
</tbody>
</table>
<h5 id="опции-состояния карты">Опции состояния карты</h5><table>
<thead>
<tr>
<th>Опция</th>
<th>Тип</th>
<th>По умолчанию</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="map-center">
<td><code><b>center</b></code></td>
<td><code>LatLng </code></td>
<td><code>undefined</code></td>
<td>Начальный географический центр карты.</td>
</tr>
<tr id="map-zoom">
<td><code><b>zoom</b></code></td>
<td><code>Number </code></td>
<td><code>undefined</code></td>
<td>Начальный уровень масштаба.</td>
</tr>
<tr id="map-minzoom">
<td><code><b>minZoom</b></code></td>
<td><code>Number </code></td>
<td><code>undefined</code></td>
<td>Минимальный уровень масштабируемости карты. Переопределяет свойство <code>minZoom</code>
используемых слоев.
</td>
</tr>
<tr id="map-maxzoom">
<td><code><b>maxZoom</b></code></td>
<td><code>Number </code></td>
<td><code>undefined</code></td>
<td>Максимальный уровень масштабируемости карты. Переопределяет свойство <code>maxZoom</code>
используемых слоев.
</td>
</tr>
<tr id="map-layers">
<td><code><b>layers</b></code></td>
<td><code>Layer[] </code></td>
<td><code>[]</code></td>
<td>Массив слоев, которые изначально будут добавлены на карту.</td>
</tr>
<tr id="map-maxbounds">
<td><code><b>maxBounds</b></code></td>
<td><code>LatLngBounds </code></td>
<td><code>null</code></td>
<td>Если свойство установлено, карта ограничивает область просмотра согласно заданным географическим
границам, "отбрасывая" пользователя назад, если он пытается выйти за пределы установленных границ,
а также не позволяет уменьшить масштаб так, чтобы можно было просмотреть неразрешенные участки
карты. Для установки ограничения динамически, используйте метод
<a href="#map-setmaxbounds">setMaxBounds</a>.
</td>
</tr>
<tr id="map-renderer">
<td><code><b>renderer</b></code></td>
<td><code>Renderer </code></td>
<td><code>*</code></td>
<td>Метод, который используется для отрисовки векторных слоев на карте.
По умолчанию устанавливается
<a href="/doc/maps/ru/manual/vector-layers#dgsvg"><code>DG.SVG</code></a> или
<a href="/doc/maps/ru/manual/vector-layers#dgcanvas"><code>DG.Canvas</code></a>
в зависимости от поддержки браузером.
</td>
</tr>
<tr id="map-poi">
<td><code><b>poi</b></code></td>
<td><code>Boolean </code></td>
<td><code>true</code></td>
<td>Отображать ли точки интереса на карте.</td>
</tr>
<tr id="map-currentlang">
<td><code><b>currentLang</b></code></td>
<td><code>string</code></td>
<td><code>''</code></td>
<td>Язык пользовательского интерфейса карты (см. <a href="/doc/maps/ru/manual/dg-locale/">Локализация</a>)</td>
</tr>
</tbody>
</table>
<h5 id="опции-анимации">Опции анимации</h5><table>
<thead>
<tr>
<th>Опция</th>
<th>Тип</th>
<th>По умолчанию</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="map-fadeanimation">
<td><code><b>fadeAnimation</b></code></td>
<td><code>Boolean </code></td>
<td><code>true</code></td>
<td>Включена ли анимация затухания тайлов. По умолчанию включена во всех браузерах
поддерживающих CSS3 transitions, кроме Android.
</td>
</tr>
<tr id="map-markerzoomanimation">
<td><code><b>markerZoomAnimation</b></code></td>
<td><code>Boolean </code></td>
<td><code>true</code></td>
<td>Включена ли анимация масштабирования маркеров при анимации масштабирования карты,
если выключена, тогда маркеры пропадают во время анимации карты. По умолчанию включена
во всех браузерах поддерживающих CSS3 transitions, кроме Android.
</td>
</tr>
<tr id="map-transform3dlimit">
<td><code><b>transform3DLimit</b></code></td>
<td><code>Number </code></td>
<td><code>2^23</code></td>
<td>Определяет максимальное значение CSS translation transform. Значение по умолчанию
изменять не стоит, до тех пор пока браузер не начинает позиционировать слои в
неправильном месте после большего смещения в результате <code>panBy</code>.
</td>
</tr>
<tr id="map-zoomanimation">
<td><code><b>zoomAnimation</b></code></td>
<td><code>Boolean </code></td>
<td><code>true</code></td>
<td>Включена ли анимация масштабирования тайлов. По умолчанию включена во всех браузерах
поддерживающих CSS3 transitions, кроме Android.
</td>
</tr>
<tr id="map-zoomanimationthreshold">
<td><code><b>zoomAnimationThreshold</b></code></td>
<td><code>Number </code></td>
<td><code>4</code></td>
<td>Порог, начиная с которого будет отключаться анимация масштабирования.</td>
</tr>
</tbody>
</table>
<h5 id="опции-инерции при перемещении">Опции инерции при перемещении</h5><table>
<thead>
<tr>
<th>Опция</th>
<th>Тип</th>
<th>По умолчанию</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="map-inertia">
<td><code><b>inertia</b></code></td>
<td><code>Boolean </code></td>
<td><code>*</code></td>
<td>
Если опция включена, тогда создается эффект инерции при движении карты — при
перетаскивании карта продолжает движение в том же направлении какое-то время. Полезно
для тач-устройств. По умолчанию, эта опция включена везде, за исключением старых
Android-устройств.
</td>
</tr>
<tr id="map-inertiadeceleration">
<td><code><b>inertiaDeceleration</b></code></td>
<td><code>Number </code></td>
<td><code>3000</code></td>
<td>Величина, на которую замедляется движение карты, указывается в пикселях/секунду<sup>2</sup>.</td>
</tr>
<tr id="map-inertiamaxspeed">
<td><code><b>inertiaMaxSpeed</b></code></td>
<td><code>Number </code></td>
<td><code>Infinity</code></td>
<td>Максимальная скорость инерционного движения, указывается в пикселях/секунду.</td>
</tr>
<tr id="map-easelinearity">
<td><code><b>easeLinearity</b></code></td>
<td><code>Number </code></td>
<td><code>0.2</code></td>
<td></td>
</tr>
<tr id="map-worldcopyjump">
<td><code><b>worldCopyJump</b></code></td>
<td><code>Boolean </code></td>
<td><code>false</code></td>
<td>Опция позволяет зациклить просмотр карты с сохранением слоев и маркеров на ней.</td>
</tr>
<tr id="map-maxboundsviscosity">
<td><code><b>maxBoundsViscosity</b></code></td>
<td><code>Number </code></td>
<td><code>0.0</code></td>
<td>Если установлено свойство <code>maxBounds</code>, эта опция позволяет контролировать
"прочность" границ при перемещении карты мышью или тачем. Значение по умолчанию
<code>0.0</code> — позволяет пользователю перемещать карту за ее границы с нормальной
скоростью, чем выше значение, тем меньше будет скорость при пермещении за пределы границы карты.
При значении <code>0.1</code>, границы становятся полностью "непроницаемы", предотвращая любое
перемещение карты вне их пределов.
</td>
</tr>
</tbody>
</table>
<h5 id="опции-навигации клавишами">Опции навигации клавишами</h5><table>
<thead>
<tr>
<th>Опция</th>
<th>Тип</th>
<th>По умолчанию</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="map-keyboard">
<td><code><b>keyboard</b></code></td>
<td><code>Boolean </code></td>
<td><code>true</code></td>
<td>Устанавливает фокус на карту и позволяет перемещаться по карте с помощью
кнопок <code>+</code>/<code>-</code> и стрелок клавиатуры.
</td>
</tr>
<tr id="map-keyboardpandelta">
<td><code><b>keyboardPanDelta</b></code></td>
<td><code>Number </code></td>
<td><code>80</code></td>
<td>Указывает, на сколько пикселей сдвинется карта, при нажатии стрелки на клавиатуре.</td>
</tr>
</tbody>
</table>
<h5 id="опции-колеса мыши">Опции колеса мыши</h5><table>
<thead>
<tr>
<th>Опция</th>
<th>Тип</th>
<th>По умолчанию</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="map-scrollwheelzoom">
<td><code><b>scrollWheelZoom</b></code></td>
<td><code>Boolean | String </code></td>
<td><code>true</code></td>
<td>Можно ли изменять масштаб карты с помощью колеса мыши. Если в качестве параметра
передано значение <code>'center'</code>, изменение масштаба будет происходить
относительно центра просматриваемой области, вне зависимости от позиции указателя
мыши.
</td>
</tr>
<tr id="map-wheeldebouncetime">
<td><code><b>wheelDebounceTime</b></code></td>
<td><code>Number </code></td>
<td><code>40</code></td>
<td>Ограничевает частоту, с которой прокрутка колеса мыши будет отправлять событие на изменение
масштаба (в милисекундах). По умолчанию, пользователь не может изменять масштаб карты
более чем один раз в 40 мс.
</td>
</tr>
<tr id="map-wheelpxperzoomlevel">
<td><code><b>wheelPxPerZoomLevel</b></code></td>
<td><code>Number </code></td>
<td><code>50</code></td>
<td>Какое количество пикселей прокрутки (можно определить через
<a href="/doc/maps/ru/manual/dom-utils#domevent-getwheeldelta">DG.DomEvent.getWheelDelta</a>)
означает изменение на один уровень масштабирования. Меньшие значения
будут изменять масштаб карты, с помощью колеса, быстрей (и наоборот).
</td>
</tr>
</tbody>
</table>
<h5 id="опции-взаимодействия на тач-устройствах">Опции взаимодействия на тач-устройствах</h5><table>
<thead>
<tr>
<th>Опция</th>
<th>Тип</th>
<th>По умолчанию</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="map-tap">
<td><code><b>tap</b></code></td>
<td><code>Boolean </code></td>
<td><code>true</code></td>
<td>Активирует поддержку мгновенных тапов (отключение задержки в 200мс в iOS/Android)
и долгих тапов (в этом случае посылается событие <code>contextmenu</code>).
</td>
</tr>
<tr id="map-taptolerance">
<td><code><b>tapTolerance</b></code></td>
<td><code>Number </code></td>
<td><code>15</code></td>
<td>Максимальное число пикселей, на которое пользователь может сдвинуть свой палец во
время тача, для того, чтобы это событие было воспринято как тап.
</td>
</tr>
<tr id="map-touchzoom">
<td><code><b>touchZoom</b></code></td>
<td><code>Boolean </code></td>
<td><code>*</code></td>
<td>Разрешено ли изменять масштаб карты двумя пальцами на тач-устройствах.
Если передано значение <code>'center'</code>, карта всегда будет масштабироваться
относительно центра просматриваемой области, независимо от того, где на карте произошли
события тача. Активируется в веб-браузерах с тач поддержкой, за исключением устройств со
старой версией Android.
</td>
</tr>
<tr id="map-bounceatzoomlimits">
<td><code><b>bounceAtZoomLimits</b></code></td>
<td><code>Boolean </code></td>
<td><code>false</code></td>
<td>Если <code>true</code>, карта будет возвращаться к допустимому масштабу,
когда пользователь будет пытаться выйти за предельный максимальный/минимальный
масштаб карты с помощью масштабирования пальцами.
</td>
</tr>
</tbody>
</table>
<h4 id="события">События</h4><h5 id="события-слоев">События слоев</h5><table>
<thead>
<tr>
<th>Событие</th>
<th>Данные</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="map-layeradd">
<td><code><b>layeradd</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#layerevent">LayerEvent</a></code></td>
<td>Вызывается при добавлении нового слоя на карту.</td>
</tr>
<tr id="map-layerremove">
<td><code><b>layerremove</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#layerevent">LayerEvent</a></code></td>
<td>Вызывается при удалении слоя с карты.</td>
</tr>
</tbody>
</table>
<h5 id="события-изменения состояния карты">События изменения состояния карты</h5><table>
<thead>
<tr>
<th>Событие</th>
<th>Данные</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="map-zoomlevelschange">
<td><code><b>zoomlevelschange</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#event">Event</a></code></td>
<td>Вызывается, если при добавлении или удалении слоя карты изменилось
количество доступных уровней масштабирования.
</td>
</tr>
<tr id="map-resize">
<td><code><b>resize</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#event">Event</a></code></td>
<td>Вызывается при изменении размера карты.</td>
</tr>
<tr id="map-unload">
<td><code><b>unload</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#event">Event</a></code></td>
<td>Вызывается при удалении карты c помощью метода <a href="#map-remove">remove</a>.</td>
</tr>
<tr id="map-viewreset">
<td><code><b>viewreset</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#event">Event</a></code></td>
<td>Вызывается, когда нужно перерисовать содержимое карты (обычно при
изменении масштаба или загрузке). Полезно при создании дополнительных слоев.
</td>
</tr>
<tr id="map-load">
<td><code><b>load</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#event">Event</a></code></td>
<td>Вызывается при инициализации карты (при первой установке ее центра и масштаба).</td>
</tr>
<tr id="map-zoomstart">
<td><code><b>zoomstart</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#event">Event</a></code></td>
<td>Вызывается в начале изменения масштаба (перед анимацией изменения масштаба).</td>
</tr>
<tr id="map-movestart">
<td><code><b>movestart</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#event">Event</a></code></td>
<td>Вызывается в начале изменения области просмотра карты (например, когда пользователь
начинает перетаскивать карту).
</td>
</tr>
<tr id="map-zoom">
<td><code><b>zoom</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#event">Event</a></code></td>
<td>Вызывается периодически, в течении любого изменения уровня масштаба,
включая анимации перелета.
</td>
</tr>
<tr id="map-move">
<td><code><b>move</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#event">Event</a></code></td>
<td>Вызывается периодически, во время любого передвижения карты, включая
анимации перелета.
</td>
</tr>
<tr id="map-zoomend">
<td><code><b>zoomend</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#event">Event</a></code></td>
<td>Вызывается после изменения масштаба и анимаций.</td>
</tr>
<tr id="map-moveend">
<td><code><b>moveend</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#event">Event</a></code></td>
<td>Вызывается при окончании передвижения карты (например, когда пользователь
прекращает перетаскивать карту).
</td>
</tr>
<tr id="map-projectchange">
<td><code><b>projectchange</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#projectevent">ProjectEvent</a></code></td>
<td>Вызывается при перемещении пользователя из одного
<a href="#map-projectdetector">проекта 2ГИС</a> в другой.
</td>
</tr>
<tr id="map-projectleave">
<td><code><b>projectleave</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#projectevent">ProjectEvent</a></code></td>
<td>Вызывается при выходе пользователя из текущего
<a href="#map-projectdetector">проекта 2ГИС</a>.
</td>
</tr>
<tr id="map-entranceshow">
<td><code><b>entranceshow</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#event">Event</a></code></td>
<td>Вызывается при отображении входа в здание.</td>
</tr>
<tr id="map-entrancehide">
<td><code><b>entrancehide</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#event">Event</a></code></td>
<td>Вызывается при скрытии входа в здание.</td>
</tr>
<tr id="map-poihover">
<td><code><b>poihover</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#poievent">MetaEvent</a></code></td>
<td>Вызывается при наведении курсора мыши на точку интереса.</td>
</tr>
<tr id="map-poileave">
<td><code><b>poileave</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#poievent">MetaEvent</a></code></td>
<td>Вызывается, когда курсор мыши покидает область точки интереса.</td>
</tr>
<tr id="map-langchange">
<td><code><b>langchange</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#langevent">LangEvent</a></code></td>
<td>Вызывается при изменении языка карты.</td>
</tr>
</tbody>
</table>
<h5 id="события-попапа">События попапа</h5><table>
<thead>
<tr>
<th>Событие</th>
<th>Данные</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="map-popupopen">
<td><code><b>popupopen</b></code></td>
<td><code>PopupEvent</code></td>
<td>Вызывается при открытии попапа.</td>
</tr>
<tr id="map-popupclose">
<td><code><b>popupclose</b></code></td>
<td><code>PopupEvent</code></td>
<td>Вызывается при закрытии попапа.</td>
</tr>
<tr id="map-autopanstart">
<td><code><b>autopanstart</b></code></td>
<td><code></code></td>
<td>Вызывается, когда карта начинает двигаться после появления попапа.</td>
</tr>
</tbody>
</table>
<h5 id="события-взаимодействий">События взаимодействий</h5><table>
<thead>
<tr>
<th>События</th>
<th>Данные</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="map-click">
<td><code><b>click</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#mouseevent">MouseEvent</a></code></td>
<td>Вызывается при клике (или тапе) по карте.</td>
</tr>
<tr id="map-dblclick">
<td><code><b>dblclick</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#mouseevent">MouseEvent</a></code></td>
<td>Вызывается при двойном клике (или двойном тапе) по карте.</td>
</tr>
<tr id="map-mousedown">
<td><code><b>mousedown</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#mouseevent">MouseEvent</a></code></td>
<td>Вызывается при нажатии кнопки мыши над областью карты.</td>
</tr>
<tr id="map-mouseup">
<td><code><b>mouseup</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#mouseevent">MouseEvent</a></code></td>
<td>Вызывается, когда пользователь отпускает кнопку мыши над областью карты.</td>
</tr>
<tr id="map-mouseover">
<td><code><b>mouseover</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#mouseevent">MouseEvent</a></code></td>
<td>Вызывается при наведении курсора мыши на карту.</td>
</tr>
<tr id="map-mouseout">
<td><code><b>mouseout</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#mouseevent">MouseEvent</a></code></td>
<td>Вызывается, когда курсор мыши покидает область карты.</td>
</tr>
<tr id="map-mousemove">
<td><code><b>mousemove</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#mouseevent">MouseEvent</a></code></td>
<td>Вызывается, когда курсор мыши перемещается над картой.</td>
</tr>
<tr id="map-contextmenu">
<td><code><b>contextmenu</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#mouseevent">MouseEvent</a></code></td>
<td>Вызывается при нажатии правой кнопки мыши на карте, предотвращает появление
стандартного контекстного меню браузера, если на это событие подписаны обработчики.
Также вызывается на мобильных устройствах, когда пользователь удерживает тач
в течение секунды (долгое нажатие).
</td>
</tr>
<tr id="map-keypress">
<td><code><b>keypress</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#event">Event</a></code></td>
<td>Вызывается при нажатии клавиш на клавиатуре, когда карта находится в фокусе.</td>
</tr>
<tr id="map-preclick">
<td><code><b>preclick</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#mouseevent">MouseEvent</a></code></td>
<td>Вызывается перед кликом мыши на карте (полезно, если нужно выполнить
какое-либо действие до вызова обработчика клика).
</td>
</tr>
</tbody>
</table>
<h5 id="события-анимаций">События анимаций</h5><table>
<thead>
<tr>
<th>Событие</th>
<th>Данные</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="map-zoomanim">
<td><code><b>zoomanim</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#zoomanimevent">ZoomAnimEvent</a></code></td>
<td>Вызывается каждый кадр, в процессе изменения масштаба.</td>
</tr>
</tbody>
</table>
<h5 id="события-местоположения">События местоположения</h5><table>
<thead>
<tr>
<th>Событие</th>
<th>Данные</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="map-locationerror">
<td><code><b>locationerror</b></code></td>
<td><code><a href="#errorevent">ErrorEvent</a></code></td>
<td>Вызывается при возникновении ошибок, во время обнаружения местоположения пользователя
(при использовании метода <a href="#map-locate"><code>locate</code></a>).
</td>
</tr>
<tr id="map-locationfound">
<td><code><b>locationfound</b></code></td>
<td><code><a href="#locationevent">LocationEvent</a></code></td>
<td>Вызывается при успешном обнаружении местоположения пользователя (при использовании метода
<a href="#map-locate">locate</a>).
</td>
</tr>
</tbody>
</table>
<h4 id="методы">Методы</h4><table>
<thead>
<tr>
<th>Метод</th>
<th>Возвращает</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="map-getrenderer">
<td>
<code>
<b>getRenderer</b>(
<nobr><<a href="/doc/maps/ru/manual/vector-layers#dgpath">Path</a>> <i>layer</i>)</nobr>
</code>
</td>
<td><code><a href="/doc/maps/ru/manual/base-classes#dgrenderer">Renderer</a></code></td>
<td>Возвращает экземпляр <a href="/doc/maps/ru/manual/base-classes#dgrenderer"><code>Renderer</code></a>,
который должен быть использован для отрисовки необходимого
<a href="/doc/maps/ru/manual/vector-layers#dgpath"><code>векторного слоя</code></a>. Метод гарантирует, что опции
<a href="/doc/maps/ru/manual/base-classes#dgrenderer"><code>движка отображения</code></a> карты и векторных слоев
будут учитываться, и что необходимые движки отображения действительно существуют на карте.
</td>
</tr>
</tbody>
</table>
<h5 id="методы-слоев и элементов управления">Методы слоев и элементов управления</h5><table>
<thead>
<tr>
<th>Метод</th>
<th>Возвращает</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="map-addlayer">
<td>
<code>
<b>addLayer</b>(
<nobr><<a href="/doc/maps/ru/manual/base-classes#dglayer">Layer</a>> <i>layer</i>)</nobr>
</code>
</td>
<td><code>this</code></td>
<td>Добавляет слой на карту.</td>
</tr>
<tr id="map-removelayer">
<td>
<code>
<b>removeLayer</b>(
<nobr><<a href="/doc/maps/ru/manual/base-classes#dglayer">Layer</a>> <i>layer</i>)</nobr>
</code>
</td>
<td><code>this</code></td>
<td>Удаляет указанные слои с карты.</td>
</tr>
<tr id="map-haslayer">
<td>
<code>
<b>hasLayer</b>(
<nobr><<a href="/doc/maps/ru/manual/base-classes#dglayer">Layer</a>> <i>layer</i>)</nobr>
</code>
</td>
<td><code>Boolean</code></td>
<td>Возвращает <code>true</code>, если слой, на данный момент, добавлен на карту.</td>
</tr>
<tr id="map-eachlayer">
<td>
<code>
<b>eachLayer</b>(
<nobr><Function> <i>fn</i></nobr>,
<nobr><Object> <i>context?</i>)</nobr>
</code>
</td>
<td><code>this</code></td>
<td>
Выполняет заданную функцию для каждого слоя карты. Дополнительно можно
указать контекст выполнения функции.
<pre><code>map.eachLayer(function(layer){
layer.bindPopup('Hello');
});
</code></pre>
</td>
</tr>
<tr id="map-openpopup">
<td>
<code>
<b>openPopup</b>(
<nobr><<a href="/doc/maps/ru/manual/popup#dgpopup">Popup</a>> <i>popup</i>)</nobr>
</code>
</td>
<td><code>this</code></td>
<td>Показывает указанный попап, предварительно закрыв все открытые.</td>
</tr>
<tr id="map-openpopup">
<td>
<code>
<b>openPopup</b>(
<nobr><String|HTMLElement> <i>content</i></nobr>,
<nobr><<a href="/doc/maps/ru/manual/basic-types#dglatlng">LatLng</a>> <i>latlng</i></nobr>,
<nobr><<a href="/doc/maps/ru/manual/popup#popup-option">Popup options</a>> <i>options?</i>)</nobr>
</code>
</td>
<td><code>this</code></td>
<td>Создает попап с переданными опциями и содержимым и открывает его в определенной точке на карте.</td>
</tr>
<tr id="map-closepopup">
<td>
<code>
<b>closePopup</b>(<nobr><<a href="/doc/maps/ru/manual/popup#dgpopup">Popup</a>> <i>popup?</i>)</nobr>
</code>
</td>
<td><code>this</code></td>
<td>Закрывает попап, открытый с помощью <a href="/doc/maps/ru/manual/popup#map-openpopup">openPopup</a>.</td>
</tr>
<tr id="map-addcontrol">
<td>
<code>
<b>addControl</b>(
<nobr><<a href="/doc/maps/ru/manual/controls#dgcontrol">Control</a>> <i>control</i>)</nobr>
</code>
</td>
<td><code>this</code></td>
<td>Добавляет элемент управления на карту.</td>
</tr>
<tr id="map-removecontrol">
<td>
<code>
<b>removeControl</b>(
<nobr><<a href="/doc/maps/ru/manual/controls#dgcontrol">Control</a>> <i>control</i>)</nobr>
</code>
</td>
<td><code>this</code></td>
<td>Удаляет элемент управления с карты.</td>
</tr>
</tbody>
</table>
<h5 id="методы-модификации состояния карты">Методы модификации состояния карты</h5><table>
<thead>
<tr>
<th>Метод</th>
<th>Возвращает</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="map-setview">
<td>
<code>
<b>setView</b>(
<nobr><LatLnt> <i>center</i></nobr>,
<nobr><Number> <i>zoom</i></nobr>,
<nobr><Zoom/Pan options> <i>options?</i>)</nobr>
</code>
</td>
<td><code>this</code></td>
<td>Устанавливает область просмотра карты (географический центр и масштаб).
Дополнительно можно указать опции анимации.
</td>
</tr>
<tr id="map-setzoom">
<td>
<code>
<b>setZoom</b>(
<nobr><Number> <i>zoom</i></nobr>,
<nobr><Zoom/Pan options> <i>options</i>)</nobr>
</code>
</td>
<td><code>this</code></td>
<td>Устанавливает уровень масштаба.</td>
</tr>
<tr id="map-zoomin">
<td>
<code>
<b>zoomIn</b>(
<nobr><Number> <i>delta?</i></nobr>,
<nobr><<a href="#опции-масштабирования">Zoom options</a>> <i>options?</i>)</nobr>
</code>
</td>
<td><code>this</code></td>
<td>Увеличивает масштаб карты на величину <code>delta</code>
(по умолчанию <a href="#map-zoomdelta"><code>zoomDelta</code></a>).
</td>
</tr>
<tr id="map-zoomout">
<td>
<code>
<b>zoomOut</b>(
<nobr><Number> <i>delta?</i></nobr>,
<nobr><<a href="#опции-масштабирования">Zoom options</a>> <i>options?</i>)</nobr>
</code>
</td>
<td><code>this</code></td>
<td>Уменьшает масштаб карты на величину <code>delta</code>
(по умолчанию <a href="#map-zoomdelta"><code>zoomDelta</code></a>).
</td>
</tr>
<tr id="map-setzoomaround">
<td>
<code>
<b>setZoomAround</b>(
<nobr><<a href="/doc/maps/ru/manual/basic-types#dglatlng">LatLng</a>> <i>latlng</i></nobr>,
<nobr><Number> <i>zoom</i></nobr>,
<nobr><<a href="#опции-масштабирования">Zoom options</a>> <i>options</i>)</nobr>
</code>
</td>
<td><code>this</code></td>
<td>Масштабирует карту, сохраняя при этом указанную точку в неподвижном состоянии
(например, используется для масштабировании при помощи колесика мыши и двойного клика).
</td>
</tr>
<tr id="map-setzoomaround">
<td>
<code>
<b>setZoomAround</b>(
<nobr><<a href="/doc/maps/ru/manual/basic-types#dgpoint">Point</a>> <i>offset</i></nobr>,
<nobr><Number> <i>zoom</i></nobr>,
<nobr><<a href="#опции-масштабирования">Zoom options</a>> <i>options</i>)</nobr>
</code>
</td>
<td><code>this</code></td>
<td>Масштабирует карту, сохраняя при этом указанную точку в пикселях в неподвижном состоянии
(относительно левого верхнего угла).
</td>
</tr>
<tr id="map-fitbounds">
<td>
<code>
<b>fitBounds</b>(
<nobr><<a href="/doc/maps/ru/manual/basic-types#dglatlngbounds">LatLngBounds</a>> <i>bounds</i></nobr>,
<nobr><<a href="#опции-соответствия-границам">fitBounds options</a>> <i>options</i>)</nobr>
</code>
</td>
<td><code>this</code></td>
<td>Устанавливает область просмотра карты так, чтобы она содержала заданные границы,
на максимально возможном уровне масштаба.
</td>
</tr>
<tr id="map-fitworld">
<td>
<code>
<b>fitWorld</b>(
<nobr><<a href="#опции-соответствия-границам">fitBounds options</a>> <i>options?</i>)</nobr>
</code>
</td>
<td><code>this</code></td>
<td>Устанавливает область просмотра карты так, чтобы та отображала весь мир,
на максимально возможном уровне масштаба.
</td>
</tr>
<tr id="map-panto">
<td>
<code>
<b>panTo</b>(
<nobr><<a href="/doc/maps/ru/manual/basic-types#dglatlng">LatLng</a>> <i>latlng</i></nobr>,
<nobr><<a href="#опции-перемещения">Pan options</a>> <i>options?</i>)</nobr>
</code>
</td>
<td><code>this</code></td>
<td>Передвигает карту к указанному центру.
</td>
</tr>
<tr id="map-panby">
<td>
<code>
<b>panBy</b>(
<nobr><<a href="/doc/maps/ru/manual/basic-types#dgpoint">Point</a>> <i>offset</i>)</nobr>
</code>
</td>
<td><code>this</code></td>
<td>Перемещает карту на заданное количество пикселей (анимировано).</td>
</tr>
<tr id="map-setmaxbounds">
<td>
<code>
<b>setMaxBounds</b>(
<nobr><<a href="/doc/maps/ru/manual/basic-types#dgbounds">Bounds</a>> <i>bounds</i>)</nobr>
</code>
</td>
<td><code>this</code></td>
<td>Ограничивает область просмотра карты заданными границами (см. опцию
<a href="#map-maxbounds">maxBounds</a>).
</td>
</tr>
<tr id="map-setminzoom">
<td><code><b>setMinZoom</b>(<nobr><Number> <i>zoom</i>)</nobr></code></td>
<td><code>this</code></td>
<td>Устанавливает нижний предел уровней масштабирования
(см. опцию <a href="#map-minzoom">minZoom</a>).
</td>
</tr>
<tr id="map-setmaxzoom">
<td><code><b>setMaxZoom</b>(<nobr><Number> <i>zoom</i>)</nobr></code></td>
<td><code>this</code></td>
<td>Устанавливает верхний предел уровней масштабирования
(см. опцию <a href="#map-minzoom">maxZoom</a>).
</td>
</tr>
<tr id="map-paninsidebounds">
<td>
<code>
<b>panInsideBounds</b>(
<nobr><<a href="/doc/maps/ru/manual/basic-types#dglatlngbounds">LatLngBounds</a>> <i>bounds</i></nobr>,
<nobr><<a href="#опции-перемещения">Pan options</a>> <i>options?</i>)</nobr>
</code>
</td>
<td><code>this</code></td>
<td>Перемещает карту в ближайшую область просмотра, лежащую в пределах заданных границ.
Можно контролировать анимацию, передав объект опций вторым параметром.
</td>
</tr>
<tr id="map-invalidatesize">
<td><code><b>invalidateSize</b>(<nobr><Zoom/Pan options> <i>options</i>)</nobr></code></td>
<td><code>this</code></td>
<td>Обновляет карту при изменении размера ее контейнера. Этот метод необходимо вызывать,
если размер контейнера изменяется динамически (по умолчанию, также будет происходить
анимация переимещения). Если параметр <code>options.pan</code> установлен в <code>false</code>,
то карта не будет перемещаться. Если параметр <code>options.debounceMoveend</code> установлен в
<code>true</code>, то событие <code>moveend</code> не будет вызываться часто, даже
есл