YMaps.RouterEditor.DragAndDropEditor

Внимание. Маршрутизация доступна только в актуальных версиях API.

Как перейти на API 2.1

Расширяет YMaps.IControl.

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

Конструктор

Имя Описание
YMaps.RouterEditor.DragAndDropEditor(model, options) Создает экземпляр редактора маршрута.

Методы

Имя Описание
clear() Удаляет все текущие маршруты и точки.
startDrawing() Включает режим добавления точек маршрута. Точки маршрута добавляются щелчком мыши по карте, если их число не превышает максимально допустимого (передается в конструктор редактора с помощью options.maxPoints).
stopDrawing() Отключает режим добавления точек маршрута.

Наследуемые методы

Из YMaps.IControl:
onAddToMap, onRemoveFromMap

Подробное описание конструктора

YMaps.RouterEditor.DragAndDropEditor(model, options)

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

Пример:

// Создает экземпляры модели и редактора.
var routerModel = new YMaps.RouterEditor.RouterModel(),
    editor = new YMaps.RouterEditor.DragAndDropEditor(routerModel, {
            viaPointHintContent: 'Перетащите точку или удалите ее двойным щелчком',
            cursorHintContent: 'Перетащите метку, чтобы создать промежуточную точку',
            maxPoints: 3
        }
    );

// ПАрокладывает маршрут между станциями м.Белорусская и м.Лубянка c промежуточной точкой (37.602777, 55.745144)
// и передает его редактору посредством модели.
routerModel.getRouteProvider().route({
        wayPoints: ['Белорусская', new YMaps.GeoPoint(37.602777, 55.745144), 'Лубянка'],
        viaPoints: [1],
        options: { boundedBy: map.getBounds() } // область для геокодирования
    },
    function (rr) {
        // Устанавливает полученный результат в качестве модели. Модель оповестит редактор о новом маршруте.
        routerModel.setRouterResult(rr);
    }
);

// Добавляет редактор на карту.
map.addControl(editor);

Параметры:

Имя Тип Необязательный По умолчанию Описание
model YMaps.RouterEditor.RouterModel Ссылка на модель.
options Object Опции редактора.
options.cursorStyle YMaps.Style|String Указатель или ключ стиля для курсора.
options.cursorHintContent String Подсказка для курсора.
options.viaPointHintContent String Подсказка для промежуточной точки маршрута.
options.maxPoints Number Максимальное число точек при прокладке маршрута пользователем.

Подробное описание методов

clear

clear()

Удаляет все текущие маршруты и точки.

startDrawing

startDrawing()

Включает режим добавления точек маршрута. Точки маршрута добавляются щелчком мыши по карте, если их число не превышает максимально допустимого (передается в конструктор редактора с помощью options.maxPoints).

Пример:

// Создание экземпляров модели и редактора.
var routerModel = new YMaps.RouterEditor.RouterModel(),
    editor = new YMaps.RouterEditor.DragAndDropEditor(routerModel, {
            viaPointHintContent: 'Перетащите точку или удалите ее двойным щелчком',
            cursorHintContent: 'Перетащите метку, чтобы создать промежуточную точку',
            maxPoints: 3
        }
    );

// Добавляет редактор на карту.
map.addControl(editor);
// Включает режим добавления точек маршрута с помощью щелчка мыши по карте.
editor.startDrawing();

stopDrawing

stopDrawing()

Отключает режим добавления точек маршрута.