Inoltre in che modo si posso disegnare gli archi? ho provato la funzione draw.circle ma non capisco il significato dei parametri start - end. Qualcuno sa come funzionano?
Immagina un cerchio avente come centro della sua circonferenza il punto di origine delle ascisse e delle ordinate.
I parametri "start angle" e "end angle" sono misurati in
radianti. Un angolo pari a 0 pone il parametro sull'asse X positivo. Invece un angolo di radianti π/2.0 (cioè 90 gradi) porrà il parametro sull'asse Y positivo......
...ti faccio un esempio esplicativo, non con la DrawingArea, disegnando all'interno di una Picture vuota (appositamente realizzata nella cartella Dati) da 304 x 304 pixel:
Public Sub Button1_Click()
Dim p As Picture
Dim a As Integer
p = Picture.Load("mia_immagine_vuota.png")
For a = 1 To 360
With Draw
.Begin(p)
' viene disegnato piano-piano un arco iniziando dall'asse X nel 1° quadrante,
' che va incrementando in senso antiorario, ed alla fine si chiude a formare un cerchio:
.Arc(100, 100, 100, 100, Rad(0), Rad(a))
End With
PictureBox1.Picture = p
Wait 0.1
Next
End
...prova (con la tua drawingArea) a vedere quello che succede
, e capirai quello che volevi capire.
Prova anche questa soluzione più specifica per creare un semicerchio:
Public Sub Button1_Click()
Dim p As Picture
Dim a As Integer
p = Picture.Load("mia_immagine_vuota.png")
With Draw
.Begin(p)
' viene disegnato un semicerchio:
.Circle(100, 100, 100, Rad(0), Rad(180))
End With
PictureBox1.Picture = p
End