Composant Delphi / Google Maps / OpenStreetMap / Leaflet  / Mappilary / Native Maps 100% Delphi 0% WebBrowser 0% Javascript

TECShapePolygone

Vous êtes ici :TECNativeMap > Shapes

Sommaire

TECShapePolygone descend de TECShapeLine et permet d'afficher des polygones sur votre carte.

Fig. 114 Polygones

En plus des propriétés de TECShapeLine vous avez accès à

Property Area : double
Surface en Km²
property FillColor : TColor
Couleur de remplissage
Property Color : TColor
Couleur de la bordure
property Style : TBrushStyle
Style de remplissage (bsSolid, bsClear, bsHorizontal, bsVertical, bsFDiagonal, bsBDiagonal, bsCross, bsDiagCross)

Style ne fonctionne pas sous Firemonkey, utilisez à la place BrushFilename pour indiquer une image qui remplira votre polygone, BrushFilename peut être soit un chemin local soit une url ou une image encodée en base64 comme pour Marker.Filename

30

property Opacity : byte

Opacité du polygone (0 = totalement transparent, 100 = opaque)
property Level : integer
Hauteur en mètres du polygone pour un affichage en pseudo 3D

Fig. 115 Level = 16 - Level = 0

OnAfterDraw

Vous avez aussi un événement OnAfterDraw qui permet de dessiner par dessus votre polygone, exemple pour y inscrire sa description.

FPoly : TECShapePolygone;

FPoly := TECShapePolygone(map.add(nsPolygon,Lat,Lng)) ;
FPoly.OnAfterDraw := doAfterDraw;
FPoly.Description := 'Polygone '+inttostr(map.Shapes.Polygones.Count);

procedure TFormNativeLinePolygone.doAfterDraw(const canvas:TECCanvas;var Rect:TRect;item:TECshape) ;
var x,y,w,h:integer;
begin
//transparancy text
canvas.brush.Style := bsClear;

canvas.font.color := clBlack;
canvas.font.Style := [fsBold];

w := canvas.TextWidth(item.Description) ;
h := canvas.TextHeight(item.Description);

x := rect.Left+((rect.Right-rect.Left-w) div 2);
y := rect.top+((rect.bottom-rect.top-h) div 2);

canvas.TextOut(x,y,item.Description);

end;

Aller à la page
Composant Delphi / Google Maps / OpenStreetMap / Leaflet  / Mappilary© 2016 ESCOT-SEP Christophe - Réalisé avec Help&Web - RSS - RSS - Google+