Delphi Tutorial


 

Rainbow color gradient

 

      

 

Download this example

procedure TForm1.FormCreate(Sender: TObject);

   { Draw 1 pixcel width line }
   procedure DrawLine(X,Y,H:Integer; Step:Real);
   Var
      R, C : Integer;
   Begin
      For R:=0 To H Do
      Begin
         { Change fill color }
         C:=Round(R*Step);
         { Red -> Green }
         Image1.Canvas.Pen.Color:=RGB(255-C,C,0);

         { Fill area by drawing lines }
         Image1.Canvas.MoveTo(X,Y+R);
         Image1.Canvas.LineTo(X+1,Y+R);
      End;

   End;

Var
   Angle, X, Y, H, H2, W : Integer;
   Step : Real;
begin
   { Get form size }
   H:=Image1.Height;
   W:=Image1.Width;

   { Fill image area by form color }
   Image1.Canvas.Brush.Color:=clBlack;
   Image1.Canvas.Pen.Color:=clBlack;
   Image1.Canvas.Rectangle(0,0,W,H);


   { Set fill size }
   H2:=150;

   { Set fill step size }
   Step:=255/H2;
   Angle:=0;
   For X:=1 to W Do
   Begin
      Y:=Round(100*Sin(Angle*(Pi/180)));
      DrawLine(X,(H Div 3)-Y,H2,Step);
      Inc(Angle);
      If Angle>360 Then Angle:=0;
   End;
end;

 

DOWNLOAD this example

Click here to download this complete example for Delphi 6. (File size 4KB)

 

 

Go top

 


Previous Page First Page Next Page
 
Copyright © 2002 digitalcoding.com. All rights reserved.