YMaps.Polyline

Расширяет YMaps.IInteractiveGeoObject, YMaps.IOverlay.

Ломаная линия.

См.: Добавление ломаной на карту

Конструктор

Имя Описание
YMaps.Polyline(path, options) Создает ломаную линию.

Поля

Имя Описание
Events Список обрабатываемых событий ломаной линии.

Наследуемые поля

Из YMaps.IGeoObject:
description, id, metaDataProperty, name

События

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

Добавление ломаной линии на карту.

BalloonClose

Закрытие балуна, открытого над ломаной линией.

BalloonOpen

Открытие балуна ломаной линии.

Click

Щелчок мыши по ломаной линии.

DblClick

Двойной щелчок мыши по ломаной линии.

Drag

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

DragEnd

Закончено перетаскивание ломаной линии.

DragStart

Началось перетаскивание ломаной линии (если разрешено).

MouseEnter

Курсор наведен на ломаную линию.

MouseLeave

Курсор убран с ломаной линии.

MouseMove

Движение курсора мышкой в пределах ломаной линии.

PositionChange

Изменение координат линии (например, с помощью метода YMaps.Polyline.addPoint).

RemoveFromMap

Удаление ломаной линии с карты.

StartDrawing

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

StartEditing

Включение режима редактирования линии.

StopDrawing

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

StopEditing

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

Методы

Имя Статический Возвращает Описание
addPoint(point, index) Добавляет одну или несколько вершин в линию. По умолчанию вершины добавляются в конец линии.
fromEncodedPoints(encodedPoints, levels, options, coordSystem) YMaps.Polyline Создает ломаную линию из массива ее вершин, закодированных в Base64.
getClosestPoint(anchorPoint) Object|null Ищет на ломаной линии точку, ближайшую к anchorPoint. Возвращает объект, содержащий координаты ближайшей точки и индекс начальной вершины сегмента ломаной, на котором лежит найденная точка. Если ломаная не содержит точек, возвращает null.
getCoordPath() YMaps.CoordPath Возвращает объект, управляющий множеством вершин ломаной линии.
getEditingOptions() YMaps.PolylineEditingOptions Возвращает опции режима редактирования ломаной линии.
getMap() YMaps.Map Возвращает указатель на карту, в которую добавлена ломаная линия.
getNumPoints() Integer Возвращает количество вершин в ломаной линии.
getOptions() YMaps.PolylineOptions Возвращает опции ломаной линии.
getPixelPoints(options) YMaps.Point[] Возвращает информацию об отображении контуров ломаной линии.
getPoint(index) YMaps.ICoordPoint Возвращает координаты вершины по ее индексу.
getPoints() YMaps.ICoordPoint[] Возвращает координаты вершин линии.
isDrawing() Boolean Проверяет, находится ли ломаная линия в режиме рисования.
isEditing() Boolean Проверяет, находится ли ломаная линия в режиме редактирования.
removePoint(index) YMaps.ICoordPoint Удаляет из линии вершину с заданным индексом.
setEditingOptions(options) Устанавливает опции режима редактирования ломаной линии.
setOptions(options, restoreDefault) Устанавливает опции ломаной линии.
setPoints(points) Устанавливает координаты вершин линии.
splicePoints(index, number) YMaps.ICoordPoint[] Удаляет вершины из ломаной линии. Если необходимо, вставляет на их место другие вершины. Координаты вершин, которые будут вставлены вместо удаленных, передаются как дополнительные параметры после параметра number.
startEditing() Включает режим редактирования ломаной линии.
stopEditing() Отключает режим редактирования ломаной линии.

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

Из YMaps.IOverlay:
onAddToMap, onMapUpdate, onRemoveFromMap
Из YMaps.IInteractiveGeoObject:
closeBalloon, getBalloon, getBalloonContent, getBalloonOptions, getHintContent, getHintOptions, openBalloon, setBalloonContent, setBalloonOptions, setHintContent, setHintOptions, update
Из YMaps.IGeoObject:
getBounds, getComputedStyle, getParentGroup, getStyle, onAddToGroup, onRemoveFromGroup, setBounds, setStyle

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

YMaps.Polyline(path, options)

Создает ломаную линию.

См.: Добавление ломаной на карту

Пример:

// 
var line = new YMaps.Polyline([
    new YMaps.GeoPoint(37.77751,55.76578),
    new YMaps.GeoPoint(37.67751,55.86578),
    new YMaps.GeoPoint(37.41321,55.92685)
], {
    geodesic: true
});
map.addOverlay(line);

Параметры:

Имя Тип Необязательный По умолчанию Описание
path YMaps.ICoordPoint[]|YMaps.CoordPath Массив координат, либо указатель на объект типа YMaps.CoordPath, определяющий набор вершин ломаной линии.
options YMaps.PolylineOptions Опции ломаной линии.

Подробное описание полей

Events

Object Events

Список обрабатываемых событий ломаной линии.

Подробное описание событий

AddToMap

AddToMap

Добавление ломаной линии на карту.

В callback-функцию передается указатель на линию, для которой был вызван обработчик.

BalloonClose

BalloonClose

Закрытие балуна, открытого над ломаной линией.

В callback-функцию передается указатель на линию, для которой был вызван обработчик.

BalloonOpen

BalloonOpen

Открытие балуна ломаной линии.

В callback-функцию передается указатель на линию, для которой был вызван обработчик.

Click

Click

Щелчок мыши по ломаной линии.

В callback-функцию передаются два аргумента:

  • указатель на линию, для которой был вызван обработчик;
  • указатель на объект события мыши YMaps.MouseEvent.

DblClick

DblClick

Двойной щелчок мыши по ломаной линии.

В callback-функцию передаются два аргумента:

  • указатель на линию, для которой был вызван обработчик;
  • указатель на объект события мыши YMaps.MouseEvent.

Drag

Drag

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

В callback-функцию передаются два аргумента:

  • указатель на ломаную линию, для которой был вызван обработчик;
  • объект YMaps.Point со значением смещения ломаной линии в пикселах относительно ее предыдущего положения.

DragEnd

DragEnd

Закончено перетаскивание ломаной линии.

В callback-функцию передается указатель на ломаную линию, для которой был вызван обработчик.

DragStart

DragStart

Началось перетаскивание ломаной линии (если разрешено).

В callback-функцию передается указатель на ломаную линию, для которой был вызван обработчик.

MouseEnter

MouseEnter

Курсор наведен на ломаную линию.

В callback-функцию передаются два аргумента:

  • указатель на линию, для которой был вызван обработчик;
  • указатель на объект события мыши YMaps.MouseEvent.

MouseLeave

MouseLeave

Курсор убран с ломаной линии.

В callback-функцию передаются два аргумента:

  • указатель на линию, для которой был вызван обработчик;
  • указатель на объект события мыши YMaps.MouseEvent.

MouseMove

MouseMove

Движение курсора мышкой в пределах ломаной линии.

В callback-функцию передаются два аргумента:

  • указатель на линию, для которой был вызван обработчик;
  • указатель на объект события мыши YMaps.MouseEvent.

PositionChange

PositionChange

Изменение координат линии (например, с помощью метода YMaps.Polyline.addPoint).

В callback-функцию передается указатель на линию, для которой был вызван обработчик.

RemoveFromMap

RemoveFromMap

Удаление ломаной линии с карты.

В callback-функцию передается указатель на линию, для которой был вызван обработчик.

StartDrawing

StartDrawing

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

В callback-функцию передается указатель на линию, для которой был вызван обработчик.

StartEditing

StartEditing

Включение режима редактирования линии.

В callback-функцию передается указатель на линию, для которой был вызван обработчик.

StopDrawing

StopDrawing

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

В callback-функцию передается указатель на линию, для которой был вызван обработчик.

StopEditing

StopEditing

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

В callback-функцию передается указатель на линию, для которой был вызван обработчик.

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

addPoint

addPoint(point, index)

Добавляет одну или несколько вершин в линию. По умолчанию вершины добавляются в конец линии.

Параметры:

Имя Тип Необязательный По умолчанию Описание
point YMaps.ICoordPoint|YMaps.ICoordPoint[] Координата вершины или массив координат.
index Integer Позиция, в которую нужно добавить вершину.

fromEncodedPoints

{YMaps.Polyline} fromEncodedPoints(encodedPoints, levels, options, coordSystem)

Создает ломаную линию из массива ее вершин, закодированных в Base64.

См.: Кодирование вершин ломаной

Пример:

// 
map.setCenter(new YMaps.GeoPoint(37.619, 55.753), 1);
var polyline = YMaps.Polyline.fromEncodedPoints(
    "-4aTAwItMQEI087-vuHkAICWmAA7S0wA_9LO_kNLTAABLTEBQUtMAIBpZ_8_S0wA-CwxAUBLTAAI087-PUtMAICWmABBS0wA_9LO_j5LTAA=",
    "BCCBCCBCCB"
);
map.addOverlay(polyline);

Параметры:

Имя Тип Необязательный По умолчанию Описание
encodedPoints String Закодированные координаты вершин линии.
levels String Строка кодов уровней. Для каждой вершины ломаной указывается масштаб, начиная с которого вершина становится не видна.
options YMaps.PolylineOptions Опции ломаной линии.
coordSystem YMaps.ICoordSystem YMaps.GeoCoordSystem Ссылка на координатную систему.

Возвращает:

Тип Описание
YMaps.Polyline Ломаную линию.

getClosestPoint

{Object|null} getClosestPoint(anchorPoint)
Ищет на ломаной линии точку, ближайшую к anchorPoint. Возвращает объект, содержащий координаты ближайшей точки и индекс начальной вершины сегмента ломаной, на котором лежит найденная точка. Если ломаная не содержит точек, возвращает null.

Пример:

var line = new YMaps.Polyline([
    new YMaps.GeoPoint(0, 0),
    new YMaps.GeoPoint(0, 20),
    new YMaps.GeoPoint(20, 20)
]);

map.addOverlay(line);

var closest = line.getClosestPoint(
    new YMaps.GeoPoint(-5, 10)
);

// closest.point будет содержать экземпляр YMaps.GeoPoint с координатами 0, 10.
// closest.index будет содержать 0.

Параметры:

Имя Тип Описание
anchorPoint YMaps.ICoordPoint Точка координатной системы, для которой расчитывается ближайшая точка на ломаной линии.

Возвращает:

Тип Описание
Object|null Объект с полями point (координаты ближайшей точки на ломаной) и index (индекс начальной вершины сегмента ломаной), или null.

getCoordPath

{YMaps.CoordPath} getCoordPath()

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

Возвращает:

Тип Описание
YMaps.CoordPath Объект множества вершин ломаной линии.

getEditingOptions

{YMaps.PolylineEditingOptions} getEditingOptions()

Возвращает опции режима редактирования ломаной линии.

Возвращает:

Тип Описание
YMaps.PolylineEditingOptions Опции режима редактирования.

getMap

{YMaps.Map} getMap()

Возвращает указатель на карту, в которую добавлена ломаная линия.

Возвращает:

Тип Описание
YMaps.Map Указатель на карту, в которую добавлена ломаная линия.

getNumPoints

{Integer} getNumPoints()

Возвращает количество вершин в ломаной линии.

Возвращает:

Тип Описание
Integer Количество вершин в ломаной линии.

getOptions

{YMaps.PolylineOptions} getOptions()

Возвращает опции ломаной линии.

Возвращает:

Тип Описание
YMaps.PolylineOptions Опции ломаной линии.

getPixelPoints

{YMaps.Point[]} getPixelPoints(options)

Возвращает информацию об отображении контуров ломаной линии.

Параметры:

Имя Тип Описание
options Object Объект опций. Может содержать следующие необязательные поля:
  • zoom {Integer} - учитывать только вершины, видимые при указанном в параметре значении коэффициента масштабирования. По умолчанию - при текущем коэффициенте масштабирования.
  • geodesic {Boolean} - флаг, указывающий, что в расчет пиксельных координат необходимо включить вершины геодезических кривых. По умолчанию берется значение опции YMaps.PolylineOptions.geodesic.

Возвращает:

Тип Описание
YMaps.Point[] Массив пиксельных координат, соответствующих вершинам ломаной линии.

getPoint

{YMaps.ICoordPoint} getPoint(index)

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

Параметры:

Имя Тип Описание
index Integer Индекс.

Возвращает:

Тип Описание
YMaps.ICoordPoint Координаты требуемой вершины.

getPoints

{YMaps.ICoordPoint[]} getPoints()

Возвращает координаты вершин линии.

Возвращает:

Тип Описание
YMaps.ICoordPoint[] Координаты вершин линии.

isDrawing

{Boolean} isDrawing()

Проверяет, находится ли ломаная линия в режиме рисования.

Возвращает:

Тип Описание
Boolean true - находится, false - не находится.

isEditing

{Boolean} isEditing()

Проверяет, находится ли ломаная линия в режиме редактирования.

Возвращает:

Тип Описание
Boolean true - находится, false - не находится.

removePoint

{YMaps.ICoordPoint} removePoint(index)

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

Параметры:

Имя Тип Описание
index Integer Индекс удаляемой вершины.

Возвращает:

Тип Описание
YMaps.ICoordPoint Координаты удаленной вершины.

setEditingOptions

setEditingOptions(options)

Устанавливает опции режима редактирования ломаной линии.

Параметры:

Имя Тип Описание
options YMaps.PolylineEditingOptions Опции режима редактирования.

setOptions

setOptions(options, restoreDefault)

Устанавливает опции ломаной линии.

Параметры:

Имя Тип Необязательный По умолчанию Описание
options YMaps.PolylineOptions Опции ломаной линии.
restoreDefault Boolean false Незаданные опции установить в значения по умолчанию.

setPoints

setPoints(points)

Устанавливает координаты вершин линии.

Параметры:

Имя Тип Описание
points YMaps.ICoordPoint[] Координаты вершин линии.

splicePoints

{YMaps.ICoordPoint[]} splicePoints(index, number)
Удаляет вершины из ломаной линии. Если необходимо, вставляет на их место другие вершины. Координаты вершин, которые будут вставлены вместо удаленных, передаются как дополнительные параметры после параметра number.

Примеры:

1.

// Удаляет вторую вершину ломаной.
polyline.splicePoints(1, 1);

2.

// Вставляет новую вершину во вторую позицию.
polyline.splicePoints(1, 0, new YMaps.GeoPoint(37.63, 55.75));

3.

// Заменяет вторую вершину ломаной на новую.
polyline.splicePoints(1, 1, new YMaps.GeoPoint(37.63, 55.75));

Параметры:

Имя Тип Описание
index Integer Индекс первой удаляемой вершины.
number Integer Количество удаляемых вершин.

Возвращает:

Тип Описание
YMaps.ICoordPoint[] Координаты удаленных вершин.

startEditing

startEditing()

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

stopEditing

stopEditing()

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