Differenze tra le versioni di "Disegnare in una DrawingArea un rettangolo colorato con distinzione sfumata fra i colori"

Da Gambas-it.org - Wikipedia.
(Creata pagina con 'Per ottenere una distinzione sfumata fra i colori di un rettangolo disegnato in una ''DrawingArea'', si deve utilizzare il metodo ''.LinearGradient()'' della Classe ''Paint''....')
 
Riga 1: Riga 1:
Per ottenere una distinzione sfumata fra i colori di un rettangolo disegnato in una ''DrawingArea'', si deve utilizzare il metodo ''.LinearGradient()'' della Classe ''Paint''.
+
Per ottenere una distinzione sfumata dei confini fra un colore ed un altro prossimo di un rettangolo disegnato in una ''DrawingArea'', si deve utilizzare il metodo ''.LinearGradient()'' della Classe ''Paint''. Il passaggio da un colore all'altro avviene in modo sfumato sia attraverso la sua dissolvenza sia mediante la sua fusione con la parte dissolta dell'altro colore.  
  
  
Mostriamo un semplice esempio, nel quale viene disegnato un rettangolo internamente colorato con quattro colori blu, verde, giallo e rosso:
+
Mostriamo un semplice esempio, nel quale viene disegnato un rettangolo internamente colorato con quattro colori blu, verde, giallo e rosso, distinti l'uno dall'altro prossimo in modo sfumato:
 
  '''Public''' Sub Form_Open()
 
  '''Public''' Sub Form_Open()
 
   
 
   

Versione delle 08:20, 6 lug 2014

Per ottenere una distinzione sfumata dei confini fra un colore ed un altro prossimo di un rettangolo disegnato in una DrawingArea, si deve utilizzare il metodo .LinearGradient() della Classe Paint. Il passaggio da un colore all'altro avviene in modo sfumato sia attraverso la sua dissolvenza sia mediante la sua fusione con la parte dissolta dell'altro colore.


Mostriamo un semplice esempio, nel quale viene disegnato un rettangolo internamente colorato con quattro colori blu, verde, giallo e rosso, distinti l'uno dall'altro prossimo in modo sfumato:

Public Sub Form_Open()

  DrawingArea1.Background = Color.White

End


Public Sub DrawingArea1_Draw()

 Dim c As Integer[] = [Color.Blue, Color.Green, Color.Yellow, Color.Red]
 Dim p As Float[] = [0, 0.34, 0.67, 1]

  With Paint
    .Begin(DrawingArea1)
    .Brush = .LinearGradient(10, 40, 300, 40, c, p)
    .Rectangle(10, 40, 300, 40)
    .Fill
    .End
  End With

End