void Button6Click(object sender, EventArgs e)
        {
            Graphics gr = Graphics.FromImage(bm);

            primera = false;
            s       = null;
            grafo.setFlag(false);
            limpiarVertices();
            aList.Clear();
            gr.Clear(Color.Transparent);
            pictureBox1.Refresh();
        }
        /*void TreeView1MouseDown(object sender, MouseEventArgs e)
         * {
         *      this.treeView1.ContextMenuStrip = this.contextMenuStrip1;
         *      this.treeView1.ContextMenuStrip.Show();
         * }*/
        void SeñueloToolStripMenuItemClick(object sender, EventArgs e)
        {
            int node_select = this.treeView1.SelectedNode.Index;

            if (!grafo.getFlag())
            {
                s = new Senuelo(grafo.getVertices()[node_select]);
                this.dibujarEspectro(grafo.getVertices()[node_select].getCentro(), false);
                grafo.setFlag(true);
            }
            else
            {
                MessageBox.Show("Solo puede haber un señuelo");
            }
            pictureBox1.Refresh();
        }
        void Button4Click(object sender, EventArgs e)
        {
            aList.Clear();
            limpiarVertices();

            int cantidad = Int32.Parse(comboBox1.SelectedItem.ToString());

            List <int> idValidos = new List <int>();

            for (int i = 0; i < grafo.getVertices().Count; i++)
            {
                idValidos.Add(i + 1);
            }
            int    pos;
            int    d;
            Random rnd;

            for (int i = 0; i < cantidad; i++)
            {
                rnd = new Random();

                pos = rnd.Next(idValidos.Count);
                d   = idValidos[pos];
                Agente a = new Agente(grafo.getVertices().Find(m => m.getID() == d), i + 1);
                idValidos.RemoveAt(pos);
                aList.Add(a);
            }
            rnd = new Random();
            pos = rnd.Next(idValidos.Count);
            d   = idValidos[pos];
            s   = new Senuelo((grafo.getVertices().Find(m => m.getID() == d)));
            dibujarEspectro(s.getVerticeActual().getCentro(), false);
            for (int i = 0; i < aList.Count; i++)
            {
                dibujarEspectro(aList[i].getVertice().getCentro(), true);
            }
            pictureBox1.Refresh();
            primera = false;
            animar();
        }
        void animar()
        {
            Graphics gr = Graphics.FromImage(bm);

            if (!primera)
            {
                inicializarCaminos();
            }

            while (actualizarAgentes())
            {
                dibujarEspectro(s.getVerticeActual().getCentro(), false);
                pictureBox1.Refresh();
                gr.Clear(Color.Transparent);
            }
            primera = true;
            for (int i = 0; i < aList.Count; i++)
            {
                aList[i].dibujarFlecha(s.getVerticeActual().getCentro(), bm);
                dibujarEspectro(aList[i].getListaCamino(), true);
            }
            s = null;
            pictureBox1.Refresh();
        }