]> git.llucax.com Git - z.facultad/75.42/plaqui.git/commitdiff
Se arregla la suma de color del tanque
authorRicardo Markiewicz <gazer.arg@gmail.com>
Thu, 20 Nov 2003 18:57:43 +0000 (18:57 +0000)
committerRicardo Markiewicz <gazer.arg@gmail.com>
Thu, 20 Nov 2003 18:57:43 +0000 (18:57 +0000)
Model/src/tank.cpp

index 895b5eff04a010748319af99761d95db68442346..93c8564dd77231064f71735c78a698c365cb3eca 100644 (file)
@@ -34,21 +34,23 @@ void Tank::simulate()
                in_color = o->get_color();
        }
 
                in_color = o->get_color();
        }
 
-       // le resto lo que entrego
-       litros -= actual_out_flow;
-
+       // le sumo lo que recibo
+       litros += actual_in_flow;
        // calculo el nuevo color
        int r, g, b;
        // calculo el nuevo color
        int r, g, b;
-       float l = litros+actual_in_flow;
+       float l = litros;
 
        r = (int)(fluid_color.r()*litros/l + in_color.r()*actual_in_flow/l);
        g = (int)(fluid_color.g()*litros/l + in_color.g()*actual_in_flow/l);
        b = (int)(fluid_color.b()*litros/l + in_color.b()*actual_in_flow/l);
 
        r = (int)(fluid_color.r()*litros/l + in_color.r()*actual_in_flow/l);
        g = (int)(fluid_color.g()*litros/l + in_color.g()*actual_in_flow/l);
        b = (int)(fluid_color.b()*litros/l + in_color.b()*actual_in_flow/l);
-       
+
+       if (r>255) r = 255;
+       if (g>255) g = 255;
+       if (b>255) b = 255;
        fluid_color = RGB(r,g,b);
 
        fluid_color = RGB(r,g,b);
 
-       // le sumo lo que recibo
-       litros = l;
+       // le resto lo que entrego
+       litros -= actual_out_flow;
 
        std::cout << name << "Capacidad: " << capacity;
        std::cout << "  Litros : " << litros << std::endl;
 
        std::cout << name << "Capacidad: " << capacity;
        std::cout << "  Litros : " << litros << std::endl;