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.
Список доступных ключей:
|
state.zoom | — | Тип: Number Коэффициент масштабирования карты. Должен быть задан совместно со state.center. |
options | — | Тип: Object Опции карты. Через опции карты можно задавать настройки как самой карты,
так и добавленных на неё объектов:
|
options.adjustZoomOnTypeChange | false | Тип: Number Выбранного типа карты с текущим кооэффициентом масштабирования тайлов может не оказаться. При значении true кооэффициент масштабирования будет изменен на ближаший допустимый. |
options.autoFitToViewport | 'ifNull' | Тип: String Автоматическое слежение за контейнером карты.
По умолчанию карта перестроится автоматически в случае, когда она инициализируется из скрытого контейнера,
либо мы программно поменяли его размеры, иначе необходимо вызвать map.container.fitToViewport.
Доступны следующие значения:
|
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.
Список доступных ключей:
|
state.zoom | — | Тип: Number Коэффициент масштабирования карты. Должен быть задан совместно со state.center. |
options | — | Тип: Object Опции карты. Через опции карты можно задавать настройки как самой карты,
так и добавленных на неё объектов:
|
options.adjustZoomOnTypeChange | false | Тип: Number Выбранного типа карты с текущим кооэффициентом масштабирования тайлов может не оказаться. При значении true кооэффициент масштабирования будет изменен на ближаший допустимый. |
options.autoFitToViewport | 'ifNull' | Тип: String Автоматическое слежение за контейнером карты.
По умолчанию карта перестроится автоматически в случае, когда она инициализируется из скрытого контейнера,
либо мы программно поменяли его размеры, иначе необходимо вызвать map.container.fitToViewport.
Доступны следующие значения:
|
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:
|
actionbreak | Событие, возникающее при досрочном прекращении шага
действия (например, из-за выполнения другого действия
или нового шага того же действия).
Экземпляр класса Event.
Имена полей, доступных через метод Event.get:
|
actionend | Окончание плавного движения карты.
Экземпляр класса Event.
Имена полей, доступных через метод Event.get:
|
actiontick | Начало исполнения нового шага плавного движения (например, сдвиг карты
пользователем или шаг анимации плавного масштабирования).
Экземпляр класса Event.
Имена полей, доступных через метод Event.get:
|
actiontickcomplete | Окончание исполнения шага плавного движения.
Экземпляр класса Event.
Имена полей, доступных через метод Event.get:
|
balloonclose | Закрыт балун |
balloonopen | Открыт балун на карте.
Экземпляр класса Event.
Имена полей, доступных через метод Event.get:
|
boundschange | Событие изменения области просмотра карты (в результате изменения
центра или уровня масштабирования).
Экземпляр класса Event.
Имена полей, доступных через метод Event.get:
|
click | Однократное нажатие левой кнопки мыши на объекте. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager. Унаследовано от IDomEventEmitter. |
contextmenu | Вызов контекстного меню на элементе. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager. Унаследовано от IDomEventEmitter. |
dblclick | Двойное нажатие левой кнопки мыши на объекте. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager. Унаследовано от IDomEventEmitter. |
destroy | Карта уничтожена. |
hinthide | Скрыт хинт. |
hintshow | Показан хинт на карте.
Экземпляр класса Event.
Имена полей, доступных через метод Event.get:
|
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:
|
typechange | Изменился тип карты.
Экземпляр класса Event.
Имена полей, доступных через метод Event.get:
|
wheel | Скролл мышкой. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager. Унаследовано от IDomEventEmitter. |
Имя | Описание |
---|---|
actionbegin | Началось новое плавное движение карты.
Экземпляр класса Event.
Имена полей, доступных через метод Event.get:
|
actionbreak | Событие, возникающее при досрочном прекращении шага
действия (например, из-за выполнения другого действия
или нового шага того же действия).
Экземпляр класса Event.
Имена полей, доступных через метод Event.get:
|
actionend | Окончание плавного движения карты.
Экземпляр класса Event.
Имена полей, доступных через метод Event.get:
|
actiontick | Начало исполнения нового шага плавного движения (например, сдвиг карты
пользователем или шаг анимации плавного масштабирования).
Экземпляр класса Event.
Имена полей, доступных через метод Event.get:
|
actiontickcomplete | Окончание исполнения шага плавного движения.
Экземпляр класса Event.
Имена полей, доступных через метод Event.get:
|
balloonclose | Закрыт балун |
balloonopen | Открыт балун на карте.
Экземпляр класса Event.
Имена полей, доступных через метод Event.get:
|
boundschange | Событие изменения области просмотра карты (в результате изменения
центра или уровня масштабирования).
Экземпляр класса Event.
Имена полей, доступных через метод Event.get:
|
click | Однократное нажатие левой кнопки мыши на объекте. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager. Унаследовано от IDomEventEmitter. |
contextmenu | Вызов контекстного меню на элементе. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager. Унаследовано от IDomEventEmitter. |
dblclick | Двойное нажатие левой кнопки мыши на объекте. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager. Унаследовано от IDomEventEmitter. |
destroy | Карта уничтожена. |
hinthide | Скрыт хинт. |
hintshow | Показан хинт на карте.
Экземпляр класса Event.
Имена полей, доступных через метод Event.get:
|
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:
|
typechange | Изменился тип карты.
Экземпляр класса Event.
Имена полей, доступных через метод Event.get:
|
wheel | Скролл мышкой. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager. Унаследовано от IDomEventEmitter. |
Методы
Имя | Возвращает | Описание |
---|---|---|
destroy() | Уничтожает карту. | |
getBounds() | Number[][] | Returns двумерный массив геокоординат левого нижнего и правого верхнего углов области показа карты. |
getCenter() | Number[] | Returns географические координаты текущего центра карты. |
getGlobalPixelCenter() | Number[] | Returns глобальные пиксельные координаты текущего центра карты. |
getType() | String|MapType | Returns текущий тип карты. |
getZoom() | Number | Returns текущий коэффициент масштабирования карты. |
panTo(center, options) | Устанавливает центр карты. Если передан массив точек, то карта будет перемещаться от одной точки к другой. | |
setBounds(bounds[, options]) | Позиционирует карту для показа переданного района. | |
setCenter(center[, zoom[, options]]) | Устанавливает центр и коэффициент масштабирования карты. Центр задается в географических координатах. | |
setGlobalPixelCenter(globalPixelCenter[, zoom[, options]]) | Устанавливает центр и коэффициент масштабирования карты. Центр задается в глобальных пиксельных координатах. | |
setType(type) | Устанавливает тип карты. | |
setZoom(zoom[, options]) | Устанавливает коэффициент масштабирования карты. |
Имя | Возвращает | Описание |
---|---|---|
destroy() | Уничтожает карту. | |
getBounds() | Number[][] | Returns двумерный массив геокоординат левого нижнего и правого верхнего углов области показа карты. |
getCenter() | Number[] | Returns географические координаты текущего центра карты. |
getGlobalPixelCenter() | Number[] | Returns глобальные пиксельные координаты текущего центра карты. |
getType() | String|MapType | Returns текущий тип карты. |
getZoom() | Number | Returns текущий коэффициент масштабирования карты. |
panTo(center, options) | Устанавливает центр карты. Если передан массив точек, то карта будет перемещаться от одной точки к другой. | |
setBounds(bounds[, options]) | Позиционирует карту для показа переданного района. | |
setCenter(center[, zoom[, options]]) | Устанавливает центр и коэффициент масштабирования карты. Центр задается в географических координатах. | |
setGlobalPixelCenter(globalPixelCenter[, zoom[, options]]) | Устанавливает центр и коэффициент масштабирования карты. Центр задается в глобальных пиксельных координатах. | |
setType(type) | Устанавливает тип карты. | |
setZoom(zoom[, options]) | Устанавливает коэффициент масштабирования карты. |
Описание полей
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
Балун карты.
Пример:
myMap.balloon.open(myMap.getCenter(), {
content: 'Hello Yandex!'
}, {
closeButton: true
});
behaviors
{map.behavior.Manager} behaviors
Менеджер поведений карты. Позволяет включать и выключать поведения, а также предоставляет доступ к их методам и свойствам.
Пример:
// Включим масштабирование колесом мыши
myMap.behaviors.enable('scrollZoom');
container
{map.Container} container
Контейнер карты.
Пример:
// Подгоним размер карты под новый размер контейнера
// (например, если изменилась верстка страницы или карта была инициализирована
// в скрытом состоянии)
map.container.fitToViewport();
controls
{map.control.Manager} 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
{util.cursor.Manager} cursors
Менеджер курсоров карты.
events
{event.PriorityManager} 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
{map.layer.Manager} layers
Менеджер слоёв карты.
См.: Layer
Пример:
// Добавим слой пользовательских тайлов на карту
map.layers.add(new ymaps.Layer('http://some.server/tiles?&c'));
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
- action - запущенное действие.
actionbreak
- action - действие.
actionend
- action - остановленное действие.
actiontick
- 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
- action - выполняемое в данный момент действие;
- tick - описание шага действия в виде объекта с полями globalPixelCenter, zoom, duration и timingFunction.
balloonclose
Закрыт балун
balloonopen
- balloon - экземпляр балуна.
boundschange
- 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
- hint - экземпляр хинта.
optionschange
Изменились опции карты.
sizechange
- oldSize - предыдущий размер карты;
- newSize - новый размер карты.
typechange
- 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
Устанавливает центр карты. Если передан массив точек, то карта будет перемещаться от одной точки к другой.
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
Позиционирует карту для показа переданного района.
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
Устанавливает центр и коэффициент масштабирования карты. Центр задается в географических координатах.
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
Устанавливает тип карты.
Returns ссылку на себя.
Параметры:
Параметр | Значение по умолчанию | Описание |
---|---|---|
type * | — | Тип: String|MapType Тип карты. Может быть ключом или или экземпляром класса MapType.
Список доступных ключей:
|
* Обязательный параметр/опция.
Пример:
myMap.setType('yandex#hybrid');
setZoom
Устанавливает коэффициент масштабирования карты.
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});