Обработчики управляют реакцией карты на действия пользователя. Доступ к ним осуществляется через свойства объекта map.
Каждый обработчик поддерживает методы:
enable(options?) — включитьdisable() — отключитьisEnabled() — возвращает true, если обработчик включёнisActive() — возвращает true, если обработчик активен в данный моментmap.boxZoom — масштабирование выделением прямоугольной области. Активируется нажатием Shift и перетаскиванием курсора.
map.boxZoom.disable();
map.boxZoom.enable();
map.scrollZoom — масштабирование прокруткой колёсика мыши или жестом на трекпаде.
| Метод | Описание |
|---|---|
enable(options?) |
Параметр around: 'center' — масштабировать вокруг центра карты |
setWheelZoomRate(rate) |
Скорость масштабирования колёсиком (по умолчанию 1/450) |
setZoomRate(rate) |
Скорость масштабирования трекпадом (по умолчанию 1/100) |
// Включить масштабирование вокруг центра карты
map.scrollZoom.enable({ around: 'center' });
// Замедлить масштабирование колёсиком
map.scrollZoom.setWheelZoomRate(1/600);
// Ускорить масштабирование трекпадом
map.scrollZoom.setZoomRate(1/25);
map.dragPan — панорамирование карты перетаскиванием курсора.
Параметр enable() |
Описание |
|---|---|
linearity |
Коэффициент масштабирования скорости перетаскивания |
easing |
Функция сглаживания для map.panTo при перетаскивании |
maxSpeed |
Максимальная скорость инерции |
deceleration |
Скорость замедления после отпускания |
map.dragPan.enable({
linearity: 0.3,
maxSpeed: 1400,
deceleration: 2500
});
map.dragRotate — вращение карты перетаскиванием с зажатой правой кнопкой мыши или клавишей Ctrl.
map.dragRotate.disable();
map.dragRotate.enable();
map.keyboard — управление картой с клавиатуры.
| Клавиши | Действие |
|---|---|
= / + |
Увеличить масштаб на 1 |
Shift + = / + |
Увеличить масштаб на 2 |
- |
Уменьшить масштаб на 1 |
Shift + - |
Уменьшить масштаб на 2 |
| Стрелки | Панорамирование на 100 пикселей |
Shift + ← / → |
Изменить поворот на 15° |
Shift + ↑ / ↓ |
Изменить наклон на 10° |
| Метод | Описание |
|---|---|
enable() |
Включить управление клавиатурой |
disable() |
Отключить управление клавиатурой |
enableRotation() |
Включить поворот с клавиатуры |
disableRotation() |
Отключить поворот, но оставить масштабирование |
map.doubleClickZoom — масштабирование двойным кликом или двойным тапом.
map.doubleClickZoom.disable();
map.doubleClickZoom.enable();
map.touchZoomRotate — масштабирование и вращение щипком (pinch) на сенсорном экране.
| Метод | Описание |
|---|---|
enable(options?) |
Параметр around: 'center' — масштабировать вокруг центра карты |
enableRotation() |
Включить вращение |
disableRotation() |
Отключить вращение, оставить масштабирование |
map.touchZoomRotate.enable({ around: 'center' });
map.touchZoomRotate.disableRotation();
map.touchPitch — наклон карты перетаскиванием двумя пальцами вверх/вниз.
map.touchPitch.disable();
map.touchPitch.enable();