Ruotare una figura piana intorno a una circonferenza in una DrawingArea
Da Gambas-it.org - Wikipedia.
Versione del 2 giu 2021 alle 19:07 di Vuott (Discussione | contributi) (Creata pagina con "Il caso è quello in cui si disegna in una ''DrawingArea'' una figura piana (ad esempio un cerchio) che ruota intorno a una circonferenza. In questo esempio si utilizzeranno...")
Il caso è quello in cui si disegna in una DrawingArea una figura piana (ad esempio un cerchio) che ruota intorno a una circonferenza.
In questo esempio si utilizzeranno i Metodi "Paint.Translate()" e "Paint.Rotate()" per effettuare la rotazione.
Private an As Float Public Sub Form_Open() Me.Arrangement = Arrange.Fill With DrawingArea1 .X = 0 .Y = 0 End With With Timer1 .Delay = 10 .Start End With End Public Sub DrawingArea1_Draw() With Paint .Arc(DrawingArea1.W / 2, DrawingArea1.H / 2, 50, Rad(0), 360, False) .stroke .Translate(DrawingArea1.W / 2, DrawingArea1.H / 2) ' Un valore positivo dell'angolo di rotazione determina una rotazione in senso antiorario, un valore negativo invece una rotazione in senso orario: .Rotate(Rad(-an)) .Brush = .Color(Color.Red) .Arc(40, 40, 5, Rad(0), 360, False) .Fill .End End With End Public Sub Timer1_Timer() Inc an DrawingArea1.Refresh End