Геометрии
- Введение
- Основы
- Класс стилей геометрий DG.Style.Geometry
- Класс точки DG.Geometries.Point
- Конструктор
- Методы
- Получить идентификатор точки
- Получить идентификатор DOM-элемента точки
- Получить координаты точки
- Задать новые координаты точки
- Получить стиль точки
- Установить стиль точки
- Скрыть точку
- Показать точку
- Переместить точку на передний план
- Переместить точку на задний план
- Получить содержимое подсказки точки
- Установить новое содержимое подсказки точки
- Класс мультиточки (множества точек) DG.Geometries.Multipoint
- Конструктор
- Методы
- Получить идентификатор мультиточки
- Получить идентификаторы DOM-элементов точек мультиточки
- Получить границы мультиточки
- Получить количество точек в мультиточке
- Получить географические координаты точек мультиточки
- Получить стиль мультиточки
- Установить новый стиль мультиточки
- Скрыть мультиточку
- Показать мультиточку
- Переместить мультиточку на передний план
- Переместить мультиточку на задний план
- Получить содержимое подсказки мультиточки
- Установить новое содержимое подсказки мультиточки
- Класс круга DG.Geometries.Circle
- Конструктор
- Методы
- Получить идентификатор круга
- Получить идентификатор DOM-элемента круга
- Получить центр круга
- Получить радиус круга
- Получить границы круга
- Установить радиус круга
- Установить стиль круга
- Скрыть круг
- Показать круг
- Переместить круг на передний план
- Переместить круг на задний план
- Получить содержимое подсказки круга
- Установить новое содержимое подсказки круга
- Класс ломаной DG.Geometries.Polyline
- Конструктор
- Методы
- Получить идентификатор ломаной
- Получить идентификатор DOM-элемента ломаной
- Получить границы ломаной
- Получить количество точек в ломаной
- Получить точку ломаной по ее порядковому номеру
- Получить массив точек ломаной
- Добавить точку в ломаную
- Заменить точки ломаной
- Установить новый стиль ломаной
- Скрыть ломаную
- Показать ломаную
- Переместить ломаную на передний план
- Переместить ломаную на задний план
- Удалить точку ломаной по ее порядковому номеру
- Получить содержимое подсказки ломаной
- Установить новое содержимое подсказки ломаной
- Класс мультиполилайна (множества ломаных) DG.Geometries.Multipolyline
- Конструктор
- Методы
- Получить идентификатор мультиполилайна
- Получить идентификаторы DOM-элементов ломаных мультиполилайна
- Получить границы мультиполилайна
- Получить количество ломаных в мультиполилайне
- Получить географические координаты ломаных мультиполилайна
- Установить новый стиль мультиполилайна
- Скрыть мультиполилайн
- Показать мультиполилайн
- Переместить мультиполилайн на передний план
- Переместить мультиполилайн на задний план
- Получить содержимое подсказки мультиполилайна
- Установить новое содержимое подсказки мультиполилайна
- Класс полигона (многоугольника) DG.Geometries.Polygon
- Конструктор
- Методы
- Получить идентификатор многоугольника
- Получить идентификатор DOM-элемента многоугольника
- Получить границы многоугольника
- Получить количество вершин в многоугольнике
- Получить координаты вершины многоугольника по ее порядковому номеру
- Получить массив вершин многоугольника
- Добавить новую вершину в многоугольник
- Заменить вершины многоугольника
- Установить новый стиль многоугольника
- Скрыть многоугольник
- Показать многоугольник
- Переместить многоугольник на передний план
- Переместить многоугольник на задний план
- Удалить вершину многоугольника по ее порядковому номеру
- Получить содержимое подсказки многоугольника
- Установить новое содержимое подсказки многоугольника
- Класс мультиполигона (множества многоугольников) DG.Geometries.Multipolygon
- Конструктор
- Методы
- Получить идентификатор мультиполигона
- Получить идентификаторы DOM-элементов многоугольников мультиполигона
- Получить границы мультиполигона
- Получить количество многоугольников в мультиполигоне
- Получить географические координаты многоугольников мультиполигона
- Установить новый стиль мультиполигона
- Скрыть мультиполигон
- Показать мультиполигон
- Переместить мультиполигон на передний план
- Переместить мультиполигон на задний план
- Получить содержимое подсказки мультиполигона
- Установить новое содержимое подсказки мультиполигона
- Менеджер геометрий DG.Geometries
- Класс группы геометрий DG.GeometryGroup
- Методы
- Добавить геометрию в группу
- Удалить геометрию из группы
- Получить список всех геометрий в группе
- Получить геометрию по ее идентификатору в группе
- Удалить все геометрии из группы
- Скрыть группу
- Отобразить группу
- Получить количество геометрий в группе
- Проверить наличие геометрии в группе
- Получить порядковый номер геометрии в группе
- Выполнить операцию для каждой геометрии в группе
- Получить имя группы
- Перерисовать все геометрии в группе
- Методы
Введение
В статье рассмотрим все что нужно знать, чтобы работать с геометриями: кругами, ломаными линиями, многоугольниками.
Предполагается, что вы уже ознакомились с разделами «Быстрый старт» и «Карта».
Основы
Геометрии
Геометрии — это специальные геометрические объекты на карте. В настоящий момент мы поддерживаем следующие геометрий: точки, мультиточки, круги, полилайны, мультиполилайны, полигоны, мультиполигоны. Каждый из этих типов геометрии задаются соответствующими классами:
- Класс точки DG.Geometries.Point
- Класс мультиточки DG.Geometries.Multipoint
- Класс круга DG.Geometries.Circle
- Класс полилайна DG.Geometries.Polyline
- Класс мультиполилайна DG.Geometries.Multipolyline
- Класс полигона DG.Geometries.Polygon
- Класс мультиполигона DG.Geometries.Multipolygon
Группы геометрий
Каждая геометрия должна принадлежать определенной группе. Это дает возможность выполнять групповые операции.
Например, пусть у нас есть два набора геометрий: одни отображают районы города, а другие показывают области покрытия интернет-провайдеров. Разместив первые в одну группу, а вторые — в другую, мы можем явно манипулировать каждым из наборов геометрий.
Объект группы предоставляет наиболее полный арсенал методов, для управления геометриями.
Любые операции с геометриями в группе сразу же отображаются на карте.
Менеджер геометрий
Менеджер отвечает за управление группами. А группы, в свою очередь, управляют геометриями.
При этом для удобства часть методов по работе с геометриями есть также и в менеджере.
Менеджер геометрий, который доступен как свойство geometries
объекта карты:
// Инициализируем объект карты:
var myMap = new DG.Map("myMapId");
// Менеджер геометрий:
myMap.geometries;
Класс стилей геометрий DG.Style.Geometry
Для тонкой настройки внешнего вида геометрий предназначен класс DG.Style.Geometry
. Объект данного класса фигурирует в конструкторах классов геометрий, которые мы рассмотрим чуть позже.
Для наглядности допустим, что myStyle
— объект класса DG.Style.Geometry
.
Конструктор
Конструктор может принимать объект с атрибутами аналогичными атрибутам класса.
Свойства
Имя | Тип | Описание |
---|---|---|
strokeColor | String | Цвет линий и контуров. Задается в формате RGB (например, #00FF7F , #FF0000 ) или названием цвета (например, red , white , green ). По умолчанию цвет черный: #000000 . |
strokeOpacity | Number | Прозрачность линий и контуров. Задается в диапазоне 0.0 (полная прозрачность) — 1.0 (без эффекта прозрачности). По умолчанию равен единице. |
strokeWidth | Number | Толщина линий и контуров (в пикселах). По умолчанию равен единице. |
fillColor | String | Цвет заливки. Только для круга и многоугольника. Задается в формате RGB (например, #00FF7F , #FF0000 ) или названием цвета (например, red , white , green ). По умолчанию цвет белый: #FFFFFF |
fillOpacity | Number | Прозрачность заливки. Только для круга и многоугольника. Задается в диапазоне 0.0 (полная прозрачность) — 1.0 (без эффекта прозрачности). Значение по умолчанию: 0.5. |
strokeLinecap | String | Форма концов линии. Только для ломаных. Возможные варианты: square — плоский конец линий, round — закругленный конец линий. Значение по умолчанию: round . |
strokeDashstyle | String | Стиль линии. Возможные варианты: solid — сплошная линия, dot — отображение точками (пунктирная), dash — штриховая линия, longdash — длинные штрихи, dashdot — штрих-пунктирная линия, longdashdot — длинные штрихи с точками. Значение по умолчанию: solid . |
pointRadius | Number | Радиус точки в пикселях, по умолчанию равен единице. Только для точек и мультиточек. |
Пример:
// Создаем объект стилей:
var style = new DG.Style.Geometry();
// Устанавливаем значения свойств:
style.strokeColor = "blue";
style.strokeOpacity = 1;
style.strokeWidth = 3;
style.fillColor = "#ff00ff";
style.fillOpacity = 0.4;
style.pointRadius = 5;
Открыть пример в новом окне
В примере описан стиль геометрии, который задает синий цвет линиям или контурам толщиной 3 пиксела и полупрозрачную заливку розового цвета.
Пример 2:
// Создаем объект стилей из объекта:
var style = new DG.Style.Geometry({strokeColor : "blue", strokeOpacity : 1, strokeWidth : 3, fillColor : "#ff00ff", fillOpacity : 0.4, pointRadius : 5});
Класс точки DG.Geometries.Point
Ниже мы подробно рассмотрим конструктор и все методы класса точки. Для наглядности, допустим myPoint
— объект точки.
Описание методов представляет собой действие (что делает метод, для чего он нужен?) и название метода. Вместе с тем, представлены дополнительно параметры, возвращаемое значение метода и особенности, если таковые имеются.
Конструктор
Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
position | DG.GeoPoint | Да | Географическое положение точки. |
style | DG.Style.Geometry | Нет | Объект DG.Style.Geometry . Настраивает внешний вид геометрии. |
name | String | Нет | Идентификатор точки, должен быть уникальным. Если параметр не передан, генерируется автоматически. |
hint | String | Нет | Подсказка, которая будет показана при наведении курсора на точку. |
Пример:
// Создаем объект стилей:
var style = new DG.Style.Geometry();
// Устанавливаем значения свойств:
style.strokeColor = "blue";
style.strokeOpacity = 1;
style.strokeWidth = 3;
style.fillColor = "#ff00ff";
style.fillOpacity = 0.4;
style.pointRadius = 5;
// Создаем точку с указанием координат, радиуса и стиля:
var myPoint = new DG.Geometries.Point(new DG.GeoPoint(82.927810142519,55.028936234826), style);
// Добавим точку на карту:
myMap.geometries.add(myPoint);
Методы
Получить идентификатор точки
myPoint.getId()Возвращает:
Тип | Описание |
---|---|
String | Идентификатор точки |
Получить идентификатор DOM-элемента точки
myPoint.getContainerId()Возвращает:
Тип | Описание |
---|---|
String | Свойство «id» DOM-элемента точки |
Получить координаты точки
myPoint.getPosition()Возвращает:
Тип | Описание |
---|---|
DG.GeoPoint | Географическое положение точки. |
Задать новые координаты точки
myPoint.setPosition(position)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
position | DG.GeoPoint | Да | Географическое положение точки. |
Получить стиль точки
myPoint.getStyle()Возвращает:
Тип | Описание |
---|---|
DG.Style.Geometry | Объект DG.Style.Geometry , который описывает внешний вид геометрии. |
Установить стиль точки
myPoint.setStyle(style)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
style | DG.Style.Geometry | Да | Объект DG.Style.Geometry . Настраивает внешний вид геометрии. |
Скрыть точку
myPoint.hide()Показать точку
myPoint.show()Переместить точку на передний план
myPoint.toFront()Переместить точку на задний план
myPoint.toBack()Получить содержимое подсказки точки
myPoint.getHintContent()Возвращает:
Тип | Описание |
---|---|
String | Cодержимое подсказки точки. |
Установить новое содержимое подсказки точки
myPoint.setHintContent(hint)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
hint | String | Да | Новое содержимое подсказки точки. |
Класс мультиточки (множества точек) DG.Geometries.Multipoint
Ниже мы подробно рассмотрим конструктор и все методы класса мультиточки.
Мультиточка — это геометрическая фигура, состоящая из одной и более точек. Для наглядности, допустим myMultipoint
— объект мультиточки.
Описание методов представляет собой действие (что делает метод, для чего он нужен?) и название метода. Вместе с тем, представлены дополнительно параметры, возвращаемое значение метода и особенности, если таковые имеются.
Конструктор
Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
geoPoints | Array | Да | Массив объектов DG.GeoPoint . Объекты содержат в себе географическое координаты точек, входящих в мультиточку. |
style | DG.Style.Geometry | Нет | Объект DG.Style.Geometry . Настраивает внешний вид геометрии. |
name | String | Нет | Идентификатор мультиточки, должен быть уникальным. Если параметр не передан, генерируется автоматически. |
hint | String | Нет | Подсказка, которая будет показана при наведении курсора на мультиточку. |
Пример:
// Создаём объект стилей:
var style = new DG.Style.Geometry();
// Устанавливаем значения свойств:
style.strokeColor= "blue";
style.strokeOpacity= 1;
style.strokeWidth= 3;
style.pointRadius = 5;
// Устанавливаем координаты точек мультиточки:
var geoPoints = [
new DG.GeoPoint(20.426320303105, 54.62289941523),
new DG.GeoPoint(20.436320303105, 54.63289941523),
new DG.GeoPoint(20.426320303105, 54.64289941523),
new DG.GeoPoint(20.446320303105, 54.65289941523),
new DG.GeoPoint(20.426320303105, 54.66289941523),
new DG.GeoPoint(20.436320303105, 54.67289941523)
]
// Создаём мультиточку:
var multipoint = new DG.Geometries.Multipoint(geoPoints, style, 'myMultipoint');
// Добавим мультиточку на карту:
myMap.geometries.add(multipoint);
В результате мы получим новый объект на карте — мультиточку из 6-ти синих точек с полями толщиной 3 пикселя и радиусом 5 пикселей.
Открыть пример в новом окнеМетоды
Получить идентификатор мультиточки
myMultipoint.getId()Возвращает:
Тип | Описание |
---|---|
String | Идентификатор мультиточки |
Получить идентификаторы DOM-элементов точек мультиточки
myMultipoint.getContainerId()Возвращает:
Тип | Описание |
---|---|
Array | Свойства «id» DOM-элементов точек, которые входят мультиточку |
Получить границы мультиточки
myMultipoint.getBounds()Возвращает:
Тип | Описание |
---|---|
DG.Bounds | Прямоугольная область, в которую вписывается мультиточка. |
Получить количество точек в мультиточке
myMultipoint.getNumPoints()Возвращает:
Тип | Описание |
---|---|
Number | Количество точек, из которых состоит мультиточка. |
Получить географические координаты точек мультиточки
myMultipoint.getGeoPoints()Возвращает:
Тип | Описание |
---|---|
Array | Массив объектов DG.GeoPoint . Объекты содержат в себе географическое координаты точек, входящих в мультиточку. |
Получить стиль мультиточки
myMultipoint.getStyle()Возвращает:
Тип | Описание |
---|---|
DG.Style.Geometry | Объект DG.Style.Geometry , который описывает внешний вид геометрии. |
Установить новый стиль мультиточки
myMultipoint.setStyle(style)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
style | DG.Style.Geometry | Да | Объект DG.Style.Geometry , который описывает внешний вид геометрии. |
Скрыть мультиточку
myMultipoint.hide()Показать мультиточку
myMultipoint.show()Переместить мультиточку на передний план
myMultipoint.toFront()Переместить мультиточку на задний план
myMultipoint.toBack()Получить содержимое подсказки мультиточки
myMultipoint.getHintContent()Возвращает:
Тип | Описание |
---|---|
String | Cодержимое подсказки мультиточки. |
Установить новое содержимое подсказки мультиточки
myMultipoint.setHintContent(hint)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
hint | String | Да | Новое содержимое подсказки мультиточки. |
Класс круга DG.Geometries.Circle
Ниже мы подробно рассмотрим конструктор и все методы класса круга. Для наглядности допустим, что myCircle
— объект круга.
Описание методов представляет собой действие (что делает метод, для чего он нужен?) и название метода. Вместе с тем, представлены дополнительно параметры, возвращаемое значение метода и особенности, если таковые имеются.
Конструктор
Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
center | DG.GeoPoint | Да | Географическое положение точки — центра круга. |
radius | Number | Да | Радиус круга в метрах. |
style | DG.Style.Geometry | Нет | Объект DG.Style.Geometry . Настраивает внешний вид геометрии. |
name | String | Нет | Идентификатор круга, должен быть уникальным. Если параметр не передан, генерируется автоматически. |
hint | String | Нет | Подсказка, которая будет показана при наведении курсора на круг. |
Пример:
// Создаем объект стилей:
var style = new DG.Style.Geometry();
// Устанавливаем значения свойств:
style.strokeColor = "blue";
style.strokeOpacity = 1;
style.strokeWidth = 3;
style.fillColor = "#ff00ff";
style.fillOpacity = 0.4;
// Создаем круг с указанием координат центра, радиуса и стиля:
var myCircle = new DG.Geometries.Circle(new DG.GeoPoint(82.927810142519,55.028936234826), 20, style);
// Добавим круг на карту:
myMap.geometries.add(myCircle);
Методы
Получить идентификатор круга
myCircle.getId()Возвращает:
Тип | Описание |
---|---|
String | Идентификатор круга |
Получить идентификатор DOM-элемента круга
myCircle.getContainerId()Возвращает:
Тип | Описание |
---|---|
String | Свойство «id» DOM-элемента круга |
Получить центр круга
myCircle.getCenter()Возвращает:
Тип | Описание |
---|---|
DG.GeoPoint | Географическое положение точки — центра круга. |
Получить радиус круга
myCircle.getRadius()Возвращает:
Тип | Описание |
---|---|
Number | Радиус круга в метрах |
Получить границы круга
myCircle.getBounds()Возвращает:
Тип | Описание |
---|---|
DG.Bounds | Прямоугольная область, в которую вписывается круг |
Установить радиус круга
myCircle.setRadius(radius)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
radius | Number | Да | Радиус круга в метрах |
Установить стиль круга
myCircle.setStyle(style)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
style | DG.Style.Geometry | Да | Объект DG.Style.Geometry . Настраивает внешний вид геометрии. |
Скрыть круг
myCircle.hide()Показать круг
myCircle.show()Переместить круг на передний план
myCircle.toFront()Переместить круг на задний план
myCircle.toBack()Получить содержимое подсказки круга
myCircle.getHintContent()Возвращает:
Тип | Описание |
---|---|
String | Cодержимое подсказки круга. |
Установить новое содержимое подсказки круга
myCircle.setHintContent(hint)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
hint | String | Да | Новое содержимое подсказки круга. |
Класс ломаной DG.Geometries.Polyline
Ниже мы подробно рассмотрим конструктор и все методы класса ломаной линии.
Ломаная линия состоит из набора вершин, последовательно соединенных отрезками прямой и может иметь самопересечения. Для наглядности допустим, что myPolyline
— объект ломаной линии.
Описание методов представляет собой действие (что делает метод, для чего он нужен?) и название метода. Вместе с тем, представлены дополнительно параметры, возвращаемое значение метода и особенности, если таковые имеются.
Конструктор
Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
points | Array | Да | Массив объектов DG.GeoPoint , каждый из который представляет собой географическое положение точки ломаной линии. |
style | DG.Style.Geometry | Нет | Объект DG.Style.Geometry . Настраивает внешний вид геометрии. |
name | String | Нет | Идентификатор ломаной, должен быть уникальным. Если параметр не передан, генерируется автоматически. |
hint | String | Нет | Подсказка, которая будет показана при наведении курсора на ломаную линию. |
Пример:
// Создаем объект стилей:
var style = new DG.Style.Geometry();
// Устанавливаем значения свойств:
style.strokeColor = "blue";
style.strokeOpacity = 1;
style.strokeWidth = 3;
// Устанавливаем координаты точек полилайна:
var pointSet = [
new DG.GeoPoint(82.927810142519,55.028936234826),
new DG.GeoPoint(82.928810143519,55.028936234826),
new DG.GeoPoint(82.928810143519,55.039936234826),
new DG.GeoPoint(82.938810142519,55.049996234826),
new DG.GeoPoint(82.925810142519,55.048936234826)
];
// Создаем полилайн:
var myPolyline = new DG.Geometries.Polyline(pointSet, style);
// Добавим на карту:
myMap.geometries.add(myPolyline);
В результате мы получим новый объект на карте — многоугольник из 5 точек, соединенных синими линиями толщиной 3 пиксела и полупрозрачной розовой заливкой.
Методы
Для наглядности допустим, что myPolyline
— ломаная, объект геометрии.
Получить идентификатор ломаной
myPolyline.getId()Возвращает:
Тип | Описание |
---|---|
String | Идентификатор ломаной |
Получить идентификатор DOM-элемента ломаной
myPolyline.getContainerId()Возвращает:
Тип | Описание |
---|---|
String | Свойство «id» DOM-элемента ломаной |
Получить границы ломаной
myPolyline.getBounds()Возвращает:
Тип | Описание |
---|---|
DG.Bounds | Прямоугольная область, в которую вписывается ломаная |
Получить количество точек в ломаной
myPolyline.getNumPoints()Возвращает:
Тип | Описание |
---|---|
Number | Количество точек в ломаной |
Получить точку ломаной по ее порядковому номеру
myPolyline.getPoint(index)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
index | Number | Да | Порядковый номер точки ломанной. Нумерация начинается с нуля. |
Возвращает:
Тип | Описание |
---|---|
DG.GeoPoint | Географическое положение точки |
Получить массив точек ломаной
myPolyline.getPoints()Возвращает:
Тип | Описание |
---|---|
Array | Массив объектов DG.GeoPoint , каждый из который представляет собой географическое положение точки ломаной линии. |
Добавить точку в ломаную
myPolyline.addPoint(point, index)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
point | DG.GeoPoint | Да | Географическое положение точки. |
index | Number | Нет | Порядковый номер новой точки в ломаной. Нумерация начинается с нуля. Параметр позволяет вставить точку в любую позицию в ломаной. Если параметр не передан, точка будет добавлен в конец («хвост») ломаной линии. |
Заменить точки ломаной
myPolyline.splicePoints(index, num, newPoints)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
index | Number | Да | Индекс в массиве, с которого начинать вставку новых точек. |
num | Number | Да | Количество точек, которое требуется удалить, начиная с индекса index. |
newPoints | Array | Да | Добавляемый массив точек. Добавление начинается с позиции index |
Поведение данной функции очень похоже на стандартный javascript-метод splice
.
Установить новый стиль ломаной
myPolyline.setStyle(style)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
style | DG.Style.Geometry | Да | Объект DG.Style.Geometry . Настраивает внешний вид геометрии |
Скрыть ломаную
myPolyline.hide()Показать ломаную
myPolyline.show()Переместить ломаную на передний план
myPolyline.toFront()Переместить ломаную на задний план
myPolyline.toBack()Удалить точку ломаной по ее порядковому номеру
myPolyline.removePoint(index)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
index | Number | Да | Порядковый номер точки ломанной. Нумерация начинается с нуля. |
Возвращает:
Тип | Описание |
---|---|
Boolean | Возвращает true в случае успешного выполнения операции, false — в противном случае. Перед выполнением операции в ломаной линии должно быть минимум 3 точки. |
Получить содержимое подсказки ломаной
myPolyline.getHintContent()Возвращает:
Тип | Описание |
---|---|
String | Cодержимое подсказки ломаной. |
Установить новое содержимое подсказки ломаной
myPolyline.setHintContent(hint)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
hint | String | Да | Новое содержимое подсказки ломаной. |
Класс мультиполилайна (множества ломаных) DG.Geometries.Multipolyline
Ниже мы подробно рассмотрим конструктор и все методы класса мультиполилайна.
Мультиполилайн — это геометрическая фигура, состоящая из одной и более ломаных. Для наглядности, допустим myMultipolyline
— объект мультиполилайна.
Описание методов представляет собой действие (что делает метод, для чего он нужен?) и название метода. Вместе с тем, представлены дополнительно параметры, возвращаемое значение метода и особенности, если таковые имеются.
Конструктор
Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
pointSets | Array | Да | Множество массивов объектов DG.GeoPoint . Подмассивы содержат в себе географическое координаты точек ломаных, входящих в мультиполилайн. |
style | DG.Style.Geometry | Нет | Объект DG.Style.Geometry . Настраивает внешний вид геометрии. |
name | String | Нет | Идентификатор мультиполилайна, должен быть уникальным. Если параметр не передан, генерируется автоматически. |
hint | String | Нет | Подсказка, которая будет показана при наведении курсора на мультиполилайн. |
Пример:
// Создаём объект стилей:
var style = new DG.Style.Geometry();
// Устанавливаем значения свойств:
style.strokeColor= "blue";
style.strokeOpacity= 1;
style.strokeWidth= 3;
// Устанавливаем координаты точек для ломаных мультиполилайна:
var pointSets = [
[
new DG.GeoPoint(82.93, 55.028),
new DG.GeoPoint(82.92, 55.038),
new DG.GeoPoint(82.93, 55.048),
new DG.GeoPoint(82.92, 55.058),
],
[
new DG.GeoPoint(82.95, 55.028),
new DG.GeoPoint(82.94, 55.038),
new DG.GeoPoint(82.95, 55.048),
new DG.GeoPoint(82.94, 55.058),
],
[
new DG.GeoPoint(82.97, 55.028),
new DG.GeoPoint(82.96, 55.038),
new DG.GeoPoint(82.97, 55.048),
new DG.GeoPoint(82.96, 55.058),
]
];
// Создаём мультиполилайн:
var multipolyline = new DG.Geometries.Multipolyline(pointSets, style, 'myMultipolyline');
myMap.geometries.add(multipolyline);
В результате мы получим новый объект на карте — мультиполилайн из 3-х синих ломаных линий толщиной 3 пикселя.
Методы
Получить идентификатор мультиполилайна
myMultipolyline.getId()Возвращает:
Тип | Описание |
---|---|
String | Идентификатор мультиполилайна |
Получить идентификаторы DOM-элементов ломаных мультиполилайна
myMultipolyline.getContainerId()Возвращает:
Тип | Описание |
---|---|
Array | Свойства «id» DOM-элементов ломаных, которые входят в мультиполилайн |
Получить границы мультиполилайна
myMultipolyline.getBounds()Возвращает:
Тип | Описание |
---|---|
DG.Bounds | Прямоугольная область, в которую вписывается мультиполилайн |
Получить количество ломаных в мультиполилайне
myMultipolyline.getNumPolylines()Возвращает:
Тип | Описание |
---|---|
Number | Количество полилайнов, из которых состоит мультиполилайн. |
Получить географические координаты ломаных мультиполилайна
myMultipolyline.getPointSets()Возвращает:
Тип | Описание |
---|---|
Array | Множество массивов объектов DG.GeoPoint . Подмассивы содержат в себе географическое координаты точек ломаных, входящих в мультиполилайн. |
Установить новый стиль мультиполилайна
myMultipolyline.setStyle(style)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
style | DG.Style.Geometry | Да | Объект DG.Style.Geometry . Настраивает внешний вид геометрии. |
Скрыть мультиполилайн
myMultipolyline.hide()Показать мультиполилайн
myMultipolyline.show()Переместить мультиполилайн на передний план
myMultipolyline.toFront()Переместить мультиполилайн на задний план
myMultipolyline.toBack()Получить содержимое подсказки мультиполилайна
myMultipolyline.getHintContent()Возвращает:
Тип | Описание |
---|---|
String | Cодержимое подсказки мультиполилайна. |
Установить новое содержимое подсказки мультиполилайна
myMultipolyline.setHintContent(hint)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
hint | String | Да | Новое содержимое подсказки мультиполилайна. |
Класс полигона (многоугольника) DG.Geometries.Polygon
Ниже мы подробно рассмотрим конструктор и все методы класса многоугольника.
Многоугольник представляет собой замкнутую ломаную линию и ограниченную ею часть плоскости. Для наглядности допустим, что myPolygon
— объект полигона.
Описание методов представляет собой действие (что делает метод, для чего он нужен?) и название метода. Вместе с тем, представлены дополнительно параметры, возвращаемое значение метода и особенности, если таковые имеются.
Конструктор
Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
points | Array | Да | Массив объектов DG.GeoPoint , каждый из который представляет собой географическое положение точки (вершины) многоугольника. |
style | DG.Style.Geometry | Нет | Объект DG.Style.Geometry . Настраивает внешний вид геометрии. |
name | String | Нет | Идентификатор многоугольника, должен быть уникальным. Если параметр не передан, генерируется автоматически. |
hint | String | Нет | Подсказка, которая будет показана при наведении курсора на многоугольник. |
Пример:
// Создаем объект стилей:
var style = new DG.Style.Geometry();
// Устанавливаем значения свойств:
style.strokeColor = "blue";
style.strokeOpacity = 1;
style.strokeWidth = 3;
style.fillColor = "#ff00ff";
style.fillOpacity = 0.4;
// Устанавливаем координаты точек (вершин) многоугольника:
var pointSet = [
new DG.GeoPoint(82.927810142519,55.028936234826),
new DG.GeoPoint(82.928810143519,55.028936234826),
new DG.GeoPoint(82.928810143519,55.039936234826),
new DG.GeoPoint(82.938810142519,55.049996234826),
new DG.GeoPoint(82.927810142519,55.039936234826)
];
// Создаем многоугольник:
var myPolygon = new DG.Geometries.Polygon(pointSet, style);
// Добавим многоугольник на карту:
myMap.geometries.add(myPolygon);
В результате мы получим новый объект на карте — многоугольник из 5 точек, соединенных синими линиями толщиной 3 пиксела и полупрозрачной розовой заливкой.
Методы
Для наглядности допустим, что myPolygon
— многоугольник, объект геометрии.
Получить идентификатор многоугольника
myPolygon.getId()Возвращает:
Тип | Описание |
---|---|
String | Идентификатор многоугольника |
Получить идентификатор DOM-элемента многоугольника
myPolygon.getContainerId()Возвращает:
Тип | Описание |
---|---|
String | Свойство «id» DOM-элемента многоугольника |
Получить границы многоугольника
myPolygon.getBounds()Возвращает:
Тип | Описание |
---|---|
DG.Bounds | Прямоугольная область, в которую вписывается многоугольник |
Получить количество вершин в многоугольнике
myPolygon.getNumPoints()Возвращает:
Тип | Описание |
---|---|
Number | Количество точек (вершин) в многоугольнике |
Получить координаты вершины многоугольника по ее порядковому номеру
myPolygon.getPoint(index)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
index | Number | Да | Порядковый номер точки (вершины) многоугольника. Нумерация начинается с нуля. |
Возвращает:
Тип | Описание |
---|---|
DG.GeoPoint | Географическое положение точки |
Получить массив вершин многоугольника
myPolygon.getPoints()Возвращает:
Тип | Описание |
---|---|
Array | Массив объектов DG.GeoPoint , каждый из который представляет собой географическое положение вершины многоугольника. |
Добавить новую вершину в многоугольник
myPolygon.addPoint(point, index)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
point | DG.GeoPoint | Да | Географическое положение точки. |
index | Number | Да | Порядковый номер новой точки в многоугольнике. Нумерация начинается с нуля. Параметр позволяет вставить точку в любую позицию в многоугольника. Если параметр не передан, точка будет добавлен в конец. |
Заменить вершины многоугольника
myPolygon.splicePoints(index, num, newPoints)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
index | Number | Да | Индекс в массиве, с которого начинать вставку новых точек. |
num | Number | Да | Количество точек, которое требуется удалить, начиная с индекса index . |
newPoints | Array | Да | Добавляемый массив точек. Добавление начинается с позиции index . |
Поведение данной функции очень похоже на стандартный javascript-метод splice
.
Установить новый стиль многоугольника
myPolygon.setStyle(style)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
style | DG.Style.Geometry | Да | Объект DG.Style.Geometry . Настраивает внешний вид геометрии. |
Скрыть многоугольник
myPolygon.hide()Показать многоугольник
myPolygon.show()Переместить многоугольник на передний план
myPolygon.toFront()Переместить многоугольник на задний план
myPolygon.toBack()Удалить вершину многоугольника по ее порядковому номеру
myPolygon.removePoint(index)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
index | Number | Да | Порядковый номер точки ломанной. Нумерация начинается с нуля |
Возвращает:
Тип | Описание |
---|---|
Boolean | Возвращает Перед выполнением операции в ломаной линии должно быть минимум 3 точки. |
Получить содержимое подсказки многоугольника
myPolygon.getHintContent()Возвращает:
Тип | Описание |
---|---|
String | Cодержимое подсказки многоугольника. |
Установить новое содержимое подсказки многоугольника
myPolygon.setHintContent(hint)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
hint | String | Да | Новое содержимое подсказки многоугольника. |
Класс мультиполигона (множества многоугольников) DG.Geometries.Multipolygon
Ниже мы подробно рассмотрим конструктор и все методы класса мультиполигона.
Мультиполигон — это геометрическая фигура, состоящая из одного и более полигонов. Для наглядности, допустим myMultipolygon
— объект мультиполигона.
Описание методов представляет собой действие (что делает метод, для чего он нужен?) и название метода. Вместе с тем, представлены дополнительно параметры, возвращаемое значение метода и особенности, если таковые имеются.
Конструктор
Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
pointSets | Array | Да | Множество массивов объектов DG.GeoPoint . Подмассивы содержат в себе географическое координаты точек многоугольников, входящих в мультиполигон. |
style | DG.Style.Geometry | Нет | Объект DG.Style.Geometry . Настраивает внешний вид геометрии. |
name | String | Нет | Идентификатор мультиполигона, должен быть уникальным. Если параметр не передан, генерируется автоматически. |
hint | String | Нет | Подсказка, которая будет показана при наведении курсора на мультиполигон. |
Пример:
// Создаём объект стилей:
var style = new DG.Style.Geometry();
// Устанавливаем значения свойств:
style.strokeColor= "blue";
style.strokeOpacity= 1;
style.strokeWidth= 3;
// Устанавливаем координаты точек для многоугольников мультиполигона:
var pointSets = [
[
new DG.GeoPoint(82.93, 55.028),
new DG.GeoPoint(82.92, 55.038),
new DG.GeoPoint(82.93, 55.048),
new DG.GeoPoint(82.92, 55.058),
],
[
new DG.GeoPoint(82.95, 55.028),
new DG.GeoPoint(82.94, 55.038),
new DG.GeoPoint(82.95, 55.048),
new DG.GeoPoint(82.94, 55.058),
],
[
new DG.GeoPoint(82.97, 55.028),
new DG.GeoPoint(82.96, 55.038),
new DG.GeoPoint(82.97, 55.048),
new DG.GeoPoint(82.96, 55.058),
]
];
// Создаём мультиполигон:
var multipolygon = new DG.Geometries.Multipolygon(pointSets, style, 'myMultipolygon');
myMap.geometries.add(multipolygon);
В результате мы получим новый объект на карте — мультиполигон, состоящий из 3-х многоугольников с синими линиями толщиной 3 пикселя.
Методы
Получить идентификатор мультиполигона
myMultipolygon.getId()Возвращает:
Тип | Описание |
---|---|
String | Идентификатор мультиполигона |
Получить идентификаторы DOM-элементов многоугольников мультиполигона
myMultipolygon.getContainerId()Возвращает:
Тип | Описание |
---|---|
Array | Свойства «id» DOM-элементов многоугольников, которые входят в мультиполигон |
Получить границы мультиполигона
myMultipolygon.getBounds()Возвращает:
Тип | Описание |
---|---|
DG.Bounds | Прямоугольная область, в которую вписывается мультиполигон |
Получить количество многоугольников в мультиполигоне
myMultipolygon.getNumPolygons()Возвращает:
Тип | Описание |
---|---|
Number | Количество полигонов, из которых состоит мультиполигон. |
Получить географические координаты многоугольников мультиполигона
myMultipolygon.getPointSets()Возвращает:
Тип | Описание |
---|---|
Array | Множество массивов объектов DG.GeoPoint . Подмассивы содержат в себе географическое координаты точек многоугольников, входящих в мультиполигон. |
Установить новый стиль мультиполигона
myMultipolygon.setStyle(style)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
style | DG.Style.Geometry | Да | Объект DG.Style.Geometry . Настраивает внешний вид геометрии. |
Скрыть мультиполигон
myMultipolygon.hide()Показать мультиполигон
myMultipolygon.show()Переместить мультиполигон на передний план
myMultipolygon.toFront()Переместить мультиполигон на задний план
myMultipolygon.toBack()Получить содержимое подсказки мультиполигона
myMultipolygon.getHintContent()Возвращает:
Тип | Описание |
---|---|
String | Cодержимое подсказки мультиполигона. |
Установить новое содержимое подсказки мультиполигона
myMultipolygon.setHintContent(hint)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
hint | String | Да | Новое содержимое подсказки мультиполигона. |
Менеджер геометрий DG.Geometries
Менеджер отвечает за управление группами. А группы, в свою очередь, управляют геометриями.
При этом для удобства, часть методов по работе с геометриями есть также и в менеджере.
Ниже мы подробно рассмотрим все методы класса менеджера. Для наглядности допустим, что myMap
— объект карты.
Описание методов представляет собой действие (что делает метод, для чего он нужен?) и название метода. Вместе с тем, представлены дополнительно параметры, возвращаемое значение метода и особенности, если таковые имеются.
Создать менеджер маркеров явно через ключевое слово new
нельзя. Он автоматически доступен как свойство geometries
объекта карты.
Методы управления группами геометрий
Создание группы
myMap.geometries.createGroup(groupName)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
groupName | String | Да | Название группы. Должно быть уникальным. |
Возвращает:
Тип | Описание |
---|---|
DG.GeometryGroup | Экземпляр класс DG.GeometryGroup |
Удалить группу
myMap.geometries.removeGroup(groupName)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
groupName | String | Да | Название группы. |
Получить список имен групп
myMap.geometries.getAllGroupsNames()Возвращает:
Тип | Описание |
---|---|
Array | Список имен групп. Массив строк. |
Получить уже созданный объект группы по ее имени
myMap.geometries.getGroup(groupName)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
groupName | String | Да | Название группы. |
Возвращает:
Тип | Описание |
---|---|
DG.GeometryGroup | null | Экземпляр класс DG.GeometryGroup , который уже был создан с помощью метода myMap.geometries.createGroup . Если запросить у метода несуществующую группу, возвращает null . |
Получить имя группы по умолчанию
myMap.geometries.getDefaultGroupName()Возвращает:
Тип | Описание |
---|---|
String | Название группы по умолчанию, которая есть всегда. |
Получить объект группы по умолчанию
myMap.geometries.getDefaultGroup()Возвращает:
Тип | Описание |
---|---|
DG.GeometryGroup | Объект группы по умолчанию, который есть всегда. |
Фактически данный метод, является короткой записью выражения myMap.geometries.getGroup(myMap.geometries.getDefaultGroupName()
Методы управления геометриями
Далее рассмотрим часть методов по работы с геометриями, которые можно выполнить в менеджере. Если требуются более сложные операции, их можно выполнить средствами объекта группы.
Добавить геометрию
myMap.geometries.add(item, groupName)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
item | Object | Да | Геометрия. |
groupName | String | Нет | Название группы. Если параметр не передан, геометрия будет добавлена в группу по умолчанию. Если название группы новое, автоматически будет создана новая группа с переданным именем. Ограничение: нельзя добавлять одну и ту же геометрию дважды, во-первых, в одну группу, а во-вторых, в несколько групп сразу. |
Удалить геометрию
myMap.geometries.remove(item)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
item | Object | String | Да | Может быть либо объектом геометрии, либо его идентификатором. Для получения идентификатора у геометрии есть метод getId() . |
Получить список всех геометрий
myMap.geometries.getAll()Возвращает:
Тип | Описание |
---|---|
Array | Массив, состоящий из экземпляров классов геометрий. |
Получить геометрию по ее идентификатору
myMap.geometries.get(id)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
id | String | Да | Идентификатор геометрии. Для его получения у геометрии есть метод getId() . |
Возвращает:
Тип | Описание |
---|---|
Object | null | Экземпляр класс геометрии. Если запросить у метода несуществующую геометрию, возвращает null . |
Удалить все геометрии
myMap.geometries.removeAll()Несмотря на удаление всех геометрий, группы остаются не тронутыми.
Получить границы геометрий
myMap.geometries.getBounds(groupName)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
groupName | String | нет | Название группы; если не указано, то границы рассчитываются по всем элементам. |
Создать геометрию из WKT
Метод является устаревшим. Рекомендуем использовать DG.WKTParser
myMap.geometries.createFromWKT(wkt, style, name, hint)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
wkt | String | Да | Описание геометрии в формате WKT |
style | object | Нет | Объект DG.Style.Geometry . Настраивает внешний вид геометрии. |
name | String | Нет | Идентификатор геометрии, должен быть уникальным. Если параметр не передан, генерируется автоматически. |
hint | String | Нет | Подсказка, которая будет показана при наведении курсора на геометрию. |
Возвращает:
Тип | Описание |
---|---|
Object | Возвращает объект геометрии, определенный в переменной wkt . |
Формат WKT (Well-Known Text) — стандартный текстовый формат предоставления векторных географических объектов.
Для каждого вида геометрий существует свой формат текстового представления. Рассмотрим каждый из них.
Круг:
CIRCLE(centrePoint1Lon centrePoint1Lat circleRadius)
Где:
Имя | Обязательный | Описание |
---|---|---|
CIRCLE | Да | Вид геометрии. В данном случае — круг. |
centrePoint1Lon | Да | Долгота. Координаты центра круга. |
centrePoint1Lat | Да | Широта. Координаты центра круга. |
circleRadius | Да | Радиус круга. В метрах. |
Ломаная линия:
POLYLINE(point1Lon point1Lat, point2Lon point2Lat, ... , pointNLon pointNLat)
Где:
Имя | Обязательный | Описание |
---|---|---|
POLYLINE | Да | Вид геометрии. В данном случае - ломаная. |
pointJLon | Да | Долгота. Координаты точек (где J = 1, 2, ... , N — порядковый номера точек ломаной) |
pointJLat | Да | Широта. Координаты точек (где J = 1, 2, ... , N — порядковый номера точек ломаной) |
Многоугольник:
POLYGON(point1Lon point1Lat, point2Lon point2Lat, ... , pointNLon pointNLat)
Где:
Имя | Обязательный | Описание |
---|---|---|
POLYGON | Да | Вид геометрии. В данном случае - многоугольник. |
pointJLon | Да | олгота. Координаты точек (где J = 1, 2, ... , N — порядковый номера точек многоугольника) |
pointJLat | Да | Широта. Координаты точек (где J = 1, 2, ... , N — порядковый номера точек многоугольника) |
Пример создания круга:
// Создаем объект стилей:
var style = new DG.Style.Geometry();
// Устанавливаем значения свойств:
style.strokeColor = "blue";
style.strokeOpacity = 1;
style.strokeWidth = 3;
style.fillColor = "#ff00ff";
style.fillOpacity = 0.4;
// Создаем круг с описанием его в формате WKT:
var WKTCircle = myMap.geometries.createFromWKT('CIRCLE(82.927810142519 55.028936234826 32)', style, 'newCircle');
// Добавим круг на карту:
myMap.geometries.add(WKTCircle);
В результате мы получим новый объект на карте — круг с центром в точке с координатами (82.927810142519, 55.028936234826
), радиусом 32 метра, с синим контуром и полупрозрачной розовой заливкой.
Пример создания ломаной линии:
// Создаем объект стилей:
var style = new DG.Style.Geometry();
// Устанавливаем значения свойств:
style.strokeColor = "blue";
style.strokeOpacity = 1;
style.strokeWidth = 3;
// Создаем ломаную с указанием координат точек в формате WKT:
var WKTPolyline = myMap.geometries.createFromWKT('POLYLINE(82.9493668627659 55.0259446249702, 82.9516156956499 55.0269757389091, 82.9517821964664 55.0270148630815, 82.9518932099231 55.0270229691957, 82.952010468484 55.0270147064332, 82.9521700081814 55.0269878787236, 82.9523013600269 55.0269508970628, 82.9601314716496 55.0238948565076, 82.9834830482221 55.0142164518612)', style, 'newPolyline');
// Добавим ломаную на карту:
myMap.geometries.add(WKTPolyline);
В результате мы получим новый объект на карте — ломаную состоящую из 9 точек, соединенных синими линиями толщиной 3 пиксела.
Пример создания многоугольника:
// Создаем объект стилей:
var style = new DG.Style.Geometry();
// Устанавливаем значения свойств:
style.strokeColor = "blue";
style.strokeOpacity = 1;
style.strokeWidth = 3;
style.fillColor = "#ff00ff";
style.fillOpacity = 0.4;
WKTPolygon = myMap.geometries.createFromWKT('POLYGON(82.9493668627659 55.0259446249702, 82.9516156956499 55.0269757389091, 82.9517821964664 55.0270148630815, 82.9518932099231 55.0270229691957, 82.952010468484 55.0270147064332, 82.9521700081814 55.0269878787236, 82.9523013600269 55.0269508970628, 82.9601314716496 55.0238948565076, 82.9834830482221 55.0142164518612)', style, 'newPolygon');
// Добавим многоугольник на карту:
myMap.geometries.add(WKTPolygon);
В результате мы получим новый объект на карте — многоугольник состоящий из 9 точек, соединенных синими линиями толщиной 3 пиксела и полупрозрачной заливкой розового цвета.
Класс группы геометрий DG.GeometryGroup
Объект группы предоставляет наиболее полный арсенал методов для управления группами геометрий.
Ниже мы подробно рассмотрим все методы класса группы геометрий. Для наглядности допустим, что myGroup
— объект группы.
Описание методов представляет собой действие (что делает метод? для чего он нужен?) и название метода. Вместе с тем, представлены дополнительно параметры, возвращаемое значение метода и особенности, если таковые имеются.
Создать группу слоев явно через ключевое слово new
нельзя. Правильно это делать с помощью метода createGroup
менеджера геометрий.
Методы
Добавить геометрию в группу
myGroup.add(item, index)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
item | Object | Да | Геометрия. Экземпляр класса геометрии. |
index | Number | Нет | Порядковый номер добавляемой геометрии в группе. При этом нумерация геометрий начинается с нуля. Если параметр не передан, геометрия будет добавлен в конец группы. Ограничение: значение должно быть целым неотрицательным числом не превышающим текущее количество геометрий в группе. Таким образом обеспечивается непрерывная нумерация элементов в группе. |
Удалить геометрию из группы
myGroup.remove(item)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
item | DG.Geometries.Circle | DG.Geometries.Polygon | DG.Geometries.Polyline | Да | Геометрия. Экземпляр класса геометрии. |
Получить список всех геометрий в группе
myGroup.getAll()Возвращает:
Тип | Описание |
---|---|
Array | Массив состоящий из экземпляров класса геометрии |
Получить геометрию по ее идентификатору в группе
myGroup.get(id)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
id | string | Да | Идентификатор геометрии. Для его получения у геометрии есть метод getId() . |
Удалить все геометрии из группы
myGroup.removeAll()Несмотря на удаление всех геометрий из группы, сам объект группы остается не тронутыми.
Скрыть группу
myGroup.hide()При этом все геометрии в группе становятся невидимыми. Более того, при добавлении новых геометрий они также остаются невидимыми.
Отобразить группу
myGroup.show()Получить количество геометрий в группе
myGroup.length()Возвращает:
Тип | Описание |
---|---|
Number | Возвращает количество геометрий в группе |
Проверить наличие геометрии в группе
myGroup.contains(item)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
item | object | Да | Геометрия. Экземпляр класса геометрии. |
Возвращает:
Тип | Описание |
---|---|
Boolean | Возвращает true , если геометрия содержится в группе. В противном случае - false . |
Получить порядковый номер геометрии в группе
myGroup.indexOf(item)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
item | object | Да | Геометрия. Экземпляр класса геометрии. |
Возвращает:
Тип | Описание |
---|---|
Number | null | Возвращает порядковый номер геометрии в группе. Нумерация начинается с нуля. Если геометрии нет в группе, возвращает null . |
Выполнить операцию для каждой геометрии в группе
myGroup.forEach(callback, context)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
callback | Function | Да | Сallback — функция, вызываемая для каждого элемента в группе. Функция вызывается со следующими параметрами callback(geometry, index, group) , где: geometry — текущая геометрия, index — порядковый номер текущей геометрии (нумерация начинается с нуля),group — объект группы myGroup . |
context | object | Нет | Контекст выполнения callback-функции. Другими словами, что будет скрываться за ключевым словом this внутри callback-функции. Если параметр не передан, по умолчанию this равен глобальному объекту window . |
Получить имя группы
myGroup.getName()Возвращает:
Тип | Описание |
---|---|
String | Возвращает имя группы, которое задается в конструкторе группы при ее создании. |