|
|
YMaps.Polygon
Поля
| Имя |
Описание |
| Events |
Список обрабатываемых событий. |
Методы
| Имя |
Статический |
Возвращает |
Описание |
| addPoint(point, index) |
|
|
Добавляет одну или несколько вершин в многоугольник.
По умолчанию вершины добавляются после вершины с максимальным индексом. |
| contains(coordPoint) |
|
Boolean |
Определяет находится ли визуально точка coordPoint внутри многоугольника. |
| fromEncodedPoints(encodedPoints, levels, options, coordSystem) |
 |
YMaps.Polygon |
Строит многоугольник из закодированных в Base64 координат его вершин с учетом
указанного для каждой вершины уровня видимости. |
| getClosestPoint(anchorPoint) |
|
Object|null |
Ищет на контуре многоугольника точку, ближайшую к anchorPoint.
Возвращает объект, содержащий координаты ближайшей точки и индекс начальной вершины стороны многоугольника,
на которой лежит найденная точка.
Если многоугольник не содержит точек, возвращает null. |
| getCoordPath() |
|
YMaps.CoordPath |
Возвращает объект, управляющий множеством вершин внешнего контура многоугольника. |
| getEditingOptions() |
|
YMaps.PolygonEditingOptions |
Возвращает опции режима редактирования многоугольника. |
| getMap() |
|
YMaps.Map |
Возвращает указатель на карту, в которую добавлен многоугольник. |
| getNumPoints() |
|
Integer |
Возвращает количество вершин многоугольника. |
| getOptions() |
|
YMaps.PolygonOptions |
Возвращает опции многоугольника. |
| 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.Polygon(path, options)
Создает многоугольник.
Пример: //
var style = new YMaps.Style("default#greenPoint");
style.polygonStyle = new YMaps.PolygonStyle();
style.polygonStyle.fill = 1;
style.polygonStyle.outline = 1;
style.polygonStyle.strokeWidth = 10;
style.polygonStyle.strokeColor = "ffff0088";
style.polygonStyle.fillColor = "ff000055";
YMaps.Styles.add("polygon#Example", style);
var polygon = new YMaps.Polygon([
new YMaps.GeoPoint(37.59507,55.576559),
new YMaps.GeoPoint(37.493452,55.613885),
new YMaps.GeoPoint(37.369853,55.767479),
new YMaps.GeoPoint(37.405561,55.871082),
new YMaps.GeoPoint(37.553873,55.911209),
new YMaps.GeoPoint(37.707682,55.898866),
new YMaps.GeoPoint(37.83677,55.821634),
new YMaps.GeoPoint(37.834021,55.689979),
new YMaps.GeoPoint(37.83677,55.646518),
new YMaps.GeoPoint(37.669234,55.576559)
], {
style: "polygon#Example",
hasHint: 1,
hasBalloon: 1
});
polygon.name = "Москва";
polygon.description = "Столица России";
map.addOverlay(polygon);
Параметры:
| Имя |
Тип |
Необязательный |
По умолчанию |
Описание |
| path |
YMaps.ICoordPoint[]|YMaps.CoordPath |
|
|
Массив координат, либо указатель на объект
типа YMaps.CoordPath, определяющий набор вершин внешнего контура многоугольника. |
| options |
YMaps.PolygonOptions |
 |
|
Опции многоугольника. |
Подробное описание полей
Events
Список обрабатываемых событий.
Подробное описание событий
AddToMap
Добавление многоугольника на карту.
В callback-функцию передается указатель на многоугольник, для которого был вызван обработчик.
BalloonClose
Закрытие балуна многоугольника.
В callback-функцию передается указатель на многоугольник, для которого был вызван обработчик.
BalloonOpen
Открытие балуна многоугольника.
В callback-функцию передается указатель на многоугольник, для которого был вызван обработчик.
Click
Щелчок левой кнопкой мыши.
В callback-функцию передаются:
- указатель на многоугольник, для которого был вызван обработчик;
- указатель на объект события мыши YMaps.MouseEvent.
DblClick
Двойной щелчок левой кнопкой мыши.
В callback-функцию передаются:
- указатель на многоугольник, для которого был вызван обработчик;
- указатель на объект события мыши YMaps.MouseEvent.
Drag
Продолжается перетаскивание многоугольника.
В callback-функцию передаются два аргумента:
- указатель на многоугольник, для которого был вызван обработчик;
- объект YMaps.Point со значением смещения многоугольника в пикселах относительно его предыдущего
положения.
DragEnd
Закончено перетаскивание многоугольника.
В callback-функцию передается указатель на многоугольник, для которого был вызван обработчик.
DragStart
Началось перетаскивание многоугольника (если разрешено).
В callback-функцию передается указатель на многоугольник, для которого был вызван обработчик.
MouseEnter
Курсор наведен на многоугольник.
В callback-функцию передаются:
- указатель на многоугольник, для которого был вызван обработчик;
- указатель на объект события мыши YMaps.MouseEvent.
MouseLeave
Курсор убран с многоугольника.
В callback-функцию передаются:
- указатель на многоугольник, для которого был вызван обработчик;
- указатель на объект события мыши YMaps.MouseEvent.
MouseMove
Движение курсора в пределах многоугольника.
В callback-функцию передаются:
- указатель на многоугольник, для которого был вызван обработчик;
- указатель на объект события мыши YMaps.MouseEvent.
PositionChange
Изменение координат многоугольника (например, с помощью метода YMaps.Polygon.addPoint).
В callback-функцию передается указатель на многоугольник, для которого был вызван обработчик.
RemoveFromMap
Удаление многоугольника с карты.
В callback-функцию передается указатель на многоугольник, для которого был вызван обработчик.
StartDrawing
Включение режима добавления вершин многоугольника.
В callback-функцию передается указатель на многоугольник, для которого был вызван обработчик.
StartEditing
Включение режима редактирования многоугольника.
В callback-функцию передается указатель на многоугольник, для которого был вызван обработчик.
StopDrawing
Отключение режима добавления вершин многоугольника.
В callback-функцию передается указатель на многоугольник, для которого был вызван обработчик.
StopEditing
Отключение режима редактирования многоугольника.
В callback-функцию передается указатель на многоугольник, для которого был вызван обработчик.
Подробное описание методов
addPoint
Добавляет одну или несколько вершин в многоугольник.
По умолчанию вершины добавляются после вершины с максимальным индексом.
Параметры:
| Имя |
Тип |
Необязательный |
По умолчанию |
Описание |
| point |
YMaps.ICoordPoint|YMaps.ICoordPoint[] |
|
|
Координата вершины или массив координат. |
| index |
Integer |
 |
|
Позиция, в которую нужно добавить вершину. |
contains
{Boolean} contains(coordPoint)
Определяет находится ли визуально точка coordPoint внутри многоугольника.
Параметры:
| Имя |
Тип |
Описание |
| coordPoint |
YMaps.ICoordPoint |
Точка, для которой определяется принадлежность многоугольнику. |
Возвращает:
| Тип |
Описание |
| Boolean |
true, если точка внутри многоугольника, иначе false. |
fromEncodedPoints
{YMaps.Polygon} fromEncodedPoints(encodedPoints, levels, options, coordSystem)
Строит многоугольник из закодированных в Base64 координат его вершин с учетом
указанного для каждой вершины уровня видимости.
См.: Кодирование вершин ломаной
Пример: //
map.setCenter(new YMaps.GeoPoint(37.619, 55.753), 1);
var polygon = YMaps.Polygon.fromEncodedPoints(
"hPD6AgItMQGAaWf_QEtMAAAAAAA8S0wAgGln_0JLTACAlpgAO0tMAAAAAABDS0wAgJaYAEFLTAB3lpgAv7Sz_wAAAAC9tLP_gJaYAMW0s_-AaWf_vrSz_wAAAADEtLP_iWln_8C0s_8=",
"BCCBCCBCCBCC"
);
map.addOverlay(polygon);
Параметры:
| Имя |
Тип |
Необязательный |
По умолчанию |
Описание |
| encodedPoints |
String |
|
|
Закодированные в Base64 координаты вершин контуров многоугольника.
Кодированные наборы координат вершин для различных контуров многоугольника разделяютя символом ";".
Координаты вершин внешнего контура должны передаваться в начале строки. |
| levels |
String |
|
|
Строка кодов уровней, определяющая для каждой вершины многоугольника
значение коэффициента масштабирования, начиная с которого вершина должна отображаться в составе контура
соответствующего многоугольника.
Наборы уровней для различных контуров многоугольника разделяются символом ";".
Если для какой-либо вершины значение уровня не задано, применяется значение по умолчанию "A". |
| options |
YMaps.PolygonOptions |
 |
|
Опции многоугольника. |
| coordSystem |
YMaps.ICoordSystem |
 |
YMaps.GeoCoordSystem |
Ссылка на координатную систему. |
Возвращает:
getClosestPoint
{Object|null} getClosestPoint(anchorPoint)
Ищет на контуре многоугольника точку, ближайшую к anchorPoint.
Возвращает объект, содержащий координаты ближайшей точки и индекс начальной вершины стороны многоугольника,
на которой лежит найденная точка.
Если многоугольник не содержит точек, возвращает null.
Пример: var polygon = new YMaps.Polygon([
new YMaps.GeoPoint(0, 0),
new YMaps.GeoPoint(10, 10),
new YMaps.GeoPoint(20, 0)
]);
map.addOverlay(polygon);
var closest = polygon.getClosestPoint(
new YMaps.GeoPoint(15, -5)
);
// closest.point будет содержать экземпляр YMaps.GeoPoint с координатами 0, 15.
// closest.index будет содержать 2.
Параметры:
| Имя |
Тип |
Описание |
| anchorPoint |
YMaps.ICoordPoint |
Точка координатной системы, для которой расчитывается ближайшая точка
на контуре многоугольника. |
Возвращает:
| Тип |
Описание |
| Object|null |
Объект с полями point (координаты ближайшей точки) и
index (индекс начальной вершины стороны многоугольника), или null. |
getCoordPath
Возвращает объект, управляющий множеством вершин внешнего контура многоугольника.
Возвращает:
| Тип |
Описание |
| YMaps.CoordPath |
Объект множества вершин внешнего контура многоугольника. |
getEditingOptions
Возвращает опции режима редактирования многоугольника.
Возвращает:
getMap
Возвращает указатель на карту, в которую добавлен многоугольник.
Возвращает:
| Тип |
Описание |
| YMaps.Map |
Указатель на карту, в которую добавлен многоугольник. |
getNumPoints
Возвращает количество вершин многоугольника.
Возвращает:
| Тип |
Описание |
| Integer |
Количество вершин многоугольника. |
getOptions
Возвращает опции многоугольника.
Возвращает:
getPixelPoints
Возвращает информацию об отображении контуров многоугольника.
Параметры:
| Имя |
Тип |
Описание |
| options |
Object |
Объект опций. Может содержать следующие необязательные поля:
- zoom {Integer} - учитывать только вершины,
видимые при указанном в параметре значении коэффициента масштабирования.
По умолчанию - при текущем коэффициенте масштабирования.
- geodesic {Boolean} - флаг, указывающий, что в расчет пиксельных координат
необходимо включить вершины геодезических кривых. По умолчанию берется значение опции
YMaps.PolygonOptions.geodesic.
|
Возвращает:
| Тип |
Описание |
| YMaps.Point[][] |
Массив, каждый элемент которого является массивом пиксельных координат,
соответствующих вершинам одного из контуров многоугольника.
Первым элементом всегда является массив пиксельных координат внешнего контура многоугольника.
Затем следуют массивы пиксельных координат внутренних контуров. |
getPoint
Возвращает вершину многоугольника с заданным индексом.
Параметры:
| Имя |
Тип |
Описание |
| index |
Integer |
Индекс. |
Возвращает:
getPoints
Возвращает координаты вершин многоугольника.
Возвращает:
isDrawing
Проверяет, находится ли многоугольник в режиме рисования.
Возвращает:
| Тип |
Описание |
| Boolean |
true - находится, false - не находится. |
isEditing
Проверяет, находится ли многоугольник в режиме редактирования.
Возвращает:
| Тип |
Описание |
| Boolean |
true - находится, false - не находится. |
removePoint
Удаляет из многоугольника вершину с заданным индексом.
Параметры:
| Имя |
Тип |
Описание |
| index |
Integer |
Индекс удаляемой вершины. |
Возвращает:
setEditingOptions
setEditingOptions(options)
Устанавливает опции режима редактирования многоугольника.
Параметры:
setOptions
setOptions(options, restoreDefault)
Устанавливает опции многоугольника.
Параметры:
| Имя |
Тип |
Необязательный |
По умолчанию |
Описание |
| options |
YMaps.PolygonOptions |
|
|
Опции многоугольника. |
| restoreDefault |
Boolean |
 |
false |
Незаданные опции установить в значения по умолчанию. |
setPoints
Устанавливает координаты вершин многоугольника.
Параметры:
splicePoints
Удаляет заданные вершины многоугольника. Если требуется, вставляет на место удаленных
другие вершины, которые передаются в метод дополнительными параметрами (после параметра number).
Примеры: 1. // Удаляет вторую вершину многоугольника.
polygon.splicePoints(1, 1);
2. // Вставляет новую вершину на вторую позицию.
polygon.splicePoints(1, 0, new YMaps.GeoPoint(37.63, 55.75));
3. // Заменяет вторую вершину на новую.
polygon.splicePoints(1, 1, new YMaps.GeoPoint(37.63, 55.75));
Параметры:
| Имя |
Тип |
Описание |
| index |
Integer |
Индекс первой удаляемой вершины. |
| number |
Integer |
Количество удаляемых вершин. |
Возвращает:
startEditing
Включает режим редактирования многоугольника.
Должен вызываться после добавления многоугольника на карту.
stopEditing
Отключает режим редактирования многоугольника.
| |