Пример #1
0
 private void btnCirculo_Click(object sender, EventArgs e)
 {
     V = new Vista(panel);
     Random aleatorio = new Random();
     int radio = aleatorio.Next(20, 50);
     int x = aleatorio.Next(0, panel.Width - radio);
     int y = aleatorio.Next(0, panel.Height - radio);
     Point centro = new Point(x, y);
     circulo C = new circulo(radio, centro);
     Task tarea = new Task(() => Animar(V, C));
     tarea.Start();
 }
Пример #2
0
 public void dibujar_circulo(circulo c)
 {
     lapiz = new Pen(colorLapiz);
     lapiz.Width = 3;
     g.DrawEllipse(lapiz, c.P_centro.X, c.P_centro.Y, c.P_radio, c.P_radio);
 }
Пример #3
-1
        private void Animar(Vista V, circulo C)
        {
            V.P_ColorLapiz = Color.Purple;
            V.dibujar_circulo(C);
            bool sentido = true;
            while (true)
            {
                while (checkBoxAnim.Checked)
                {
                    Thread.Sleep(500);
                    V.P_ColorLapiz = Color.White;
                    V.dibujar_circulo(C);
                    if (sentido)
                    {
                        if (C.P_centro.X <= panel.Width - 2 * C.P_radio)
                        {
                            C.P_centro = new Point(C.P_centro.X + C.P_radio, C.P_centro.Y);
                        }
                        else
                            sentido = false;
                    }
                    else
                    {
                        if (C.P_centro.X > C.P_radio)
                            C.P_centro = new Point(C.P_centro.X - C.P_radio, C.P_centro.Y);

                        else
                            sentido = true;
                    }
                    V.P_ColorLapiz = Color.Purple;
                    V.dibujar_circulo(C);
                }

            }
        }