---
metadata:
  - name: generator
    content: Diplodoc Platform v5.64.2
alternate:
  - https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.Editor.md
  - https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md
  - href: https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md
    type: text/markdown
    title: Markdown version
  - href: https://yandex.com/dev/jsapi-v2-1/doc/ru/llms.txt?revision=r21950234
    rel: describedby
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.com/dev/jsapi-v2-1/doc/ru/llms.txt?revision=r21950234

# multiRouter.Editor

Расширяет [ICustomizable](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ICustomizable.md), [IEventEmitter](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IEventEmitter.md).

Редактор мультимаршрута.

[Конструктор](#constructor-summary) | [Поля ](#properties-summary) | [События ](#events-summary) | [Методы ](#methods-summary)

## Конструктор {#constructor-summary}

```javascript
multiRouter.Editor(multiRoute[, state[, options]])
```

Создает редактор мультимаршрута.

**Параметры:**

#|
|| **Параметр** | **Значение по умолчанию** | **Описание**  ||
|| [`multiRoute`](#param-multiRoute)[*](*star) | — | Тип: [multiRouter.MultiRoute](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.MultiRoute.md)

Редактируемый мультимаршрут. ||
|| [`state`](#param-state) | — | Тип: Object

Объект, описывающий начальное состояние редактора. Список доступных полей смотрите в описании [multiRouter.Editor.state](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#state). ||
|| [`options`](#param-options) | — | Тип: Object

Опции. ||
|| [`options.drawCursor`](#param-options.drawCursor) | — | Тип: Object

Тип курсора, который будет использоваться в режиме добавления новых путевых точек. ||
|| [`options.drawOver`](#param-options.drawOver) | true | Тип: Object

Разрешает ставить точки поверх объектов карты в режиме добавления новых путевых точек. ||
|| [`options.midPointsType`](#param-options.midPointsType) | "way" | Тип: String

Определяет тип добавляемых точек при перетаскивании маркера, появляющегося при наведении курсора мыши на активный маршрут. Может принимать одно из следующих строковых значений:
- "way" – добавлять путевые точки;
- "via" – добавлять транзитные точки.
Также смотрите описание поля addMidPoints менеджера состояния [multiRouter.Editor.state](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#state). ||
|#

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

## Поля {#properties-summary}

#|
|| **Имя** | **Тип** | **Описание** ||
|| [events](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IEventEmitter.md#events) | [IEventManager](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IEventManager.md) | Менеджер событий.

Унаследовано от [IEventEmitter](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IEventEmitter.md#events). ||
|| [options](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ICustomizable.md#options) | [IOptionManager](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IOptionManager.md) | Менеджер опций.

Унаследовано от [ICustomizable](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ICustomizable.md#options). ||
|| [state](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#state) | [data.Manager](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/data.Manager.md) | Менеджер состояния редактора маршрута.

Доступные поля:

- addWayPoints: Boolean - разрешает добавление новых путевых точек при клике на карту. Значение по умолчанию: false.
- dragWayPoints: Boolean - разрешает перетаскивание уже существующих путевых точек. Значение по умолчанию true.
- removeWayPoints: Boolean – разрешает удаление путевых точек по двойному клику по ним. Значение по умолчанию: false.
- dragViaPoints: Boolean - разрешает перетаскивание уже существующих транзитных точек. Значение по умолчанию true.
- removeViaPoints: Boolean – разрешает удаление транзитных точек по двойному клику по ним. Значение по умолчанию true.
- addMidPoints: Boolean - разрешает добавление промежуточных транзитных или путевых точек посредством перетаскивания маркера, появляющегося при наведении курсора мыши на активный маршрут. Тип добавляемых точек задается опцией midPointsType. Значение по умолчанию true. ||
- |#

## События {#events-summary}

#|
|| **Имя** | **Описание** ||
|| [beforemidpointadd](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#event-beforemidpointadd) | Событие, предшествующее событию midpointadd. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- coords: Number[] - координаты добавления промежуточной точки;
- pointType: String – идентификатор типа добавляемой промежуточной точки;
- insertIndex: Integer – индекс вставки промежуточной точки во множестве опорных точек мультимаршрута.
Имена методов, доступных через метод [Event.callMethod](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#callMethod):
- setPointType - метод, позволяющий задать тип добавляемой точки. В качестве аргумента принимает строковый идентификатор типа (смотрите описание опции midPointsType).
- setInsertIndex - метод, позволяющий скорректировать индекс вставки промежуточной точки, который будет фактически применен. В качестве аргумента принимает новый индекс.
Если у данного события вызвать метод [Event.preventDefault](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#preventDefault), то последующее добавление промежуточной точки маршрута, как и событие "midpointadd", будет отменено. ||
|| [beforemidpointdrag](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#event-beforemidpointdrag) | Событие, предшествующее событию midpointdrag. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- pixelOffset: Number[] - пиксельный сдвиг по осям на данном шаге;
Имена методов, доступных через метод [Event.callMethod](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#callMethod):
- setPixelOffset - метод, позволяющий скорректировать значение пиксельного сдвига, который будет фактически применен. В качестве аргумента принимает новый пиксельный сдвиг в виде массива из двух чисел.
Если у данного события вызвать метод [Event.preventDefault](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#preventDefault), то последующее событие "midpointdrag" будет отменено. ||
|| [beforemidpointpinshow](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#event-beforemidpointpinshow) | Событие, предшествующее событию midpointpinshow. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- pin: [Placemark](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Placemark.md) - ссылка на объект маркера;
- globalPixels: Number[] - глобальные пиксельные координаты маркера;
- segment: [multiRouter.driving.Segment](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.driving.Segment.md) – ссылка на сегмент маршрута, над которым появился маркер.
Если у данного события вызвать метод [Event.preventDefault](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#preventDefault), то последующее событие "midpointpinshow" будет отменено, а маркер будет скрыт. ||
|| [beforeviapointdrag](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#event-beforeviapointdrag) | Событие, предшествующее событию viapointdrag. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- pixelOffset: Number[] - пиксельный сдвиг по осям на данном шаге;
- viaPoint: [multiRouter.ViaPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.ViaPoint.md) – ссылка на объект перетаскиваемой транзитной точки.
Имена методов, доступных через метод [Event.callMethod](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#callMethod):
- setPixelOffset - метод, позволяющий скорректировать значение пиксельного сдвига, который будет фактически применен. В качестве аргумента принимает новый пиксельный сдвиг в виде массива из двух чисел.
Если у данного события вызвать метод [Event.preventDefault](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#preventDefault), то последующее событие "viapointdrag" будет отменено. ||
|| [beforeviapointdragstart](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#event-beforeviapointdragstart) | Событие, предшествующее событию viapointdragstart. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- domEvent: [DomEvent](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/DomEvent.md) – исходное DOM-событие, если оно имеется;
- viaPoint: [multiRouter.ViaPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.ViaPoint.md) – ссылка на объект перетаскиваемой транзитной точки.
Если у данного события вызвать метод [Event.preventDefault](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#preventDefault), то последующее перетаскивание, как и событие "viapointdragstart", будет отменено. ||
|| [beforeviapointremove](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#event-beforeviapointremove) | Событие, предшествующее событию viapointremove. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- viaPoint: [multiRouter.ViaPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.ViaPoint.md) - ссылка на объект удаляемой транзитной точки.
Если у данного события вызвать метод [Event.preventDefault](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#preventDefault), то удаление транзитной точки, как и последующее событие "viapointremove", будет отменено. ||
|| [beforewaypointadd](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#event-beforewaypointadd) | Событие, предшествующее событию waypointadd. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- coords: Number[] - координаты добавленной путевой точки.
Имена методов, доступных через метод [Event.callMethod](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#callMethod):
- setCoords - метод, позволяющий скорректировать координаты добавляемой путевой точки. В качестве аргумента принимает новые координаты в виде массива из двух чисел.
Если у данного события вызвать метод [Event.preventDefault](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#preventDefault), то добавление путевой точки, как и последующее событие "waypointadd", будет отменено. ||
|| [beforewaypointdrag](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#event-beforewaypointdrag) | Событие, предшествующее событию waypointdrag. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- pixelOffset: Number[] - пиксельный сдвиг по осям на данном шаге;
- wayPoint: [multiRouter.WayPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.WayPoint.md) – ссылка на объект перетаскиваемой путевой точки.
Имена методов, доступных через метод [Event.callMethod](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#callMethod):
- setPixelOffset - метод, позволяющий скорректировать значение пиксельного сдвига, который будет фактически применен. В качестве аргумента принимает новый пиксельный сдвиг в виде массива из двух чисел.
Если у данного события вызвать метод [Event.preventDefault](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#preventDefault), то последующее событие "waypointdrag" будет отменено. ||
|| [beforewaypointdragstart](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#event-beforewaypointdragstart) | Событие, предшествующее событию waypointdragstart. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- domEvent: [DomEvent](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/DomEvent.md) – исходное DOM-событие, если оно имеется;
- wayPoint: [multiRouter.WayPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.WayPoint.md) – ссылка на объект перетаскиваемой путевой точки.
Если у данного события вызвать метод [Event.preventDefault](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#preventDefault), то последующее перетаскивание, как и событие "waypointdragstart", будет отменено. ||
|| [beforewaypointremove](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#event-beforewaypointremove) | Событие, предшествующее событию waypointremove. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- wayPoint: [multiRouter.WayPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.WayPoint.md) - ссылка на объект удаляемой путевой точки.
Если у данного события вызвать метод [Event.preventDefault](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#preventDefault), то удаление путевой точки, как и последующее событие "waypointremove", будет отменено. ||
|| [midpointadd](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#event-midpointadd) | Добавление промежуточной точки маршрута. Тип точки определяется значением опции midPointsType. Экземпляр класса Event. Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- coords: Number[] - координаты добавления промежуточной точки;
- pointType: String – идентификатор типа добавляемой промежуточной точки;
- insertIndex: Integer – индекс вставки промежуточной точки во множестве опорных точек мультимаршрута. ||
|| [midpointdrag](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#event-midpointdrag) | Перетаскивание добавленной промежуточной точки. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- pixelOffset: Number[] - пиксельный сдвиг по осям на данном шаге; ||
|| [midpointdragend](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#event-midpointdragend) | Завершение перетаскивания добавленной промежуточной точки. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). ||
|| [midpointpinshow](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#event-midpointpinshow) | Появление перетаскиваемого маркера при наведении на активный маршрут. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- pin: [Placemark](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Placemark.md) - ссылка на объект маркера;
- globalPixels: Number[] - глобальные пиксельные координаты маркера;
- segment: [multiRouter.driving.Segment](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.driving.Segment.md) – ссылка на сегмент маршрута, над которым появился маркер. ||
|| [optionschange](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ICustomizable.md#event-optionschange) | Изменение в опциях объекта.

Унаследовано от [ICustomizable](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ICustomizable.md#event-optionschange). ||
|| [viapointdrag](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#event-viapointdrag) | Перетаскивание транзитной точки. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- pixelOffset: Number[] - пиксельный сдвиг по осям на данном шаге;
- viaPoint: [multiRouter.ViaPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.ViaPoint.md) – ссылка на объект перетаскиваемой транзитной точки. ||
|| [viapointdragend](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#event-viapointdragend) | Завершение перетаскивания транзитной точки. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- viaPoint: [multiRouter.ViaPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.ViaPoint.md) – ссылка на объект перетаскиваемой транзитной точки. ||
|| [viapointdragstart](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#event-viapointdragstart) | Начало перетаскивания транзитной точки. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- domEvent: [DomEvent](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/DomEvent.md) – исходное DOM-событие, если оно имеется;
- viaPoint: [multiRouter.ViaPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.ViaPoint.md) – ссылка на объект перетаскиваемой транзитной точки. ||
|| [viapointremove](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#event-viapointremove) | Удаление транзитной точки. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- viaPoint: [multiRouter.ViaPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.ViaPoint.md) - ссылка на объект удаленной транзитной точки. ||
|| [waypointadd](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#event-waypointadd) | Добавление путевой точки. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- coords: Number[] - координаты добавленной путевой точки. ||
|| [waypointdrag](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#event-waypointdrag) | Перетаскивание путевой точки. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- pixelOffset: Number[] - пиксельный сдвиг по осям на данном шаге;
- wayPoint: [multiRouter.WayPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.WayPoint.md) – ссылка на объект перетаскиваемой путевой точки. ||
|| [waypointdragend](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#event-waypointdragend) | Завершение перетаскивания путевой точки. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- wayPoint: [multiRouter.WayPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.WayPoint.md) – ссылка на объект перетаскиваемой путевой точки. ||
|| [waypointdragstart](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#event-waypointdragstart) | Начало перетаскивания путевой точки. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- domEvent: [DomEvent](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/DomEvent.md) – исходное DOM-событие, если оно имеется;
- wayPoint: [multiRouter.WayPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.WayPoint.md) – ссылка на объект перетаскиваемой путевой точки. ||
|| [waypointremove](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#event-waypointremove) | Удаление путевой точки. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- wayPoint: [multiRouter.WayPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.WayPoint.md) - ссылка на объект удаленной путевой точки. ||
- |#


## Методы {#methods-summary}

#|
|| **Имя** | **Возвращает** | **Описание** ||
|| [destroy](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#destroy)() | | Уничтожает редактор мультимаршрута. ||
|| [getMultiRoute](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.Editor.md#getMultiRoute)() | [multiRouter.MultiRoute](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.MultiRoute.md) | Возвращает ссылку на редактируемый мультимаршрут. ||
|#


## Описание полей {#field_detail}

### state {#state}

```javascript
{data.Manager} state
```

Менеджер состояния редактора маршрута.

Доступные поля:

- addWayPoints: Boolean - разрешает добавление новых путевых точек при клике на карту. Значение по умолчанию: false.
- dragWayPoints: Boolean - разрешает перетаскивание уже существующих путевых точек. Значение по умолчанию true.
- removeWayPoints: Boolean – разрешает удаление путевых точек по двойному клику по ним. Значение по умолчанию: false.
- dragViaPoints: Boolean - разрешает перетаскивание уже существующих транзитных точек. Значение по умолчанию true.
- removeViaPoints: Boolean – разрешает удаление транзитных точек по двойному клику по ним. Значение по умолчанию true.
- addMidPoints: Boolean - разрешает добавление промежуточных транзитных или путевых точек посредством перетаскивания маркера, появляющегося при наведении курсора мыши на активный маршрут. Тип добавляемых точек задается опцией midPointsType. Значение по умолчанию true.

## Описание событий {#event_detail}

### beforemidpointadd {#beforemidpointadd}

Событие, предшествующее событию midpointadd. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- coords: Number[] - координаты добавления промежуточной точки;
- pointType: String – идентификатор типа добавляемой промежуточной точки;
- insertIndex: Integer – индекс вставки промежуточной точки во множестве опорных точек мультимаршрута.
Имена методов, доступных через метод [Event.callMethod](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#callMethod):
- setPointType - метод, позволяющий задать тип добавляемой точки. В качестве аргумента принимает строковый идентификатор типа (смотрите описание опции midPointsType).
- setInsertIndex - метод, позволяющий скорректировать индекс вставки промежуточной точки, который будет фактически применен. В качестве аргумента принимает новый индекс.
Если у данного события вызвать метод [Event.preventDefault](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#preventDefault), то последующее добавление промежуточной точки маршрута, как и событие "midpointadd", будет отменено.

### beforemidpointdrag {#beforemidpointdrag}

Событие, предшествующее событию midpointdrag. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- pixelOffset: Number[] - пиксельный сдвиг по осям на данном шаге;
Имена методов, доступных через метод [Event.callMethod](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#callMethod):
- setPixelOffset - метод, позволяющий скорректировать значение пиксельного сдвига, который будет фактически применен. В качестве аргумента принимает новый пиксельный сдвиг в виде массива из двух чисел.
Если у данного события вызвать метод [Event.preventDefault](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#preventDefault), то последующее событие "midpointdrag" будет отменено.

### beforemidpointpinshow {#beforemidpointpinshow}

Событие, предшествующее событию midpointpinshow. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- pin: [Placemark](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Placemark.md) - ссылка на объект маркера;
- globalPixels: Number[] - глобальные пиксельные координаты маркера;
- segment: [multiRouter.driving.Segment](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.driving.Segment.md) – ссылка на сегмент маршрута, над которым появился маркер.
Если у данного события вызвать метод [Event.preventDefault](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#preventDefault), то последующее событие "midpointpinshow" будет отменено, а маркер будет скрыт.

### beforeviapointdrag {#beforeviapointdrag}

Событие, предшествующее событию viapointdrag. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- pixelOffset: Number[] - пиксельный сдвиг по осям на данном шаге;
- viaPoint: [multiRouter.ViaPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.ViaPoint.md) – ссылка на объект перетаскиваемой транзитной точки.
Имена методов, доступных через метод [Event.callMethod](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#callMethod):
- setPixelOffset - метод, позволяющий скорректировать значение пиксельного сдвига, который будет фактически применен. В качестве аргумента принимает новый пиксельный сдвиг в виде массива из двух чисел.
Если у данного события вызвать метод [Event.preventDefault](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#preventDefault), то последующее событие "viapointdrag" будет отменено.

### beforeviapointdragstart {#beforeviapointdragstart}

Событие, предшествующее событию viapointdragstart. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- domEvent: [DomEvent](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/DomEvent.md) – исходное DOM-событие, если оно имеется;
- viaPoint: [multiRouter.ViaPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.ViaPoint.md) – ссылка на объект перетаскиваемой транзитной точки.
Если у данного события вызвать метод [Event.preventDefault](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#preventDefault), то последующее перетаскивание, как и событие "viapointdragstart", будет отменено.

### beforeviapointremove {#beforeviapointremove}

Событие, предшествующее событию viapointremove. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- viaPoint: [multiRouter.ViaPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.ViaPoint.md) - ссылка на объект удаляемой транзитной точки.
Если у данного события вызвать метод [Event.preventDefault](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#preventDefault), то удаление транзитной точки, как и последующее событие "viapointremove", будет отменено.

### beforewaypointadd {#beforewaypointadd}

Событие, предшествующее событию waypointadd. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- coords: Number[] - координаты добавленной путевой точки.
Имена методов, доступных через метод [Event.callMethod](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#callMethod):
- setCoords - метод, позволяющий скорректировать координаты добавляемой путевой точки. В качестве аргумента принимает новые координаты в виде массива из двух чисел.
Если у данного события вызвать метод [Event.preventDefault](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#preventDefault), то добавление путевой точки, как и последующее событие "waypointadd", будет отменено.

### beforewaypointdrag {#beforewaypointdrag}

Событие, предшествующее событию waypointdrag. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- pixelOffset: Number[] - пиксельный сдвиг по осям на данном шаге;
- wayPoint: [multiRouter.WayPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.WayPoint.md) – ссылка на объект перетаскиваемой путевой точки.
Имена методов, доступных через метод [Event.callMethod](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#callMethod):
- setPixelOffset - метод, позволяющий скорректировать значение пиксельного сдвига, который будет фактически применен. В качестве аргумента принимает новый пиксельный сдвиг в виде массива из двух чисел.
Если у данного события вызвать метод [Event.preventDefault](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#preventDefault), то последующее событие "waypointdrag" будет отменено.

### beforewaypointdragstart {#beforewaypointdragstart}

Событие, предшествующее событию waypointdragstart. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- domEvent: [DomEvent](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/DomEvent.md) – исходное DOM-событие, если оно имеется;
- wayPoint: [multiRouter.WayPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.WayPoint.md) – ссылка на объект перетаскиваемой путевой точки.
Если у данного события вызвать метод [Event.preventDefault](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#preventDefault), то последующее перетаскивание, как и событие "waypointdragstart", будет отменено.

### beforewaypointremove {#beforewaypointremove}

Событие, предшествующее событию waypointremove. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- wayPoint: [multiRouter.WayPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.WayPoint.md) - ссылка на объект удаляемой путевой точки.
Если у данного события вызвать метод [Event.preventDefault](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#preventDefault), то удаление путевой точки, как и последующее событие "waypointremove", будет отменено.

### midpointadd  {#midpointadd}

Добавление промежуточной точки маршрута. Тип точки определяется значением опции midPointsType. Экземпляр класса Event. Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- coords: Number[] - координаты добавления промежуточной точки;
- pointType: String – идентификатор типа добавляемой промежуточной точки;
- insertIndex: Integer – индекс вставки промежуточной точки во множестве опорных точек мультимаршрута.

### midpointdrag {#midpointdrag}

Перетаскивание добавленной промежуточной точки. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- pixelOffset: Number[] - пиксельный сдвиг по осям на данном шаге;

### midpointdragend {#midpointdragend}

Завершение перетаскивания добавленной промежуточной точки. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md).

### midpointpinshow {#midpointpinshow}

Появление перетаскиваемого маркера при наведении на активный маршрут. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- pin: [Placemark](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Placemark.md) - ссылка на объект маркера;
- globalPixels: Number[] - глобальные пиксельные координаты маркера;
- segment: [multiRouter.driving.Segment](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.driving.Segment.md) – ссылка на сегмент маршрута, над которым появился маркер.

### viapointdrag  {#viapointdrag}

Перетаскивание транзитной точки. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- pixelOffset: Number[] - пиксельный сдвиг по осям на данном шаге;
- viaPoint: [multiRouter.ViaPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.ViaPoint.md) – ссылка на объект перетаскиваемой транзитной точки.

### viapointdragend {#viapointdragend}

Завершение перетаскивания транзитной точки. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- viaPoint: [multiRouter.ViaPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.ViaPoint.md) – ссылка на объект перетаскиваемой транзитной точки.

### viapointdragstart {#viapointdragstart}

Начало перетаскивания транзитной точки. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- domEvent: [DomEvent](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/DomEvent.md) – исходное DOM-событие, если оно имеется;
- viaPoint: [multiRouter.ViaPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.ViaPoint.md) – ссылка на объект перетаскиваемой транзитной точки.

### viapointremove {#viapointremove}

Удаление транзитной точки. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- viaPoint: [multiRouter.ViaPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.ViaPoint.md) - ссылка на объект удаленной транзитной точки.

### waypointadd {#waypointadd}

Добавление путевой точки. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- coords: Number[] - координаты добавленной путевой точки.

### waypointdrag {#waypointdrag}

Перетаскивание путевой точки. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- pixelOffset: Number[] - пиксельный сдвиг по осям на данном шаге;
- wayPoint: [multiRouter.WayPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.WayPoint.md) – ссылка на объект перетаскиваемой путевой точки.

### waypointdragend {#waypointdragend}

Завершение перетаскивания путевой точки. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- wayPoint: [multiRouter.WayPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.WayPoint.md) – ссылка на объект перетаскиваемой путевой точки.

### waypointdragstart {#waypointdragstart}

Начало перетаскивания путевой точки. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- domEvent: [DomEvent](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/DomEvent.md) – исходное DOM-событие, если оно имеется;
- wayPoint: [multiRouter.WayPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.WayPoint.md) – ссылка на объект перетаскиваемой путевой точки.

### waypointremove {#waypointremove}

Удаление путевой точки. Экземпляр класса [Event](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md). Имена полей, доступных через метод [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Event.md#get):
- wayPoint: [multiRouter.WayPoint](https://yandex.com/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/multiRouter.WayPoint.md) - ссылка на объект удаленной путевой точки.

## Описание методов {#method_detail}

### destroy {#destroy}

```javascript
{} destroy()
```

Уничтожает редактор мультимаршрута.

### getMultiRoute {#getMultiRoute}

```javascript
{multiRouter.MultiRoute} getMultiRoute()
```

**Возвращает** ссылку на редактируемый мультимаршрут.

<!-- XLIFF_FARM_NWU2ZDQ5_CACHING -->

[*star]: Обязательный параметр.