Polyline

Расширяет GeoObject.

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

См.: GeoObject geometry.LineString

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

Конструктор

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

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

Параметры:

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

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

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

properties

Тип: Object|IDataManager

Данные ломаной. Могут задаваться как экземпляр класса, реализующего интерфейс IDataManager, либо в виде хэша. При значениях опций по умолчанию геообъектом трактуются следующие поля данных:
  • hintContent - содержимое всплывающей подсказки ломаной;
  • balloonContent - содержимое балуна ломаной;
  • balloonContentHeader - содержимое заголовка балуна ломаной;
  • balloonContentBody - содержимое основой части балуна ломаной;
  • balloonContentFooter - содержимое нижней части балуна ломаной.
Поле balloonContent является кратким обозначением для поля balloonContentBody, но при одновременном задании balloonContentBody более приоритетен. Также вы можете дополнить данные ломаной своими собственными полями и использовать их, например, в макете хинта.
options

Тип: Object

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

Тип: String

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

options.draggablefalse

Тип: Boolean

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

options.hasBalloontrue

Тип: Boolean

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

options.hasHinttrue

Тип: Boolean

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

options.interactiveZIndexfalse

Тип: 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.opacity1

Тип: Number

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

options.openBalloonOnClicktrue

Тип: Boolean

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

options.openEmptyBalloonfalse

Тип: Boolean

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

options.openEmptyHintfalse

Тип: Boolean

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

options.openHintOnHovertrue

Тип: Boolean

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

options.pane"areas"

Тип: IPane|String

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

options.strokeColor"0066ffff"

Тип: String|String[]

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

options.strokeOpacity1

Тип: Number|Number[]

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

options.strokeStyle

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

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

options.strokeWidth1

Тип: Number|Number[]

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

options.syncOverlayInitfalse

Тип: Boolean

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

options.useMapMarginInDraggingtrue

Тип: Boolean

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

options.visibletrue

Тип: 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());

Поля

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

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

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

editorgeometryEditor.LineString

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

eventsevent.Manager

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

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

geometrygeometry.LineString

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

hintgeoObject.Hint

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

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

optionsoption.Manager

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

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

propertiesdata.Manager

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

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

statedata.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

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