C# 线性渐变圆

    

 Thread t = new Thread(() =>
            {
                for (int i = 0; i < 360; i++)
                {
                    Thread.Sleep(100);
                    double dblsin = Math.Sin(Math.PI * (i + 1) / 180);
                    double dblcos = Math.Cos(Math.PI * (i + 1) / 180);
                    int y = 100 + Convert.ToInt32(Math.Floor(50 * dblsin));
                    int x = 100 + Convert.ToInt32(Math.Floor(50 * dblcos));
                    Point p1 = new Point(x, y);

                    double dblsin2 = Math.Sin(Math.PI * (180 + (i + 1)) / 180);
                    double dblcos2 = Math.Cos(Math.PI * (180 + (i + 1)) / 180);
                    int y2 = 100 + Convert.ToInt32(Math.Floor(50 * dblsin2));
                    int x2 = 100 + Convert.ToInt32(Math.Floor(50 * dblcos2));
                    Point p2 = new Point(x2, y2);

                    using (Brush aGradientBrush = new LinearGradientBrush(p1, p2, Color.Blue, Color.White))
                    { 
                        using (Pen aGradientPen = new Pen(aGradientBrush, 1))
                        { 
                            g.DrawLine(aGradientPen, p1, p2);
                        }
                    }
                }
            });
            t.Start();

 

 

posted @ 2021-01-21 14:56  蓝雨冰城  阅读(424)  评论(0编辑  收藏  举报