Map

Расширяет IDomEventEmitter.

Класс для создания и управления картой.

Конструктор | Поля | События | Методы

Конструктор

Создает экземпляр карты.

Параметры:

Параметр Значение по умолчанию Описание
element *

Тип: Object|String

Ссылка на HTML-элемент, в котором размещается карта, или идентификатор этого HTML-элемента.

state *

Тип: Object

Параметры карты.

state.behaviors

Тип: String[]

Включенные поведения карты. По умолчанию включаются: перетаскивание карты, масштабирование карты мультисенсорным касанием и двойным кликом на устройствах с сенсорным экраном; перетаскивание карты мышью, масштабирование двойным щелчком и выделением области правой кнопкой мыши на остальных устройствах. Можно указывать любые ключи, которые поддерживаются map.behavior.Manager.

state.bounds

Тип: Number[][]

Геокоординаты начальной области показа карты. При инициализации карты может быть задана либо пара state.zoom-state.center, либо данная область. Если совместно со state.bounds будут заданы параметры state.zoom, state.center, они будут проигнорированы.

state.center

Тип: Number[]

Геокоординаты центра карты. Должны быть заданы совместно со state.zoom.

state.type 'yandex#map'

Тип: String|MapType

Тип карты. Может быть ключом или экземпляром класса MapType. Список доступных ключей:
  • 'yandex#map' - тип карты "схема";
  • 'yandex#satellite' - тип карты "спутник";
  • 'yandex#hybrid' - тип карты "гибрид".
state.zoom

Тип: Number

Коэффициент масштабирования карты. Должен быть задан совместно со state.center.

options

Тип: Object

Опции карты. Через опции карты можно задавать настройки как самой карты, так и добавленных на неё объектов: Опции, которые трактует непосредственно сама карта, перечислены ниже.
options.adjustZoomOnTypeChange false

Тип: Number

Выбранного типа карты с текущим кооэффициентом масштабирования тайлов может не оказаться. При значении true кооэффициент масштабирования будет изменен на ближаший допустимый.

options.autoFitToViewport 'ifNull'

Тип: String

Автоматическое слежение за контейнером карты. По умолчанию карта перестроится автоматически в случае, когда она инициализируется из скрытого контейнера, либо мы программно поменяли его размеры, иначе необходимо вызвать map.container.fitToViewport. Доступны следующие значения:
  • none — не следить за изменением отображения контейнера при инициализации из скрытого контейнера или при программном изменении его размеров;
  • ifNull — как только контейнер получит CSS значение «display», отличное от «none», автоматически запустится map.container.fitToViewport, чтобы подстроить карту под него. После слежение будет остановлено;
  • always — постоянно следить за изменением состояния отображения контейнера карты.
options.avoidFractionalZoom true

Тип: Boolean

true - карта не будет останавливаться на дробных значениях коэффициента масштабирования, false - будет.

options.maxAnimationZoomDifference 5

Тип: Number

Максимальная разница между текущим и выставляемым коэффициентом масштабирования карты, при котором масштабирование будет происходить плавно.

options.maxZoom 23

Тип: Number

Максимальный коэффициент масштабирования карты.

options.minZoom 0

Тип: Number

Минимальный коэффициент масштабирования карты.

options.projection ymaps.projection.wgs84Mercator

Тип: IProjection

Проекция карты.

options.restrictMapArea false

Тип: Boolean|Number[][]

Устанавливает область просмотра карты так, чтобы пользователь не мог выйти за пределы этой области. True — установить область в соответствии с текущей областью отображения, false — отключить опцию. Если необходимо ограничить область с известными координатами, нужно указать эту прямоугольную область.

options.suppressObsoleteBrowserNotifier false

Тип: Boolean

Нужно ли в устаревших версиях браузеров скрывать уведомление над картой с предложением обновить браузер.

options.yandexMapAutoSwitch true

Тип: Boolean

true - включить автоматическое переключение на Народную Карту там, где схема недостаточно подробна, false - выключить. Эта опция работает только при значениях параметра lang=ru-RU и lang=uk-UA.

Параметр Значение по умолчанию Описание
element *

Тип: Object|String

Ссылка на HTML-элемент, в котором размещается карта, или идентификатор этого HTML-элемента.

state *

Тип: Object

Параметры карты.

state.behaviors

Тип: String[]

Включенные поведения карты. По умолчанию включаются: перетаскивание карты, масштабирование карты мультисенсорным касанием и двойным кликом на устройствах с сенсорным экраном; перетаскивание карты мышью, масштабирование двойным щелчком и выделением области правой кнопкой мыши на остальных устройствах. Можно указывать любые ключи, которые поддерживаются map.behavior.Manager.

state.bounds

Тип: Number[][]

Геокоординаты начальной области показа карты. При инициализации карты может быть задана либо пара state.zoom-state.center, либо данная область. Если совместно со state.bounds будут заданы параметры state.zoom, state.center, они будут проигнорированы.

state.center

Тип: Number[]

Геокоординаты центра карты. Должны быть заданы совместно со state.zoom.

state.type 'yandex#map'

Тип: String|MapType

Тип карты. Может быть ключом или экземпляром класса MapType. Список доступных ключей:
  • 'yandex#map' - тип карты "схема";
  • 'yandex#satellite' - тип карты "спутник";
  • 'yandex#hybrid' - тип карты "гибрид".
state.zoom

Тип: Number

Коэффициент масштабирования карты. Должен быть задан совместно со state.center.

options

Тип: Object

Опции карты. Через опции карты можно задавать настройки как самой карты, так и добавленных на неё объектов: Опции, которые трактует непосредственно сама карта, перечислены ниже.
options.adjustZoomOnTypeChange false

Тип: Number

Выбранного типа карты с текущим кооэффициентом масштабирования тайлов может не оказаться. При значении true кооэффициент масштабирования будет изменен на ближаший допустимый.

options.autoFitToViewport 'ifNull'

Тип: String

Автоматическое слежение за контейнером карты. По умолчанию карта перестроится автоматически в случае, когда она инициализируется из скрытого контейнера, либо мы программно поменяли его размеры, иначе необходимо вызвать map.container.fitToViewport. Доступны следующие значения:
  • none — не следить за изменением отображения контейнера при инициализации из скрытого контейнера или при программном изменении его размеров;
  • ifNull — как только контейнер получит CSS значение «display», отличное от «none», автоматически запустится map.container.fitToViewport, чтобы подстроить карту под него. После слежение будет остановлено;
  • always — постоянно следить за изменением состояния отображения контейнера карты.
options.avoidFractionalZoom true

Тип: Boolean

true - карта не будет останавливаться на дробных значениях коэффициента масштабирования, false - будет.

options.maxAnimationZoomDifference 5

Тип: Number

Максимальная разница между текущим и выставляемым коэффициентом масштабирования карты, при котором масштабирование будет происходить плавно.

options.maxZoom 23

Тип: Number

Максимальный коэффициент масштабирования карты.

options.minZoom 0

Тип: Number

Минимальный коэффициент масштабирования карты.

options.projection ymaps.projection.wgs84Mercator

Тип: IProjection

Проекция карты.

options.restrictMapArea false

Тип: Boolean|Number[][]

Устанавливает область просмотра карты так, чтобы пользователь не мог выйти за пределы этой области. True — установить область в соответствии с текущей областью отображения, false — отключить опцию. Если необходимо ограничить область с известными координатами, нужно указать эту прямоугольную область.

options.suppressObsoleteBrowserNotifier false

Тип: Boolean

Нужно ли в устаревших версиях браузеров скрывать уведомление над картой с предложением обновить браузер.

options.yandexMapAutoSwitch true

Тип: Boolean

true - включить автоматическое переключение на Народную Карту там, где схема недостаточно подробна, false - выключить. Эта опция работает только при значениях параметра lang=ru-RU и lang=uk-UA.

* Обязательный параметр/опция.

Примеры:

1.

// Инициализация карты из известных центра и уровня масштабирования
var myMap = new ymaps.Map('map', {
         center: [55.74954, 37.621587],
         zoom: 10,
         // включаем масштабирование карты колесом
         behaviors: ['default', 'scrollZoom']
    });

2.

// Инициализация карты по известной области просмотра
// Полагаем, что на странице подключен jQuery
var $mapElement = $('#map'),
    myMap = new ymaps.Map(
        $mapElement[0],
        ymaps.util.bounds.getCenterAndZoom(
            [[55.7, 37.6], [55.8, 37.7]],
            [$mapElement.width(), $mapElement.height()]
        )
    );

3.

// Инициализация карты из результата геокодирования
var myMap;
ymaps.geocode('Москва').then(function (res) {
    myMap = new ymaps.Map('map', {
        center: res.geoObjects.get(0).geometry.getCoordinates(),
        zoom : 10
    });
});

Поля

Имя Тип Описание
action map.action.Manager

Менеджер действий карты.

balloon map.Balloon

Балун карты.

behaviors map.behavior.Manager

Менеджер поведений карты. Позволяет включать и выключать поведения, а также предоставляет доступ к их методам и свойствам.

container map.Container

Контейнер карты.

controls map.control.Manager

Элементы управления картой.

converter map.Converter

Преобразователь пиксельных точек карты из глобальных в локальные и наоборот.

copyrights map.Copyrights

Менеджер размещённой на карте информации об авторских правах.

cursors util.cursor.Manager

Менеджер курсоров карты.

events event.PriorityManager

Менеджер событий карты. Поддерживает подписку с приоритетами. Бросает события типа MapEvent.

geoObjects map.GeoObjects

Менеджер геообъектов карты.

hint map.Hint

Хинт карты.

layers map.layer.Manager

Менеджер слоёв карты.

options option.Manager

Опции карты.

panes map.pane.Manager

Менеджер контейнеров объектов карты.

zoomRange map.ZoomRange

Объект, предоставляющий доступ к информации о доступных в точке уровнях масштабирования.

Имя Тип Описание
action map.action.Manager

Менеджер действий карты.

balloon map.Balloon

Балун карты.

behaviors map.behavior.Manager

Менеджер поведений карты. Позволяет включать и выключать поведения, а также предоставляет доступ к их методам и свойствам.

container map.Container

Контейнер карты.

controls map.control.Manager

Элементы управления картой.

converter map.Converter

Преобразователь пиксельных точек карты из глобальных в локальные и наоборот.

copyrights map.Copyrights

Менеджер размещённой на карте информации об авторских правах.

cursors util.cursor.Manager

Менеджер курсоров карты.

events event.PriorityManager

Менеджер событий карты. Поддерживает подписку с приоритетами. Бросает события типа MapEvent.

geoObjects map.GeoObjects

Менеджер геообъектов карты.

hint map.Hint

Хинт карты.

layers map.layer.Manager

Менеджер слоёв карты.

options option.Manager

Опции карты.

panes map.pane.Manager

Менеджер контейнеров объектов карты.

zoomRange map.ZoomRange

Объект, предоставляющий доступ к информации о доступных в точке уровнях масштабирования.

События

Имя Описание
actionbegin
Началось новое плавное движение карты. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • action - запущенное действие.
actionbreak
Событие, возникающее при досрочном прекращении шага действия (например, из-за выполнения другого действия или нового шага того же действия). Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • action - действие.
actionend
Окончание плавного движения карты. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • action - остановленное действие.
actiontick
Начало исполнения нового шага плавного движения (например, сдвиг карты пользователем или шаг анимации плавного масштабирования). Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • action - выполняемое в данный момент действие;
  • tick - описание шага действия в виде объекта с полями globalPixelCenter, zoom, duration и timingFunction.
actiontickcomplete
Окончание исполнения шага плавного движения. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • action - выполняемое в данный момент действие;
  • tick - описание шага действия в виде объекта с полями globalPixelCenter, zoom, duration и timingFunction.
balloonclose

Закрыт балун

balloonopen
Открыт балун на карте. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • balloon - экземпляр балуна.
boundschange
Событие изменения области просмотра карты (в результате изменения центра или уровня масштабирования). Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • oldCenter - предыдущий центр карты в геокоординатах;
  • newCenter - новый центр карты в геокоординатах;
  • oldZoom - предыдущий уровень машсштабирования;
  • newZoom - новый уровень масштабирования;
  • oldGlobalPixelCenter - предыдущий центр карты в глобальных пикселах;
  • newGlobalPixelCenter - новый центр карты в глобальных пикселах;
  • oldBounds - предыдущая область показа;
  • newBounds - новая область показа.
click

Однократное нажатие левой кнопки мыши на объекте. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

Унаследовано от IDomEventEmitter.

contextmenu

Вызов контекстного меню на элементе. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

Унаследовано от IDomEventEmitter.

dblclick

Двойное нажатие левой кнопки мыши на объекте. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

Унаследовано от IDomEventEmitter.

destroy

Карта уничтожена.

hinthide

Скрыт хинт.

hintshow
Показан хинт на карте. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • hint - экземпляр хинта.
mousedown

Нажатие кнопки мыши над объектом. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

Унаследовано от IDomEventEmitter.

mouseenter

Наведение курсора на объект. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

Унаследовано от IDomEventEmitter.

mouseleave

Вывод курсора за пределы объекта. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

Унаследовано от IDomEventEmitter.

mousemove

Перемещение курсора над объектом. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

Унаследовано от IDomEventEmitter.

mouseup

Отпускание кнопки мыши над объектом. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

Унаследовано от IDomEventEmitter.

multitouchend

Окончание мультисенсорного управления. Данное событие доступно только на устройствах, которые поддерживают множественные сенсорные прикосновения. Возвращает реализацию интерфейса IMultiTouchEvent c информацией о прикосновениях.

Унаследовано от IDomEventEmitter.

multitouchmove

Повторящееся событие при мультисенсорном управлении. Данное событие доступно только на устройствах, которые поддерживают множественные сенсорные прикосновения. Возвращает реализацию интерфейса IMultiTouchEvent c информацией о прикосновениях.

Унаследовано от IDomEventEmitter.

multitouchstart

Начало мультисенсорного управления. Данное событие доступно только на устройствах, которые поддерживают множественные сенсорные прикосновения. Возвращает реализацию интерфейса IMultiTouchEvent c информацией о прикосновениях.

Унаследовано от IDomEventEmitter.

optionschange

Изменились опции карты.

sizechange
Изменился размер карты. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • oldSize - предыдущий размер карты;
  • newSize - новый размер карты.
typechange
Изменился тип карты. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • oldType - предыдущий тип карты;
  • newType - новый тип карты.
wheel

Скролл мышкой. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

Унаследовано от IDomEventEmitter.

Имя Описание
actionbegin
Началось новое плавное движение карты. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • action - запущенное действие.
actionbreak
Событие, возникающее при досрочном прекращении шага действия (например, из-за выполнения другого действия или нового шага того же действия). Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • action - действие.
actionend
Окончание плавного движения карты. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • action - остановленное действие.
actiontick
Начало исполнения нового шага плавного движения (например, сдвиг карты пользователем или шаг анимации плавного масштабирования). Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • action - выполняемое в данный момент действие;
  • tick - описание шага действия в виде объекта с полями globalPixelCenter, zoom, duration и timingFunction.
actiontickcomplete
Окончание исполнения шага плавного движения. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • action - выполняемое в данный момент действие;
  • tick - описание шага действия в виде объекта с полями globalPixelCenter, zoom, duration и timingFunction.
balloonclose

Закрыт балун

balloonopen
Открыт балун на карте. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • balloon - экземпляр балуна.
boundschange
Событие изменения области просмотра карты (в результате изменения центра или уровня масштабирования). Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • oldCenter - предыдущий центр карты в геокоординатах;
  • newCenter - новый центр карты в геокоординатах;
  • oldZoom - предыдущий уровень машсштабирования;
  • newZoom - новый уровень масштабирования;
  • oldGlobalPixelCenter - предыдущий центр карты в глобальных пикселах;
  • newGlobalPixelCenter - новый центр карты в глобальных пикселах;
  • oldBounds - предыдущая область показа;
  • newBounds - новая область показа.
click

Однократное нажатие левой кнопки мыши на объекте. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

Унаследовано от IDomEventEmitter.

contextmenu

Вызов контекстного меню на элементе. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

Унаследовано от IDomEventEmitter.

dblclick

Двойное нажатие левой кнопки мыши на объекте. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

Унаследовано от IDomEventEmitter.

destroy

Карта уничтожена.

hinthide

Скрыт хинт.

hintshow
Показан хинт на карте. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • hint - экземпляр хинта.
mousedown

Нажатие кнопки мыши над объектом. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

Унаследовано от IDomEventEmitter.

mouseenter

Наведение курсора на объект. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

Унаследовано от IDomEventEmitter.

mouseleave

Вывод курсора за пределы объекта. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

Унаследовано от IDomEventEmitter.

mousemove

Перемещение курсора над объектом. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

Унаследовано от IDomEventEmitter.

mouseup

Отпускание кнопки мыши над объектом. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

Унаследовано от IDomEventEmitter.

multitouchend

Окончание мультисенсорного управления. Данное событие доступно только на устройствах, которые поддерживают множественные сенсорные прикосновения. Возвращает реализацию интерфейса IMultiTouchEvent c информацией о прикосновениях.

Унаследовано от IDomEventEmitter.

multitouchmove

Повторящееся событие при мультисенсорном управлении. Данное событие доступно только на устройствах, которые поддерживают множественные сенсорные прикосновения. Возвращает реализацию интерфейса IMultiTouchEvent c информацией о прикосновениях.

Унаследовано от IDomEventEmitter.

multitouchstart

Начало мультисенсорного управления. Данное событие доступно только на устройствах, которые поддерживают множественные сенсорные прикосновения. Возвращает реализацию интерфейса IMultiTouchEvent c информацией о прикосновениях.

Унаследовано от IDomEventEmitter.

optionschange

Изменились опции карты.

sizechange
Изменился размер карты. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • oldSize - предыдущий размер карты;
  • newSize - новый размер карты.
typechange
Изменился тип карты. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • oldType - предыдущий тип карты;
  • newType - новый тип карты.
wheel

Скролл мышкой. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

Унаследовано от IDomEventEmitter.

Методы

Имя Возвращает Описание
destroy()

Уничтожает карту.

getBounds()

Number[][]

Returns двумерный массив геокоординат левого нижнего и правого верхнего углов области показа карты.

getCenter()

Number[]

Returns географические координаты текущего центра карты.

getGlobalPixelCenter()

Number[]

Returns глобальные пиксельные координаты текущего центра карты.

getType()

String|MapType

Returns текущий тип карты.

getZoom()

Number

Returns текущий коэффициент масштабирования карты.

panTo(center, options)

Map

Устанавливает центр карты. Если передан массив точек, то карта будет перемещаться от одной точки к другой.

setBounds(bounds[, options])

Map

Позиционирует карту для показа переданного района.

setCenter(center[, zoom[, options]])

Map

Устанавливает центр и коэффициент масштабирования карты. Центр задается в географических координатах.

setGlobalPixelCenter(globalPixelCenter[, zoom[, options]])

Map

Устанавливает центр и коэффициент масштабирования карты. Центр задается в глобальных пиксельных координатах.

setType(type)

Map

Устанавливает тип карты.

setZoom(zoom[, options])

Map

Устанавливает коэффициент масштабирования карты.

Имя Возвращает Описание
destroy()

Уничтожает карту.

getBounds()

Number[][]

Returns двумерный массив геокоординат левого нижнего и правого верхнего углов области показа карты.

getCenter()

Number[]

Returns географические координаты текущего центра карты.

getGlobalPixelCenter()

Number[]

Returns глобальные пиксельные координаты текущего центра карты.

getType()

String|MapType

Returns текущий тип карты.

getZoom()

Number

Returns текущий коэффициент масштабирования карты.

panTo(center, options)

Map

Устанавливает центр карты. Если передан массив точек, то карта будет перемещаться от одной точки к другой.

setBounds(bounds[, options])

Map

Позиционирует карту для показа переданного района.

setCenter(center[, zoom[, options]])

Map

Устанавливает центр и коэффициент масштабирования карты. Центр задается в географических координатах.

setGlobalPixelCenter(globalPixelCenter[, zoom[, options]])

Map

Устанавливает центр и коэффициент масштабирования карты. Центр задается в глобальных пиксельных координатах.

setType(type)

Map

Устанавливает тип карты.

setZoom(zoom[, options])

Map

Устанавливает коэффициент масштабирования карты.

Описание полей

action

Менеджер действий карты.

Пример:

var myAction = new ymaps.map.action.Single({
          center: [0, 0],
          zoom: 4,
          duration: 1000,
          timingFunction: "ease-in"
    });

myMap.action.execute(myAction);

balloon

{map.Balloon} balloon

Балун карты.

Пример:

myMap.balloon.open(myMap.getCenter(), {
    content: 'Hello Yandex!'
}, {
    closeButton: true
});

behaviors

Менеджер поведений карты. Позволяет включать и выключать поведения, а также предоставляет доступ к их методам и свойствам.

Пример:

// Включим масштабирование колесом мыши
myMap.behaviors.enable('scrollZoom');

container

{map.Container} container

Контейнер карты.

Пример:

// Подгоним размер карты под новый размер контейнера
// (например, если изменилась верстка страницы или карта была инициализирована
// в скрытом состоянии)
map.container.fitToViewport();

controls

Элементы управления картой.

Пример:

myMap.controls.add('zoomControl', {right: '40px', top: '5px'});

converter

{map.Converter} converter

Преобразователь пиксельных точек карты из глобальных в локальные и наоборот.

Пример:

// Преобразуем координаты мыши в географические.
var projection = map.options.get('projection');
$('#map').bind('click', function (e) {
    console.log(projection.fromGlobalPixels(
        map.converter.pageToGlobal([e.pageX, e.pageY]), map.getZoom()
    ));
});

copyrights

{map.Copyrights} copyrights

Менеджер размещённой на карте информации об авторских правах.

Пример:

// Добавим информацию об авторе
map.copyrights.add('© Vassily Poupkine');

cursors

Менеджер курсоров карты.

events

Менеджер событий карты. Поддерживает подписку с приоритетами. Бросает события типа MapEvent.

Примеры:

1.

// Поставим метку по клику над картой
map.events.add('click', function (e) {
    // Географические координаты точки клика можно узнать
    // посредством вызова .get('coordPosition')
    var position = e.get('coordPosition');
    map.geoObjects.add(new ymaps.Placemark(position));
});

2.

// Запретим пользователю уводить карту за пределы заданной области
// и подыматься выше определённого уровня масштабирования.

// Геокоординаты области, которой мы хотим ограничить просмотр карты
var bounds = [[45, 20], [65, 60]];
// Запретим пользователю подыматься на уровни масштабирования меньше 5
map.options.set('minZoom', 5);
// Будем слушать изменение области показа карты и плавно возвращать
// пользователя обратно в пределы заданной области.
map.events.add('boundschange', function (e) {
    // Новая область показа карты
    var newBounds = e.get('newBounds'),
    // Считаем, насколько нужно сместить центр карты, чтобы
    // вернуть пользователя обратно в заданные границы
        offset = [
            bounds[0][0] > newBounds[0][0] ?
                bounds[0][0] - newBounds[0][0] :
                (bounds[1][0] < newBounds[1][0] ? bounds[1][0] - newBounds[1][0] : 0),
            bounds[0][1] > newBounds[0][1] ?
                bounds[0][1] - newBounds[0][1] :
                (bounds[1][1] < newBounds[1][1] ? bounds[1][1] - newBounds[1][1] : 0)
        ];
     // Если пользователь вышел за границы, возвращаем его обратно
     if (offset[0] || offset[1]) {
         map.setCenter([
             map.getCenter()[0] + offset[0],
             map.getCenter()[1] + offset[1]
         ]);
     }
});

geoObjects

{map.GeoObjects} geoObjects

Менеджер геообъектов карты.

hint

{map.Hint} hint

Хинт карты.

Пример:

myMap.hint.show(myMap.getCenter(), {
    hintContent: 'Hello Yandex!'
}, {
    hintHasHideButton: true
});

layers

Менеджер слоёв карты.

См.: Layer

Пример:

// Добавим слой пользовательских тайлов на карту
map.layers.add(new ymaps.Layer('http://some.server/tiles?&c'));

options

{option.Manager} options

Опции карты.

Пример:

// Запретим всем объектам на карте открывать балуны по щелчку мыши
map.options.set('openBalloonOnClick', false);

panes

Менеджер контейнеров объектов карты.

Пример:

// Добавим свой элемент в контейнер элементов управления карты
$('<div><input type="button" value="Click!"/></div>')
    .css({ position: 'absolute', left: '5px', top: '50px'})
    .appendTo(map.panes.get('controls').getElement());

zoomRange

{map.ZoomRange} zoomRange

Объект, предоставляющий доступ к информации о доступных в точке уровнях масштабирования.

Пример:

// узнаем максимальный доступный в точке [20, 30] уровень
// масштабирования карты
map.zoomRange.get([20, 30]).then(function (zoomRange) {
    alert(zoomRange[1]);
});

Описание событий

actionbegin

Началось новое плавное движение карты. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • action - запущенное действие.

actionbreak

Событие, возникающее при досрочном прекращении шага действия (например, из-за выполнения другого действия или нового шага того же действия). Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • action - действие.

actionend

Окончание плавного движения карты. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • action - остановленное действие.

actiontick

Начало исполнения нового шага плавного движения (например, сдвиг карты пользователем или шаг анимации плавного масштабирования). Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • action - выполняемое в данный момент действие;
  • tick - описание шага действия в виде объекта с полями globalPixelCenter, zoom, duration и timingFunction.

Пример:

// Отслеживает все перемещения карты, даже перетаскивание пользователем
// и плавное масштабирование
map.events.add('actiontick', function (e) {
    var tick = e.get('tick');
    console.log('Сейчас карта переместится в точку (' +
        map.options.get('projection').fromGlobalPixels(tick.globalPixelCenter, tick.zoom).join(',') +
        ') в течение ' + e.get('tick').duration + ' миллисекунд');
});

actiontickcomplete

Окончание исполнения шага плавного движения. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • action - выполняемое в данный момент действие;
  • tick - описание шага действия в виде объекта с полями globalPixelCenter, zoom, duration и timingFunction.

balloonclose

Закрыт балун

balloonopen

Открыт балун на карте. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • balloon - экземпляр балуна.

boundschange

Событие изменения области просмотра карты (в результате изменения центра или уровня масштабирования). Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • oldCenter - предыдущий центр карты в геокоординатах;
  • newCenter - новый центр карты в геокоординатах;
  • oldZoom - предыдущий уровень машсштабирования;
  • newZoom - новый уровень масштабирования;
  • oldGlobalPixelCenter - предыдущий центр карты в глобальных пикселах;
  • newGlobalPixelCenter - новый центр карты в глобальных пикселах;
  • oldBounds - предыдущая область показа;
  • newBounds - новая область показа.

Пример:

// Будем отслеживать изменение уровня масштабирования карты
map.events.add('boundschange', function (event) {
    if (event.get('newZoom') != event.get('oldZoom')) {
        alert('Уровень масштабирования изменился');
    }
});

destroy

Карта уничтожена.

hinthide

Скрыт хинт.

hintshow

Показан хинт на карте. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • hint - экземпляр хинта.

optionschange

Изменились опции карты.

sizechange

Изменился размер карты. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • oldSize - предыдущий размер карты;
  • newSize - новый размер карты.

typechange

Изменился тип карты. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • oldType - предыдущий тип карты;
  • newType - новый тип карты.

Описание методов

destroy

{} destroy()

Уничтожает карту.

getBounds

{Number[][]} getBounds()

Returns двумерный массив геокоординат левого нижнего и правого верхнего углов области показа карты.

getCenter

{Number[]} getCenter()

Returns географические координаты текущего центра карты.

getGlobalPixelCenter

{Number[]} getGlobalPixelCenter()

Returns глобальные пиксельные координаты текущего центра карты.

Пример:

// Сдвинем карту на 10 пикселей влево
var position = map.getGlobalPixelCenter();
map.setGlobalPixelCenter([ position[0] - 10, position[1] ]);

getType

{String|MapType} getType()

Returns текущий тип карты.

getZoom

{Number} getZoom()

Returns текущий коэффициент масштабирования карты.

panTo

{Map} panTo(center, options)

Устанавливает центр карты. Если передан массив точек, то карта будет перемещаться от одной точки к другой.

Returns ссылку на карту.

Параметры:

Параметр Значение по умолчанию Описание
center *

Тип: Number[]|Object[]

Центр карты или массив точек для последовательного обхода.

options *

Тип: Object

Опции.

options.callback

Тип: Function

Функция, которая вызывается по окончании выполнения действия. В функцию передается параметр err. В случае корректного выполнения действия err=null, в остальных случаях параметр является признаком ошибки.

options.checkZoomRange false

Тип: Boolean

Проверка возможности установить текущий коэффициент масштабирования при изменении центра карты. Если значение опции равно true, метод вызывается асинхронно. Производится обращение к серверу, который возвращает интервал допустимых для данного центра значений коэффициентов масштабирования. После этого выставляется указанный центр и корректный зум.

options.delay 1000

Тип: Number

Время задержки выполнения очередного перемещения в милисекундах.

options.duration 500

Тип: Number

Время анимации в миллисекундах.

options.flying true

Тип: Boolean

Разрешить уменьшать и затем увеличивать зум карты при перемещении между точками. Если расстояние между точками не превышает двух размеров контейнера карты, то карта просто переместит центр в указанную точку. Если расстояние больше, то при включенной опции flying карта выставит себе меньший коэффициент масштабирования, затем сместится к конечной точке и выставит требуемый коэффициент масштабирования (эмуляция полета над картой). Если options.flying=false, то карта переместится в конечную точку мгновенно, без анимации.

options.timingFunction 'ease-in-out'

Тип: String

Тайминг-функция. Может задаваться как с помощью отдельных коэффициентов: 'cubic-bezier(0,1,1,0)', так и строкой: 'linear', 'ease', 'ease-in', 'ease-out', 'ease-in-out'.

Параметр Значение по умолчанию Описание
center *

Тип: Number[]|Object[]

Центр карты или массив точек для последовательного обхода.

options *

Тип: Object

Опции.

options.callback

Тип: Function

Функция, которая вызывается по окончании выполнения действия. В функцию передается параметр err. В случае корректного выполнения действия err=null, в остальных случаях параметр является признаком ошибки.

options.checkZoomRange false

Тип: Boolean

Проверка возможности установить текущий коэффициент масштабирования при изменении центра карты. Если значение опции равно true, метод вызывается асинхронно. Производится обращение к серверу, который возвращает интервал допустимых для данного центра значений коэффициентов масштабирования. После этого выставляется указанный центр и корректный зум.

options.delay 1000

Тип: Number

Время задержки выполнения очередного перемещения в милисекундах.

options.duration 500

Тип: Number

Время анимации в миллисекундах.

options.flying true

Тип: Boolean

Разрешить уменьшать и затем увеличивать зум карты при перемещении между точками. Если расстояние между точками не превышает двух размеров контейнера карты, то карта просто переместит центр в указанную точку. Если расстояние больше, то при включенной опции flying карта выставит себе меньший коэффициент масштабирования, затем сместится к конечной точке и выставит требуемый коэффициент масштабирования (эмуляция полета над картой). Если options.flying=false, то карта переместится в конечную точку мгновенно, без анимации.

options.timingFunction 'ease-in-out'

Тип: String

Тайминг-функция. Может задаваться как с помощью отдельных коэффициентов: 'cubic-bezier(0,1,1,0)', так и строкой: 'linear', 'ease', 'ease-in', 'ease-out', 'ease-in-out'.

* Обязательный параметр/опция.

Пример:

// Полёт из Калининграда во Владивосток через Москву
map.setCenter([54.704815, 20.466380], 10);
map.panTo([
    [ 55.751574, 37.573856 ],
    [ 43.134091, 131.928478 ]
], {
    callback: function () {
        alert('Прилетели!');
    }
});

setBounds

{Map} setBounds(bounds[, options])

Позиционирует карту для показа переданного района.

Returns ссылку на себя.

Параметры:

Параметр Значение по умолчанию Описание
bounds *

Тип: Number[][]

Границы области показа.

options

Тип: Object

Опции.

options.callback

Тип: Function

Функция, которая вызывается по окончании выполнения действия. В функцию передается параметр err. В случае корректного выполнения действия err=null, в остальных случаях параметр является признаком ошибки.

options.checkZoomRange false

Тип: Boolean

Проверка возможности установить указанный коэффициент масштабирования. Если значение опции равно true, метод вызывается асинхронно. Производится обращение к серверу, который возвращает интервал допустимых для данного центра значений коэффициентов масштабирования. После этого выставляется указанный центр и корректный зум.

options.duration 0

Тип: Number

Время анимации в миллисекундах.

options.preciseZoom false

Тип: Boolean

Возможность использования дробных коэффициентов масштабирования.

options.timingFunction

Тип: Function

Тайминг-функция.

options.zoomMargin 0

Тип: Number|Number[]

Отступы от границ видимой области карты. Если задано одно число - оно применяется ко всем сторонам. Если задано два - то это горизонтальные и вертикальные отступы соответственно. Если задан массив из 4х чисел, то это отступы top, right, bottom, left.

Параметр Значение по умолчанию Описание
bounds *

Тип: Number[][]

Границы области показа.

options

Тип: Object

Опции.

options.callback

Тип: Function

Функция, которая вызывается по окончании выполнения действия. В функцию передается параметр err. В случае корректного выполнения действия err=null, в остальных случаях параметр является признаком ошибки.

options.checkZoomRange false

Тип: Boolean

Проверка возможности установить указанный коэффициент масштабирования. Если значение опции равно true, метод вызывается асинхронно. Производится обращение к серверу, который возвращает интервал допустимых для данного центра значений коэффициентов масштабирования. После этого выставляется указанный центр и корректный зум.

options.duration 0

Тип: Number

Время анимации в миллисекундах.

options.preciseZoom false

Тип: Boolean

Возможность использования дробных коэффициентов масштабирования.

options.timingFunction

Тип: Function

Тайминг-функция.

options.zoomMargin 0

Тип: Number|Number[]

Отступы от границ видимой области карты. Если задано одно число - оно применяется ко всем сторонам. Если задано два - то это горизонтальные и вертикальные отступы соответственно. Если задан массив из 4х чисел, то это отступы top, right, bottom, left.

* Обязательный параметр/опция.

Пример:

// Новые центр и коэффициент масштабирования карты вычисляются на основе текущего
// состояния карты.
// Если текущий zoomRange не совпадает с zoomRange для нового центра карты,
// могут быть отображены серые тайлы в случае, если область показа очень мала.
// Чтобы избежать этой проблемы, используйте опцию checkZoomRange.
myMap.setBounds([[60,-40], [20,60]], {
     checkZoomRange: true,
     callback: function(err) {
         if (err) {
             // Не удалось показать заданный регион
             // ...
         }
     }
});

setCenter

{Map} setCenter(center[, zoom[, options]])

Устанавливает центр и коэффициент масштабирования карты. Центр задается в географических координатах.

Returns ссылку на себя.

Параметры:

Параметр Значение по умолчанию Описание
center *

Тип: Number[]

Геокоординаты центра карты.

zoom

Тип: Number

Коэффициент масштабирования карты.

options

Тип: Object

Опции карты.

options.callback

Тип: Function

Функция, которая вызывается по окончании выполнения действия. В функцию передается параметр err. В случае корректного выполнения действия err=null, в остальных случаях параметр является признаком ошибки.

options.checkZoomRange false

Тип: Boolean

Проверка возможности установить указанный коэффициент масштабирования. Если значение опции равно true, метод вызывается асинхронно. Производится обращение к серверу, который возвращает интервал допустимых для данного центра значений коэффициентов масштабирования. После этого выставляется указанный центр и корректный зум.

options.duration 0

Тип: Number

Время анимации в миллисекундах.

options.timingFunction

Тип: Function

Тайминг-функция.

Параметр Значение по умолчанию Описание
center *

Тип: Number[]

Геокоординаты центра карты.

zoom

Тип: Number

Коэффициент масштабирования карты.

options

Тип: Object

Опции карты.

options.callback

Тип: Function

Функция, которая вызывается по окончании выполнения действия. В функцию передается параметр err. В случае корректного выполнения действия err=null, в остальных случаях параметр является признаком ошибки.

options.checkZoomRange false

Тип: Boolean

Проверка возможности установить указанный коэффициент масштабирования. Если значение опции равно true, метод вызывается асинхронно. Производится обращение к серверу, который возвращает интервал допустимых для данного центра значений коэффициентов масштабирования. После этого выставляется указанный центр и корректный зум.

options.duration 0

Тип: Number

Время анимации в миллисекундах.

options.timingFunction

Тип: Function

Тайминг-функция.

* Обязательный параметр/опция.

Пример:

myMap.setCenter([40, 50], 3, {
    checkZoomRange: true
});

setGlobalPixelCenter

{Map} setGlobalPixelCenter(globalPixelCenter[, zoom[, options]])

Устанавливает центр и коэффициент масштабирования карты. Центр задается в глобальных пиксельных координатах.

Returns ссылку на карту.

Параметры:

Параметр Значение по умолчанию Описание
globalPixelCenter *

Тип: Number[]

Пиксельные координаты нового центра карты.

zoom

Тип: Number

Коэффициент масштабирования карты.

options

Тип: Object

Опции.

options.callback

Тип: Function

Функция, которая вызывается по окончании выполнения действия. В функцию передается параметр err. В случае корректного выполнения действия err=null, в остальных случаях параметр является признаком ошибки.

options.checkZoomRange false

Тип: Boolean

Проверка возможности установить указанный коэффициент масштабирования. Если значение опции равно true, метод вызывается асинхронно. Производится обращение к серверу, который возвращает интервал допустимых для данного центра значений коэффициентов масштабирования. После этого выставляется указанный центр и корректный зум.

options.duration 0

Тип: Number

Время анимации в миллисекундах.

options.timingFunction

Тип: Function

Тайминг-функция.

Параметр Значение по умолчанию Описание
globalPixelCenter *

Тип: Number[]

Пиксельные координаты нового центра карты.

zoom

Тип: Number

Коэффициент масштабирования карты.

options

Тип: Object

Опции.

options.callback

Тип: Function

Функция, которая вызывается по окончании выполнения действия. В функцию передается параметр err. В случае корректного выполнения действия err=null, в остальных случаях параметр является признаком ошибки.

options.checkZoomRange false

Тип: Boolean

Проверка возможности установить указанный коэффициент масштабирования. Если значение опции равно true, метод вызывается асинхронно. Производится обращение к серверу, который возвращает интервал допустимых для данного центра значений коэффициентов масштабирования. После этого выставляется указанный центр и корректный зум.

options.duration 0

Тип: Number

Время анимации в миллисекундах.

options.timingFunction

Тип: Function

Тайминг-функция.

* Обязательный параметр/опция.

Пример:

// Сдвинем карту на 10 пикселей влево
var position = map.getGlobalPixelCenter();
map.setGlobalPixelCenter([ position[0] - 10, position[1] ]);

setType

{Map} setType(type)

Устанавливает тип карты.

Returns ссылку на себя.

Параметры:

Параметр Значение по умолчанию Описание
type *

Тип: String|MapType

Тип карты. Может быть ключом или или экземпляром класса MapType. Список доступных ключей:
  • 'yandex#map' - тип карты "схема";
  • 'yandex#satellite' - тип карты "спутник";
  • 'yandex#hybrid' - тип карты "гибрид".
Параметр Значение по умолчанию Описание
type *

Тип: String|MapType

Тип карты. Может быть ключом или или экземпляром класса MapType. Список доступных ключей:
  • 'yandex#map' - тип карты "схема";
  • 'yandex#satellite' - тип карты "спутник";
  • 'yandex#hybrid' - тип карты "гибрид".

* Обязательный параметр/опция.

Пример:

myMap.setType('yandex#hybrid');

setZoom

{Map} setZoom(zoom[, options])

Устанавливает коэффициент масштабирования карты.

Returns ссылку на себя.

Параметры:

Параметр Значение по умолчанию Описание
zoom *

Тип: Number

Коэффициент масштабирования карты.

options

Тип: Object

Опции.

options.callback

Тип: Function

Функция, которая вызывается по окончании выполнения действия. В функцию передается параметр err. В случае корректного выполнения действия err=null, в остальных случаях параметр является признаком ошибки.

options.checkZoomRange false

Тип: Boolean

Проверка возможности установить указанный коэффициент масштабирования.

options.duration 0

Тип: Number

Время анимации в миллисекундах.

Параметр Значение по умолчанию Описание
zoom *

Тип: Number

Коэффициент масштабирования карты.

options

Тип: Object

Опции.

options.callback

Тип: Function

Функция, которая вызывается по окончании выполнения действия. В функцию передается параметр err. В случае корректного выполнения действия err=null, в остальных случаях параметр является признаком ошибки.

options.checkZoomRange false

Тип: Boolean

Проверка возможности установить указанный коэффициент масштабирования.

options.duration 0

Тип: Number

Время анимации в миллисекундах.

* Обязательный параметр/опция.

Пример:

myMap.setZoom(4, {duration: 1000});