private void AnimarCirculo(Circulo circulo, Vista vista)
        {
            vista.ColorLapiz = Color.DarkRed;
            vista.mostrar_circulo(circulo);
            bool sentido = true;
            while (true)
            {
                while (checkBox1.Checked)
                {
                    Thread.Sleep(500);
                    vista.ColorLapiz = Color.LightSteelBlue;
                    vista.mostrar_circulo(circulo);
                    if (sentido)
                    {
                        if (circulo.centro.X <= panel1.Width - 2 * circulo.radio)
                            circulo.centro = new Point(circulo.centro.X + circulo.radio, circulo.centro.Y);
                        else
                            sentido = false;
                    }
                    else
                    {

                        if (circulo.centro.X > circulo.radio)
                            circulo.centro = new Point(circulo.centro.X - circulo.radio, circulo.centro.Y);
                        else
                            sentido = true;

                    }
                    vista.ColorLapiz = Color.DarkRed;
                    vista.mostrar_circulo(circulo);
                }
            }
        }
        private void button1_Click(object sender, EventArgs e)
        {
            if (checkBox1.Checked)
            {
                Random aleatorio = new Random();
                int r = aleatorio.Next(15, 50);
                Point punto = new Point(aleatorio.Next(r, panel1.Width * r), aleatorio.Next(r, panel1.Height));
                Circulo circulo = new Circulo(r, punto);
                Task tarea = new Task(() => AnimarCirculo(circulo, new Vista(panel1)));
                tarea.Start();

            }
            else
                MessageBox.Show("La casilla de movimiento no esta seleccionada");
        }
 public void mostrar_circulo(Circulo c)
 {
     g.DrawEllipse(new Pen(ColorLapiz, 3), c.centro.X, c.centro.Y, c.radio, c.radio);
 }
Exemple #4
0
 public void mostrar_circulo(Circulo c)
 {
     g.DrawEllipse(new Pen(ColorLapiz, 3), c.centro.X, c.centro.Y, c.radio, c.radio);
 }