Документация
Справочник JavaScript API
2.1.64 (текущая версия)
collection
interactivityModel
Интерфейсы

behavior.RouteEditor

Расширяет IBehavior.

Поведение "редактор маршрутов".

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

Конструктор

behavior.RouteEditor()

Поля

ИмяТипОписание
events IEventManager

Менеджер событий.

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

options IOptionManager

Менеджер опций.

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

События

ИмяОписание
disable

Выключение поведения.

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

enable

Включение поведения.

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

optionschange

Изменение в опциях объекта.

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

parentchange

Сменился родительский объект.

Поля данных:

  • oldParent - старый родитель;
  • newParent - новый родитель.

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

routechange

Событие смены маршрута вследствие вызова метода setState или включения/выключения поведения. Старый и новый маршрут можно получить через свойства события 'oldRoute' и 'newRoute' соответственно.

Методы

ИмяВозвращаетОписание
disable()

Выключает поведение.

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

enable()

Включает поведение.

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

getParent()

IParentOnMap|null

Возвращает ссылку на родительский объект или null, если родительский элемент не был установлен.

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

getRoute()

router.Route

Возвращает маршрут.

getState()

String

Возвращает текущее состояние редактора маршрутов в закодированном виде.

isEnabled()

Boolean

Проверяет, включено ли поведение.

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

setParent(parent)

IChildOnMap

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

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

setState(state)

Восстанавливает состояние редактора маршрутов из закодированной строки. При установлении нового маршрута будет вызвано событие routechange.

Описание событий

routechange

Событие смены маршрута вследствие вызова метода setState или включения/выключения поведения. Старый и новый маршрут можно получить через свойства события 'oldRoute' и 'newRoute' соответственно.

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

getRoute

{router.Route} getRoute()

Возвращает маршрут.

getState

{String} getState()

Возвращает текущее состояние редактора маршрутов в закодированном виде.

setState

{} setState(state)

Восстанавливает состояние редактора маршрутов из закодированной строки. При установлении нового маршрута будет вызвано событие routechange.

Параметры:

ПараметрЗначение по умолчаниюОписание
state *
[no-highlight[

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

]no-highlight]

Тип: String|null

Закодированное состояние редактора маршрутов. Состояние задается в следующем формате: rt=точка1~точка2~точка3~точка4...&via=индексы-via-points Например, если закодированная строка выглядит так: "rt=50,30~42,35~45,32~40,30&via=1,2", это значит что путевыми точками маршрута должны быть "50,30" и "40,30", а промежуточными "42,35" и "45,32". Если параметр via не указывать, то маршрут будет состоять только из путевых точек.

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

Пример:

var behavior = map.behaviors.get('routeEditor');
behavior.events.add('routechange', function (e) {
   var newRoute = e.get('newRoute');
   alert(newRoute.getLength()); // длина нового маршрута
   setTimeout(function () {
       // удалить маршрут
       behavior.setState(null);
   })
});
behavior.setState('rt=55.874872,37.562677~55.92517867214157,37.62725433916199~55.920011490602526,37.6629269628905&via=1');