private void Nettoyage_Click(object sender, EventArgs e)
        {
            Graphics t = Mer.CreateGraphics();

            Mer.Invalidate();
            listBox1.Items.Clear();
            soluce.Clear();
        }
        private void Simulations(object sender, EventArgs e)
        {
            Graphics t      = Mer.CreateGraphics();
            Pen      redPen = new Pen(Color.Red);

            redPen.Width = 3F;
            Node  NI         = (Node)soluce.ElementAt(0);
            Point pos_depart = new Point(Convert.ToInt32(NI.P_x), (300 - Convert.ToInt32(NI.P_y) + 1));

            foreach (GenericNode N in soluce)
            {
                listBox1.Items.Add(N);
                int   a           = PositionX_Noeud(N);
                Point pos_arrivee = new Point(PositionX_Noeud(N), (300 - PositionY_Noeud(N) + 1));
                t.DrawLine(redPen, pos_depart, pos_arrivee);

                pos_depart = pos_arrivee;
            }
        }