Disegnare in una DrawingArea una spirale: differenze tra le versioni
Vai alla navigazione
Vai alla ricerca
Nessun oggetto della modifica |
|||
| Riga 1: | Riga 1: | ||
==Disegnare una Spirale Archimedea== | ==Disegnare una Spirale Archimedea== | ||
Per disegnare su una ''DrawingArea'' una [https://it.wikipedia.org/wiki/Spirale_archimedea Spirale Archimedea], possiamo utilizzare il seguente codice: | Per disegnare su una ''DrawingArea'' una [https://it.wikipedia.org/wiki/Spirale_archimedea Spirale Archimedea], possiamo utilizzare il seguente codice: <SUP>[[[#Note|Nota 1]]]</sup> | ||
Private DrawingArea1 As DrawingArea | Private DrawingArea1 As DrawingArea | ||
Private Const VOLUTE As Byte = 8 | Private Const VOLUTE As Byte = 8 | ||
| Riga 40: | Riga 40: | ||
'''End''' | '''End''' | ||
=Note= | |||
[1] Vedere anche questa pagina: [[Disegnare_in_successione_dei_punti_in_una_DrawingArea#Visibili_il_punto_corrente_disegnato_e_tutti_i_punti_precedentemente_disegnati|Visibili il punto corrente disegnato e tutti i punti precedentemente disegnati]] | |||
Versione delle 19:04, 25 nov 2021
Disegnare una Spirale Archimedea
Per disegnare su una DrawingArea una Spirale Archimedea, possiamo utilizzare il seguente codice: [Nota 1]
Private DrawingArea1 As DrawingArea
Private Const VOLUTE As Byte = 8
Private Const THETA As Float = 1E-4
Public Sub Form_Open()
With Me
.W = Screen.AvailableWidth
.H = Screen.AvailableHeight
.Arrangement = Arrange.Fill
End With
With DrawingArea1 = New DrawingArea(Me) As "DrawingArea1"
.X = 0
.Y = 0
End With
End
Public Sub DrawingArea1_Draw()
Dim t As Short
Dim x, y, r As Float ' r = distanza del punto relativo della spirale dal centro
x = DrawingArea1.W / 2
y = DrawingArea1.H / 2
With Paint
.Brush = .Color(Color.Red)
For t = 0 To 360 * VOLUTE
r = r + (t * THETA)
.Arc(x + (r * Cos(Rad(t))), y + (r * Sin(Rad(t))), 1.0, Rad(0), Rad(360), False)
.Fill
Next
.End
End With
End
Note
[1] Vedere anche questa pagina: Visibili il punto corrente disegnato e tutti i punti precedentemente disegnati