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

Polyline

Расширяет GeoObject.

Ломаная линия. Представляет собой геообъект с геометрией geometry.LineString.

См.: GeoObject geometry.LineString

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

Конструктор

Polyline(geometry[, properties[, options]])

Создает экземпляр ломаной.

Параметры:

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

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

]no-highlight]

Тип: Number[][]|Object|ILineStringGeometry

Координаты вершин, хэш-объект с параметрами геометрии или ссылка на объект геометрии ломаной линии.

properties

Тип: Object|IDataManager

Данные ломаной. Могут задаваться как экземпляр класса, реализующего интерфейс IDataManager, либо в виде хэша. При значениях опций по умолчанию геообъектом трактуются следующие поля данных:

  • hintContent - содержимое всплывающей подсказки ломаной;
  • balloonContent - содержимое балуна ломаной;
  • balloonContentHeader - содержимое заголовка балуна ломаной;
  • balloonContentBody - содержимое основой части балуна ломаной;
  • balloonContentFooter - содержимое нижней части балуна ломаной.
Поле balloonContent является кратким обозначением для поля balloonContentBody, но при одновременном задании balloonContentBody более приоритетен. Также вы можете дополнить данные ломаной своими собственными полями и использовать их, например, в макете хинта.

options

Тип: Object

Опции ломаной. Используя этот параметр можно задавать как опции самой ломаной, так и опции ее составных частей:

options.cursor "pointer"

Тип: String

Вид курсора над ломаной.

options.draggable false

Тип: Boolean

Определяет возможность перетаскивания ломаной.

options.hasBalloon true

Тип: Boolean

Определяет наличие поля balloon у ломаной.

options.hasHint true

Тип: Boolean

Определяет наличие поля hint у ломаной.

options.interactiveZIndex false

Тип: Boolean

Включает режим автоматического изменения z-index ломаной в зависимости от ее состояния.

options.interactivityModel "default#geoObject"

Тип: String

Модель интерактивности. Доступные ключи и их значения перечислены в описании interactivityModel.storage.

options.lineStringOverlay "default#polyline"

Тип: String|Function

Ключ-идентификатор из хранилища overlay.storage или класс оверлея. Функция-генератор принимает три параметра:

  • geometry: IPixelLineStringGeometry - непосредственно пиксельная геометрия;
  • data: IDataManager или Object - данные оверлея;
  • options: Object - опции оверлея.
Функция возвращает объект vow.Promise.

options.opacity 1

Тип: Number

Прозрачность.

options.openBalloonOnClick true

Тип: Boolean

Определяет, показывать ли балун при щелчке на ломаной.

options.openEmptyBalloon false

Тип: Boolean

Определяет, показывать ли пустой балун при щелчке на ломаной.

options.openEmptyHint false

Тип: Boolean

Определяет, показывать ли хинт при наведении указателя мыши на ломаную.

options.openHintOnHover true

Тип: Boolean

Определяет, показывать ли хинт при наведении указателя мыши на ломаную.

options.pane "areas"

Тип: IPane|String

Ключ пейна, в который помещается оверлей ломаной.

options.strokeColor "0066ffff"

Тип: String|String[]

Цвет линии или обводки. Можно задать несколько значений для множественной обводки.

options.strokeOpacity 1

Тип: Number|Number[]

Прозрачность линии или обводки. Можно задать несколько значений для множественной обводки.

options.strokeStyle

Тип: String|Object|String[]|Object[]

Стиль линии или обводки. Можно задать несколько значений для множественной обводки.

options.strokeWidth 1

Тип: Number|Number[]

Толщина линии или обводки. Можно задать несколько значений для множественной обводки.

options.syncOverlayInit false

Тип: Boolean

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

options.useMapMarginInDragging true

Тип: Boolean

При перетаскивании объекта к краю карты происходит автоматическое изменение центра карты. Нужно ли учитывать отступы карты при автоматическом смещении центра карты map.margin.Manager.

options.visible true

Тип: Boolean

Определяет видимость ломаной.

options.zIndex

Тип: Number

z-index ломаной в обычном состоянии. Наименее приоритетный.

options.zIndexActive

Тип: Number

z-index ломаной с открытым балуном. Наиболее приоритетный.

options.zIndexDrag

Тип: Number

z-index ломаной при перетаскивании.

options.zIndexHover

Тип: Number

z-index ломаной при наведении на него указателя мыши.

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

Пример:

// Создаем ломаную линию.
var polyline = new ymaps.Polyline([
    [-80, 60], [-90, 50], [-60, 40], [-80, 60]
], {
    hintContent: "Ломаная линия"
}, {
    draggable: true,
    strokeColor: '#000000',
    strokeWidth: 4,
    // Первой цифрой задаем длину штриха. Второй цифрой задаем длину разрыва.
    strokeStyle: '1 5'
});
// Добавляем линию на карту.
myMap.geoObjects.add(polyline);
// Устанавливаем карте границы линии.
myMap.setBounds(polyline.geometry.getBounds());

Поля

ИмяТипОписание
balloon geoObject.Balloon

Балун геообъекта.

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

editor geometryEditor.LineString

Редактор геометрии "Ломаная линия".

events event.Manager

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

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

geometry geometry.LineString

Геометрия типа "Ломаная линия".

hint geoObject.Hint

Хинт геообъекта.

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

options option.Manager

Менеджер опций геообъекта.

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

properties data.Manager

Менеджер данных геообъекта.

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

state data.Manager

Состояние геообъекта. Определяется следующими полями:

  • active: Boolean - признак того, что на геообъекте открыт балун;
  • hover: Boolean - признак того, что в данный момент на геообъект наведен указатель мыши;
  • drag: Boolean - признак того, что в данный момент геообъект перетаскивается.

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

События

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

Закрытие балуна. Экземпляр класса Event.

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

balloonopen

Открытие балуна на геообъекте. Экземпляр класса Event.

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

beforedrag

Событие, предшествующее событию drag. Экземпляр класса Event. Имена полей, доступных через метод Event.get:

  • position - координаты относительно документа. Массива вида [pageX, pageY];
  • pixelOffset - массив из двух чисел, описывающий пиксельный сдвиг на данном шаге;
  • domEvent - исходное DOM-событие (в виде объекта DomEvent), если оно имеется.
Имена методов, доступных через метод Event.callMethod:
  • setPixelOffset - метод, позволяющий скорректировать значение пиксельного сдвига, который будет фактически применен. В качестве аргумента принимает новый пиксельный сдвиг в виде массива из двух чисел.
Если у данного события вызвать метод Event.preventDefault, то последующее событие drag будет отменено.

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

beforedragstart

Событие, предшествующее событию dragstart. Экземпляр класса Event. Имена полей, доступных через метод Event.get:

  • position - координаты относительно документа. Массива вида [pageX, pageY];
  • domEvent - исходное DOM-событие (в виде объекта DomEvent), если оно имеется.
Если у данного события вызвать метод Event.preventDefault, то последующее перетаскивание, как и событие dragstart, будет отменено.

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

click

Однократное нажатие левой кнопки мыши на объекте. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

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

contextmenu

Вызов контекстного меню на элементе. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

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

dblclick

Двойное нажатие левой кнопки мыши на объекте. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

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

drag

Перетаскивание геообъекта. Экземпляр класса Event. Имена полей, доступных через метод Event.get:

  • position - координаты относительно документа. Массива вида [pageX, pageY];
  • pixelOffset - массив из двух чисел, описывающий пиксельный сдвиг на данном шаге;
  • domEvent - исходное DOM-событие (в виде объекта DomEvent), если оно имеется.

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

dragend

Завершение перетаскивания геообъекта. Экземпляр класса Event. Имена полей, доступных через метод Event.get:

  • position - координаты относительно документа. Массива вида [pageX, pageY];
  • domEvent - исходное DOM-событие (в виде объекта DomEvent), если оно имеется.

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

dragstart

Начало перетаскивания геообъекта. Экземпляр класса Event. Имена полей, доступных через метод Event.get:

  • position - координаты относительно документа. Массива вида [pageX, pageY];
  • domEvent - исходное DOM-событие (в виде объекта DomEvent), если оно имеется.

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

editorstatechange

Изменение состояния редактора геометрии геообъекта. Экземпляр класса Event. Имена полей, доступных через метод Event.get:

  • originalEvent - оригинальное событие редактора геометрии.

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

geometrychange

Изменение геометрии геообъекта. Экземпляр класса Event. Имена полей, доступных через метод Event.get:

  • originalEvent: IEvent - оригинальное событие геометрии.

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

hintclose

Закрытие хинта. Экземпляр класса Event.

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

hintopen

Открытие хинта на геообъекте. Экземпляр класса Event.

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

mapchange

Сменилась карта. Поля данных:

  • oldMap - старая карта;
  • newMap - новая карта.

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

mousedown

Нажатие кнопки мыши над объектом. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

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

mouseenter

Наведение курсора на объект. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

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

mouseleave

Вывод курсора за пределы объекта. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

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

mousemove

Перемещение курсора над объектом. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

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

mouseup

Отпускание кнопки мыши над объектом. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

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

multitouchend

Окончание мультисенсорного управления. Данное событие доступно только на устройствах, которые поддерживают множественные сенсорные прикосновения. Возвращает реализацию интерфейса IMultiTouchEvent.

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

multitouchmove

Повторящееся событие при мультисенсорном управлении. Данное событие доступно только на устройствах, которые поддерживают множественные сенсорные прикосновения. Возвращает реализацию интерфейса IMultiTouchEvent c информацией о прикосновениях. Определяет свойство touches, которое содержит список прикосновений. Каждое прикосновение описано объектом, которое содержит поля:

  • clientX - координата касания X относительно видимой области браузера;
  • clientY - координата касания Y относительно видимой области браузера;
  • pageX - координата касания X касания относительно начала документа;
  • pageY - координата касания Y касания относительно начала документа.

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

multitouchstart

Начало мультисенсорного управления. Данное событие доступно только на устройствах, которые поддерживают множественные сенсорные прикосновения. Возвращает реализацию интерфейса IMultiTouchEvent c информацией о прикосновениях. Определяет свойство touches, которое содержит список прикосновений. Каждое прикосновение описано объектом, которое содержит поля:

  • clientX - координата касания X относительно видимой области браузера;
  • clientY - координата касания Y относительно видимой области браузера;
  • pageX - координата касания X касания относительно начала документа;
  • pageY - координата касания Y касания относительно начала документа.

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

optionschange

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

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

overlaychange

Изменение оверлея геообъекта. Экземпляр класса Event. Имена полей, доступных через метод Event.get:

  • overlay: IOverlay|null - ссылка на оверлей;
  • oldOverlay: IOverlay|null - предыдущий оверлей геообъекта.

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

parentchange

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

Поля данных:

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

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

propertieschange

Изменение данных геообъекта. Экземпляр класса Event. Имена полей, доступных через метод Event.get:

  • originalEvent: IEvent - оригинальное событие менеджера данных.

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

wheel

Скролл мышкой. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

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

Методы

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

Map

Возвращает ссылку на карту.

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

getOverlay()

vow.Promise

Возвращает объект-обещание, который подтверждается объектом оверлея в момент его фактического создания, либо отклоняется с передачей соответствующей ошибки.

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

getOverlaySync()

IOverlay|null

Метод предоставляет синхронный доступ к оверлею.

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

getParent()

IParentOnMap|null

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

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

setParent(parent)

IChildOnMap

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

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

Описание полей

editor

Редактор геометрии "Ломаная линия".

geometry

Геометрия типа "Ломаная линия".