private void novoPoligono(Poligono p)
 {
     if (p.getPontos().Count > 2)
     {
         p.desenha(imagemBmp);
         poligonos.Add(p);
         pictureBox.Image = imagemBmp;
         DataRow dr = dsPoligonos.Tables["tbPoligonos"].NewRow();
         dr["Poligono"]       = p;
         dr["PosicaoInicial"] = p.getPosicaoInicial();
         dsPoligonos.Tables["tbPoligonos"].Rows.Add(dr);
     }
 }
        private void desenhaPoligonos()
        {
            pictureBox.Image = imagemBmp = new Bitmap(W, H);
            Util.preencher((Bitmap)pictureBox.Image, fundo);

            for (int i = 0; i < poligonos.Count; i++)
            {
                Poligono p = poligonos[i];
                p.desenha(imagemBmp);
                Point centro = p.getCentroAtual();
            }

            pictureBox.Image = imagemBmp;
        }