示例#1
0
 public void ScansionaContenitore(Contenitore c)
 {
     if (politica != null)
     {
         foreach (FiguraGeometrica f in c.Figure)
         {
             if (politica.Seleziona(f))
             {
                 AggiungiFigura(f);
             }
         }
     }
 }
示例#2
0
        static void Main(string[] args)
        {
            Contenitore c = new Contenitore();

            c.AggiungiFigura(new Cerchio(2));
            c.AggiungiFigura(new Quadrato(3));
            c.AggiungiFigura(new Quadrato(4));
            Console.WriteLine("Contenitore:");
            c.ElencaFigure();

            Selettore s = new Selettore();

            s.ScansionaContenitore(c);
            Console.WriteLine("Selettore senza politiche:");
            s.ElencaFigure();
            s.ImpostaPolitica(new PerimetroMinimo(14));
            s.ScansionaContenitore(c);
            Console.WriteLine("Selettore con politica perimetro:");
            s.ElencaFigure();

            s.Svuota();
            s.ImpostaPolitica(new AreaMassima(15));
            s.ScansionaContenitore(c);
            Console.WriteLine("Selettore con politica area:");
            s.ElencaFigure();

            s.Svuota();
            s.ImpostaPolitica(new PoliticaTipoCerchio());
            s.ScansionaContenitore(c);
            Console.WriteLine("Selettore con politica cerchio:");
            s.ElencaFigure();

            s.Svuota();
            s.ElencaFigure();

            Console.ReadLine();
        }
示例#3
0
 private void btn_crea_Click(object sender, RoutedEventArgs e)
 {
     n++;
     Contenitore c = new Contenitore();
     lbx_Contenitori.Items.Add(c.ToString()+$" {n}");
 }