property Polygons: TPolygons
Назначение
Свойство для работы с полигонами на карте.
Описание
Позволяет создавать/изменять/удалять полигоны на карте.
Методы и свойства |
Описание |
function Add: TPolygonItem |
Создает новый объект полигона. |
procedure Bounds: TBounds |
Содержит координаты прямоугольной области, в которой расположены все полигоны. |
procedure Clear |
Удаляет все полигоны из колекции. При этом полигоны с карты удалены не будут. Используйте метод ClearPolygons для удаления полигонов одновременно с карты и из коллекции TPolygons |
property Count: Integer |
Возвращает количество полигонов в коллекции (TPolygons). |
procedure Delete(Index: Integer) |
Удаляет указанный полигон из колекции (TPolygons). При этом с карты полигон удален не будет. Для удаления полигона с карты используйте метод DeleteMapPolygon |
property Items[i]: TPolygonItem |
Возвращает указанный полигон. |
Пример
procedure Form1_Button1_OnClick (Sender: TObject; var Cancel: boolean);
var
PolygonItem: TPolygonItem;
begin
// Круг
PolygonItem := Form1.Map1.Polygons.Add;
PolygonItem.Polygon.BackgroundOpacity := 50;
PolygonItem.Polygon.BorderWidth := 2;
// Настройка полигона с типом Круг
PolygonItem.Polygon.PolygonType := ptCircle;
PolygonItem.Polygon.Radius := 10000;
PolygonItem.Polygon.Center.Latitude := 50;
PolygonItem.Polygon.Center.Longitude := 2;
Form1.Map1.CreateMapPolygon(PolygonItem.Polygon);
// Прямоугольник
PolygonItem := Form1.Map1.Polygons.Add;
PolygonItem.Polygon.BackgroundOpacity := 50;
PolygonItem.Polygon.BorderWidth := 2;
//Настройка полигона с типом Прямоугольник
PolygonItem.Polygon.PolygonType := ptRectangle;
PolygonItem.Polygon.Bounds.NorthEast.Latitude := 52;
PolygonItem.Polygon.Bounds.NorthEast.Longitude := 4;
PolygonItem.Polygon.Bounds.SouthWest.Latitude := 50;
PolygonItem.Polygon.Bounds.SouthWest.Longitude := 3;
Form1.Map1.CreateMapPolygon(PolygonItem.Polygon);
// Многоугольник
PolygonItem := Form1.Map1.Polygons.Add;
PolygonItem.Polygon.BackgroundOpacity := 50;
PolygonItem.Polygon.BorderWidth := 2;
//Настройка полигона с типом Многоугольник
PolygonItem.Polygon.PolygonType := ptPath;
PolygonItem.Polygon.Path.Add(50, 2);
PolygonItem.Polygon.Path.Add(52, 4);
PolygonItem.Polygon.Path.Add(50, 4);
Form1.Map1.CreateMapPolygon(PolygonItem.Polygon);
Form1.Map1.MapZoomTo(Form1.Map1.Polygons.Bounds); // Устанавливаем зум карты, чтобы помещались все существующие полигоны
end;