Mega Code Archive

 
Categories / C# / 2D Graphics
 

Star Gradient Brush

using System; using System.Drawing; using System.Drawing.Drawing2D; using System.Windows.Forms;     class StarGradientBrush: Form {      public static void Main()      {           Application.Run(new StarGradientBrush());      }      public StarGradientBrush()      {           ResizeRedraw = true;       }      protected override void OnPaint(PaintEventArgs pea)      {           DoPage(pea.Graphics, ForeColor,ClientSize.Width, ClientSize.Height);      }             protected void DoPage(Graphics grfx, Color clr, int cx, int cy)      {           Point[] apt = new Point[5];                      for (int i = 0; i < apt.Length; i++)           {                double dAngle = (i * 0.8 - 0.5) * Math.PI;                apt[i] = new Point(                          (int)(cx * (0.50 + 0.48 * Math.Cos(dAngle))),                          (int)(cy * (0.50 + 0.48 * Math.Sin(dAngle))));           }           PathGradientBrush pgbrush = new PathGradientBrush(apt);               pgbrush.CenterColor = Color.White;           pgbrush.SurroundColors = new Color[1] { Color.Black };               grfx.FillRectangle(pgbrush, 0, 0, cx, cy);     } }