Disegnare in una DrawingArea un poligono

Da Gambas-it.org - Wikipedia.

Per disegnare in una DrawingArea un qualunque poligono [Nota 1], è necessario utilizzare il Metodo ".Polygon()" della Classe "Paint".

Questo Metodo richiede che siano individuati nel suo unico parametro di tipo vettoriale tutti i punti (x,y rispetto all'angolo in alto a sinistra del Contenitore Drawingrea) relativi ai vertici del poligono da disegnare.

Mostriamo un esempio, nel quale sarà disegnato un "Trapezio scaleno".

Private drawingarea1 As DrawingArea


Public Sub Form_Open()
 
 With Me
   .Center
   .W = 400
   .H = 400
 End With
 
 With drawingarea1 = New DrawingArea(Me) As "DrArea"
   .X = 0
   .Y = 0
   .W = 300
   .H = 300
   .Background = Color.Lighter(Color.Yellow)
 End With
 
End

Public Sub DrArea_Draw()
 
 With Paint
   .Brush = .Color(Color.Red)
   .Polygon([80.0, 50.0, 200.0, 50.0, 250.0, 100.0, 50.0, 100.0])
' Se si vuole soltanto visualizzare la traccia del perimetro del poligono: 
   .Stroke
' Se, invece, si intende ottenere un poligono internamente colorato:
'  .Fill 
   .End
 End With
 
End


Note

[1] Ovviamente, per ottenere il disegno di un Quadrato o di un Rettangolo, si userà il Metodo "Paint.DrawRect()" oppure "Paint.Rectangle()".