Map

Расширяет IDomEventEmitter.

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

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

Конструктор

Map(parentElement, state[, options])

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

Параметры:

Параметр

Значение по умолчанию

Описание

parentElement*

Тип: Object|String

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

state*

Тип: Object

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

state.behaviors

['default']

Тип: String[]

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

state.bounds

Тип: Number[][]

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

state.center

Тип: Number[]

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

state.controls

['default']

Тип: String[]

Добавленные по умолчанию элементы управления карты. Можно указывать любые ключи, поддерживаемые control.Manager. Список доступных ключей и наборы элементов управления по умолчанию описаны в control.Manager.add.

state.margin

Тип: Number|Number[]

Отступы от краёв карты. Передаются в map.margin.Manager.setDefaultMargin.

state.type

'yandex#map'

Тип: String|MapType

Тип карты. Может быть ключом или или экземпляром класса MapType. Список доступных ключей:

  • 'yandex#map' - тип карты "схема";
  • 'yandex#satellite' - тип карты "спутник";
  • 'yandex#hybrid' - тип карты "гибрид".

state.zoom

Тип: Number

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

options

Тип: Object

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

options.autoFitToViewport

'ifNull'

Тип: String

Автоматическое слежение за контейнером карты. По умолчанию карта перестроится автоматически в случае, когда она инициализируется из скрытого контейнера, либо мы программно поменяли его размеры, иначе необходимо вызвать map.container.fitToViewport. Доступны следующие значения:

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

options.avoidFractionalZoom

true

Тип: Boolean

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

Примечание

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

options.exitFullscreenByEsc

true

Тип: Boolean

Включение возможности выхода из «полноэкранного режима» с помощью нажатия на клавишу ESC. True — выходить из «полноэкранного режима» по нажатию на ESC, false — не выходить.

options.fullscreenZIndex

10000

Тип: Number

Значение z-index контейнера карты в «полноэкранном режиме».

options.mapAutoFocus

true

Тип: Boolean

true - при клике на карту будет убираться фокус с текущего активного dom-элемента, false - при клике на карту фокус будет оставаться в активном элементе.

options.maxAnimationZoomDifference

5

Тип: Number

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

options.maxZoom

23

Тип: Number

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

options.minZoom

0

Тип: Number

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

options.nativeFullscreen

false

Тип: Boolean

Использовать нативный «полноэкранный режим», если возможно. При переходе в нативный «полноэкранный режим» браузер сначала запросит у пользователя подтверждение. В случае согласия пользователя браузер открывает карту на весь экран и скрывает свои управляющие элементы. Пользователь может выйти из этого режима нажав ESC. Опции fullscreenZIndex и exitFullscreenByEsc в нативном «полноэкранном режиме» ни на что не влиют.

options.projection

ymaps.projection.wgs84Mercator

Тип: IProjection

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

options.restrictMapArea

false

Тип: Boolean|Number[][]

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

options.suppressMapOpenBlock

false

Тип: Boolean

Нужно ли скрывать предложение открыть текущую карту в Яндекс Картах, максимально сохранив всю имеющуюся информацию о ней. True - скрывать, false - не скрывать. Ссылка на Яндекс Карты отображается в левом нижнем углу карты.

options.suppressObsoleteBrowserNotifier

false

Тип: Boolean

Нужно ли в устаревших версиях браузеров скрывать уведомление с предложением обновить браузер. True - скрывать, false - не скрывать. Уведомление отображается в левом нижнем углу карты.

options.yandexMapAutoSwitch

true

Тип: Boolean

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

options.yandexMapDisablePoiInteractivity

false

Тип: boolean

True — отключить интерактивность POI (точек интереса) в подложке карты, false — включить.

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

Примеры:

1.

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

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 : 
     });
});

Поля

Имя

Тип

Описание

action

map.action.Manager

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

balloon

map.Balloon

Балун карты.

behaviors

map.behavior.Manager

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

container

map.Container

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

controls

control.Manager

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

converter

map.Converter

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

copyrights

map.Copyrights

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

cursors

util.cursor.Manager

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

events

event.Manager

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

geoObjects

map.GeoObjects

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

hint

map.Hint

Хинт карты.

layers

map.layer.Manager

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

margin

map.margin.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

Закрытие балуна. Экземпляр класса Event.

balloonopen

Открытие балуна на карте. Экземпляр класса Event.

boundschange

Событие изменения области просмотра карты (в результате изменения центра или уровня масштабирования). Экземпляр класса Event. Имена полей, доступных через метод Event.get:

  • oldCenter - предыдущий центр карты в геокоординатах;
  • newCenter - новый центр карты в геокоординатах;
  • oldZoom - предыдущий уровень машсштабирования;
  • newZoom - новый уровень масштабирования;
  • oldGlobalPixelCenter - предыдущий центр карты в глобальных пикселах;
  • newGlobalPixelCenter - новый центр карты в глобальных пикселах;
  • oldBounds - предыдущая область показа;
  • newBounds - новая область показа.

click

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

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

contextmenu

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

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

dblclick

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

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

destroy

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

hintclose

Закрытие хинта. Экземпляр класса Event.

hintopen

Открытие хинта на карте. Экземпляр класса Event.

marginchange

Изменились отступы карты. Экземпляр класса Event.

mousedown

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

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

mouseenter

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

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

mouseleave

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

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

mousemove

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

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

mouseup

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

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

multitouchend

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

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

multitouchmove

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

  • clientX - координата касания X относительно видимой области браузера;
  • clientY - координата касания Y относительно видимой области браузера;
  • pageX - координата касания X касания относительно начала документа;
  • pageY - координата касания Y касания относительно начала документа.

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

multitouchstart

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

  • clientX - координата касания X относительно видимой области браузера;
  • clientY - координата касания Y относительно видимой области браузера;
  • pageX - координата касания X касания относительно начала документа;
  • pageY - координата касания Y касания относительно начала документа.

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

optionschange

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

sizechange

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

  • oldSize - предыдущий размер карты;
  • newSize - новый размер карты.

typechange

Изменился тип карты. Экземпляр класса Event.

wheel

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

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

Методы

Имя

Возвращает

Описание

destroy()

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

getBounds([options])

Number[][]

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

getCenter([options])

Number[]

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

getGlobalPixelCenter([options])

Number[]

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

getPanoramaManager()

vow.Promise.<panorama.Manager>

Возвращает vow.Promise, который будет разрешен менеджером панорамы карты. Promise отклоняется при возникновении ошибки.

getType()

String|MapType

Возвращает текущий тип карты.

getZoom()

Number

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

panTo(center[, options])

vow.Promise

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

setBounds(bounds[, options])

vow.Promise

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

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

vow.Promise

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

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

vow.Promise

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

setType(type[, options])

vow.Promise

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

setZoom(zoom[, options])

vow.Promise

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

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

action

{map.action.Manager} 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

Балун карты.

behaviors

{map.behavior.Manager} behaviors

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

Пример:

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

container

{map.Container} container

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

Пример:

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

controls

{control.Manager} controls

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

Пример:

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

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('© Вася Пупкин');

cursors

{util.cursor.Manager} cursors

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

Пример:

// Установим на карте курсор "знак вопроса".
var accessor = map.cursors.push('help');
// ...
// Удалим курсор.
accessor.remove();

events

{event.Manager} events

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

Примеры:

1.

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

2.

// Будем отслеживать центр и зум карты при плавных перемещениях.
map.events.add('actiontick', function () {
    var state = map.action.getCurrentState();
    console.log(state.zoom, state.globalPixelCenter);
});

geoObjects

{map.GeoObjects} geoObjects

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

hint

{map.Hint} hint

Хинт карты.

layers

{map.layer.Manager} layers

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

См.: Layer

Пример:

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

margin

{map.margin.Manager} margin

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

options

{option.Manager} options

Опции карты.

Пример:

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

panes

{map.pane.Manager} 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

Закрытие балуна. Экземпляр класса Event.

balloonopen

Открытие балуна на карте. Экземпляр класса Event.

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

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

hintclose

Закрытие хинта. Экземпляр класса Event.

hintopen

Открытие хинта на карте. Экземпляр класса Event.

marginchange

Изменились отступы карты. Экземпляр класса Event.

optionschange

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

sizechange

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

  • oldSize - предыдущий размер карты;
  • newSize - новый размер карты.

typechange

Изменился тип карты. Экземпляр класса Event.

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

destroy

{} destroy()

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

getBounds

{Number[][]} getBounds([options])

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

Параметры:

Параметр

Значение по умолчанию

Описание

options

Тип: Object

Опции.

options.useMapMargin

false

Тип: Boolean

Нужно ли учитывать отступы, которые были рассчитаны в менеджере отступов map.margin.Manager.

getCenter

{Number[]} getCenter([options])

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

Параметры:

Параметр

Значение по умолчанию

Описание

options

Тип: Object

Опции.

options.useMapMargin

false

Тип: Boolean

Нужно ли учитывать отступы, которые были рассчитаны в менеджере отступов map.margin.Manager.

getGlobalPixelCenter

{Number[]} getGlobalPixelCenter([options])

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

Параметры:

Параметр

Значение по умолчанию

Описание

options

Тип: Object

Опции.

options.useMapMargin

false

Тип: Boolean

Нужно ли учитывать отступы, которые были рассчитаны в менеджере отступов map.margin.Manager.

Пример:

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

getPanoramaManager

{vow.Promise.<panorama.Manager>} getPanoramaManager()

Возвращает vow.Promise, который:

  • будет разрешен объектом <panorama.Manager> — менеджером панорамы карты;
  • либо отклонен с ошибкой.

getType

{String|MapType} getType()

Возвращает текущий тип карты.

getZoom

{Number} getZoom()

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

panTo

{vow.Promise} panTo(center[, options])

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

Возвращает объект-promise. В случае корректного выполнения действия будет возвращен resolve без значения. В случае ошибки будет возвращен reject с описанием ошибки.

Параметры:

Параметр

Значение по умолчанию

Описание

center*

Тип: Number[]|Object[]

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

options

Тип: Object

Опции.

options.checkZoomRange

false

Тип: Boolean

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

options.delay

1000

Тип: Number

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

options.duration

500

Тип: Number

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

options.flying

true

Тип: Boolean

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

options.safe

true

Тип: Boolean

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

options.timingFunction

'ease-in-out'

Тип: String

Тайминг-функция. Аналогично значению CSS свойства transition-timing-function. Полный список значений: http://www.w3.org/TR/css3-transitions/#transition-timing-function_tag

options.useMapMargin

false

Тип: Boolean

Нужно ли учитывать отступы, которые были рассчитаны в менеджере отступов map.margin.Manager.

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

Пример:

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

setBounds

{vow.Promise} setBounds(bounds[, options])

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

Возвращает объект-promise. В случае корректного выполнения действия будет возвращен resolve без значения. В случае ошибки будет возвращен reject с описанием ошибки.

Параметры:

Параметр

Значение по умолчанию

Описание

bounds*

Тип: Number[][]

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

options

Тип: Object

Опции.

options.checkZoomRange

false

Тип: Boolean

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

options.duration

0

Тип: Number

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

options.preciseZoom

false

Тип: Boolean

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

options.timingFunction

'linear'

Тип: String

Тайминг-функция. Аналогично значению CSS свойства transition-timing-function. Полный список значений: http://www.w3.org/TR/css3-transitions/#transition-timing-function_tag

options.useMapMargin

false

Тип: Boolean

Нужно ли учитывать отступы, которые были рассчитаны в менеджере отступов map.margin.Manager.

options.zoomMargin

0

Тип: Number|Number[]

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

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

Пример:

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

setCenter

{vow.Promise} setCenter(center[, zoom[, options]])

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

Возвращает объект-promise. В случае корректного выполнения действия будет возвращен resolve без значения. В случае ошибки будет возвращен reject с описанием ошибки.

Параметры:

Параметр

Значение по умолчанию

Описание

center*

Тип: Number[]

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

zoom

Тип: Number

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

options

Тип: Object

Опции.

options.checkZoomRange

false

Тип: Boolean

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

options.duration

0

Тип: Number

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

options.timingFunction

'linear'

Тип: String

Тайминг-функция. Аналогично значению CSS свойства transition-timing-function. Полный список значений: http://www.w3.org/TR/css3-transitions/#transition-timing-function_tag

options.useMapMargin

false

Тип: Boolean

Нужно ли учитывать отступы, которые были рассчитаны в менеджере отступов map.margin.Manager.

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

Пример:

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

setGlobalPixelCenter

{vow.Promise} setGlobalPixelCenter(globalPixelCenter[, zoom[, options]])

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

Возвращает объект-promise. В случае корректного выполнения действия будет возвращен resolve без значения. В случае ошибки будет возвращен reject с описанием ошибки.

Параметры:

Параметр

Значение по умолчанию

Описание

globalPixelCenter*

Тип: Number[]

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

zoom

Тип: Number

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

options

Тип: Object

Опции.

options.checkZoomRange

false

Тип: Boolean

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

options.duration

0

Тип: Number

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

options.timingFunction

'linear'

Тип: String

Тайминг-функция. Аналогично значению CSS свойства transition-timing-function. Полный список значений: http://www.w3.org/TR/css3-transitions/#transition-timing-function_tag

options.useMapMargin

false

Тип: Boolean

Нужно ли учитывать отступы, которые были рассчитаны в менеджере отступов map.margin.Manager.

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

Пример:

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

setType

{vow.Promise} setType(type[, options])

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

Возвращает объект-promise. В случае корректного выполнения действия будет возвращен resolve без значения. В случае ошибки будет возвращен reject с описанием ошибки.

Параметры:

Параметр

Значение по умолчанию

Описание

type*

Тип: String|MapType

Тип карты. Может быть ключом или или экземпляром класса MapType. Список доступных ключей:

  • 'yandex#map' - тип карты "схема";
  • 'yandex#satellite' - тип карты "спутник";
  • 'yandex#hybrid' - тип карты "гибрид".

options

Тип: Object

Опции карты.

options.checkZoomRange

false

Тип: Boolean

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

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

Пример:

map.setType('yandex#hybrid', {
  checkZoomRange: true
}).then(function () {
  // Тип карты был установен с допустимым уровнем масштабирования.
}, this);

setZoom

{vow.Promise} setZoom(zoom[, options])

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

Возвращает объект-promise. В случае корректного выполнения действия будет возвращен resolve без значения. В случае ошибки будет возвращен reject с описанием ошибки.

Параметры:

Параметр

Значение по умолчанию

Описание

zoom*

Тип: Number

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

options

Тип: Object

Опции.

options.checkZoomRange

false

Тип: Boolean

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

options.duration

0

Тип: Number

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

options.useMapMargin

false

Тип: Boolean

Нужно ли учитывать отступы, которые были рассчитаны в менеджере отступов map.margin.Manager.

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

Пример:

myMap.setZoom(4, {duration: 1000});
Предыдущая
Следующая