ILineStringGeometryAccess

Расширяет IFreezable.

Интерфейс доступа к геометрии "Ломаная линия".

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

Конструктор

ILineStringGeometryAccess()

Поля

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

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

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

События

Имя Описание
change
Изменение координат. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • oldCoordinates - старые координаты;
  • newCoordinates - новые координаты.

Методы

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

IFreezable

Переводит объект в "замороженный" режим.

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

get(index)

Number[]

Returns координаты точки с заданным индексом.

getChildGeometry(index)

IPointGeometryAccess

Создает и возвращает объект IPointGeometryAccess для заданной вершины ломаной линии.

getClosest(anchorPosition)

Object

Ищет на ломаной линии точку, ближайшую к anchorPosition.

getCoordinates()

Number[][]

Returns массив координат геометрии.

getLength()

Integer

Returns количество точек в геометрии.

insert(index, coordinates)

ILineStringGeometryAccess

Добавляет новую точку с заданным индексом.

isFrozen()

Boolean

Returns true, если объект находится в "замороженном" режиме, иначе false.

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

remove(index)

Number[]

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

set(index, coordinates)

ILineStringGeometryAccess

Задает координаты точки c заданным индексом.

setCoordinates(coordinates)

ILineStringGeometryAccess

Задает массив координат геометрии.

splice(index, number)

Number[][]

Удаляет определенное число точек начиная с заданного индекса. При этом на место удаляемых точек могут быть добавлены новые. Координаты новых точек можно передавать дополнительными аргументами после параметра number.

unfreeze()

IFreezable

Переводит объект в активный режим.

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

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

change

Изменение координат. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • oldCoordinates - старые координаты;
  • newCoordinates - новые координаты.

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

get

{Number[]} get(index)

Returns координаты точки с заданным индексом.

Параметры:

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

Тип: Integer

Индекс точки.

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

Пример:

// Отмечаем начало линии меткой:
map.geoObjects.add(
    new ymaps.Placemark(polyline.geometry.get(0), { iconContent: 'A' })
);

getChildGeometry

{IPointGeometryAccess} getChildGeometry(index)

Создает и возвращает объект IPointGeometryAccess для заданной вершины ломаной линии.

Returns объект геометрии "Точка", соответствующий заданной вершине.

Параметры:

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

Тип: Integer

Индекс вершины.

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

getClosest

{Object} getClosest(anchorPosition)

Ищет на ломаной линии точку, ближайшую к anchorPosition.

Returns объект со следующими полями:
  • position - точка на ломаной, ближайшая к anchorPosition;
  • distance - расстояние от anchorPosition до position;
  • closestPointIndex - индекс вершины, ближайшей к position;
  • nextPointIndex - индекс вершины, следующей за position;
  • prevPointIndex - индекс вершины, предшествующей position.
Поля nextPointIndex, prevPointIndex могут отсутствовать, если position совпадает с одной из вершин ломаной линии.

Параметры:

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

Тип: Number[]

Координаты точки, для которой расчитывается ближайшая точка на ломаной.

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

Пример:

// Удаляем из линии точки по клику на ней:
myPolyline.events.add('click', function (e) {
    myPolyline.geometry.remove(
        myPolyline.geometry.getClosest(e.get('coordPosition')).closestPointIndex
    );
});

getCoordinates

{Number[][]} getCoordinates()

Returns массив координат геометрии.

getLength

{Integer} getLength()

Returns количество точек в геометрии.

insert

Добавляет новую точку с заданным индексом.

Returns ссылку на себя.

Параметры:

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

Тип: Integer

Индекс точки.

coordinates *

Тип: Number[]

Координаты точки.

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

Пример:

// добавляем новую точку в конце линии по клику на карте
myMap.events.add('click', function (e) {
    myLineString.insert(myLineString.getLength(), e.get('coordPosition'))
});

remove

{Number[]} remove(index)

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

Returns координаты удаленной точки.

Параметры:

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

Тип: Integer

Индекс точки.

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

set

Задает координаты точки c заданным индексом.

Returns ссылка на себя.

Параметры:

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

Тип: Integer

Индекс точки.

coordinates *

Тип: Number[]

Координаты точки.

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

setCoordinates

Задает массив координат геометрии.

Returns ссылка на себя.

Параметры:

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

Тип: Number[][]

Координаты геометрии.

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

splice

{Number[][]} splice(index, number)

Удаляет определенное число точек начиная с заданного индекса. При этом на место удаляемых точек могут быть добавлены новые. Координаты новых точек можно передавать дополнительными аргументами после параметра number.

Returns массив координат удаленных точек.

Параметры:

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

Тип: Integer

Индекс, начиная с которого производится удаление и добавление точек.

number *

Тип: Integer

Количество удаляемых точек.

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

Пример:

// добавляем новую точку в начало линии по клику на карте
myMap.events.add('click', function (e) {
    myLineString.splice(0, 0, myLineString.getLength(), e.get('coordPosition'))
});