Esempio n. 1
0
        private void actualizarMetricas()
        {
            if (Constantes.tiempo_acum > 2000000000)
            {
                Constantes.resetEstadisticas();
            }
            if (Constantes.tiempos_boids.Count > 10000)
            {
                Constantes.tiempos_boids.Clear();
            }
            int tiempo = Constantes.tiempo - this.tiempo_inicio;

            Constantes.tiempos_boids.Add(tiempo);
            Constantes.tiempo_acum += tiempo;
            Constantes.nro_trayectorias++;
            if (tiempo < Constantes.min_tiempo)
            {
                Constantes.min_tiempo = tiempo;
            }
            if (tiempo > Constantes.max_tiempo)
            {
                Constantes.max_tiempo = tiempo;
            }
            this.tiempo_inicio = Constantes.tiempo;
        }
        protected void OnButtonOkPressed(object sender, EventArgs e)
        {
            Constantes.escenario  = false;
            Constantes.simulacion = true;

            mainw.tb1.Sensitive                   = true;
            mainw.tb2.Sensitive                   = false;
            mainw.nivel.Sensitive                 = false;
            mainw.etiquetaNivel.Sensitive         = false;
            mainw.intermitencia.Sensitive         = false;
            mainw.etiquetaIntermitencia.Sensitive = false;
            mainw.calor.Active       = false;
            mainw.trayectoria.Active = false;

            Logica.nro_boids             = (int)this.spinbutton1.Value;
            Constantes.lapsos            = (int)this.spinbuttonLapsos.Value;
            Constantes.iteraciones_lapso = (int)this.spinbuttonIteraciones.Value;
            Constantes.tiempos_boids.Clear();
            Constantes.tiempo            = 0;  //Comienzo a contar las iteraciones de nuevo
            Constantes.iteraciones_total = 0;

            Constantes.resetEstadisticas();

            Logica.crear_boids();
            Logica.play                 = true;
            mainw.tb1.Sensitive         = true;
            mainw.grilla.Active         = false;
            mainw.calor.Active          = false;
            mainw.estadistica.Sensitive = true;
            this.Destroy();
        }