// Last edited on 2003-12-09 05:03:00 by stolfi #declare vel = 20; #declare ctr = < 0.00, 0.00, -12.00 > + clock*vel*y; #declare camDir = < -35, -25, 55 >; // sphere{ ctr, 5 texture{ pigment{ color rgb <1,0,1> } finish { ambient 0.6 diffuse 0.4 } } } camera { location ctr + 0.90*camDir right -1.33*x up 1.00*y sky z look_at ctr } // ====================================================================== // FONTES DE LUZ light_source { 10 * < -10.0, -50.0, 100.0 > // Posição da lâmpada. color rgb 1.0 * < 1.00, 1.00, 1.00 > // Intensidade e corda luz. } light_source { 10 * < -50.0, +20.0, 100.0 > // Posição da lâmpada. color rgb 0.6 * < 1.00, 1.00, 1.00 > // Intensidade e corda luz. } light_source { 10 * < -50.0, -15.0, +25.0 > // Posição da lâmpada. color rgb 0.8 * < 1.00, 1.00, 1.00 > // Intensidade e corda luz. } #include "colors.inc" background { Cyan } #declare clock0 = clock; #declare clock1 = mod(clock0 + 0.5, 1); #declare chao = plane { z, -15 texture{ pigment{ checker color rgb <0.7,0.6,0.5>, color rgb <0.6,0.5,0.2> } finish{ diffuse 0.7 ambient 0.3 } scale 0.25*vel } } #declare parte1 = cylinder { < 0, 0, 0 >, < 6, 0, 0 >, 1 pigment { Red } } #declare parte2 = box { < 0, -0.4, -0.4 >, < 10, 0.4, 0.4 > pigment { Yellow } } #declare parte3 = box { < 0, -0.3, -0.3 >, < 6, 0.3, 0.3 > pigment { Blue } } #declare parte4 = cone { <0, 0, 0>, 0.2 <3, 0, 0>, 0 } #declare corpo = box { < -8, -15, -3>, < 8, 15, 3 > pigment { Green } } #declare a = 0; #declare d = 10; #if(clock <= 0.1) #declare e = 0; #declare b = 50; #declare c = 30; #else #if(clock <= 0.2) #declare e = 0; #declare b = 30; #declare c = 30; #else #if(clock <= 0.3) #declare e = -30; #declare b = 30; #declare c = 20; #else #if(clock <= 0.4) #declare e = -30; #declare b = 50; #declare c = 30; #else #if(clock <= 0.5) #declare e = -10; #declare b = 50; #declare c = 30; #else #if(clock <= 0.6) #declare e = 10; #declare b = 50; #declare c = 30; #else #if(clock <= 0.7) #declare e = 30; #declare b = 50; #declare c = 30; #else #if(clock <= 0.8) #declare e = 30; #declare b = 30; #declare c = 20; #else #if(clock <= 0.9) #declare e = 0; #declare b = 30; #declare c = 50; #else #declare e = 0; #declare b = 50; #declare c = 30; #end #end #end #end #end #end #end #end #end #declare parte4_3 = union { object { parte3 } object { parte4 rotate <0,0,0> translate <6-a,0,0> } } #declare parte4_2 = union { object { parte2 } object { parte4_3 rotate <0,b,0> translate <10,0,0> } } #declare parte4_1 = union { object { parte1 } object { parte4_2 rotate <0,c,0> translate <6,0,0> } } #declare conjunto_pernas_1 = union { object { parte4_1 rotate <0,d,180-e> translate <-8,-13.5,0> } object { parte4_1 rotate <0,d,180-e> translate <-8,-4.5,0> } object { parte4_1 rotate <0,d,e> translate <8,4.5,0> } object { parte4_1 rotate <0,d,e> translate <8,13.5,0> } } #if(clock1 <= 0.1) #declare e = 0; #declare b = 50; #declare c = 30; #else #if(clock1 <= 0.2) #declare e = 0; #declare b = 30; #declare c = 30; #else #if(clock1 <= 0.3) #declare e = -30; #declare b = 30; #declare c = 20; #else #if(clock1 <= 0.4) #declare e = -30; #declare b = 50; #declare c = 30; #else #if(clock1 <= 0.5) #declare e = -10; #declare b = 50; #declare c = 30; #else #if(clock1 <= 0.6) #declare e = 10; #declare b = 50; #declare c = 30; #else #if(clock1 <= 0.7) #declare e = 30; #declare b = 50; #declare c = 30; #else #if(clock1 <= 0.8) #declare e = 30; #declare b = 30; #declare c = 20; #else #if(clock1 <= 0.9) #declare e = 0; #declare b = 30; #declare c = 50; #else #declare e = 0; #declare b = 50; #declare c = 30; #end #end #end #end #end #end #end #end #end #declare parte4_3 = union { object { parte3 } object { parte4 rotate <0,0,0> translate <6-a,0,0> } } #declare parte4_2 = union { object { parte2 } object { parte4_3 rotate <0,b,0> translate <10,0,0> } } #declare parte4_1 = union { object { parte1 } object { parte4_2 rotate <0,c,0> translate <6,0,0> } } #declare conjunto_pernas_2 = union { object { parte4_1 rotate <0,d,e> translate <8,-13.5,0> } object { parte4_1 rotate <0,d,e> translate <8,-4.5,0> } object { parte4_1 rotate <0,d,180-e> translate <-8,4.5,0> } object { parte4_1 rotate <0,d,180-e> translate <-8,13.5,0> } } #declare inseto = union { object { conjunto_pernas_1 } object { conjunto_pernas_2 } object { corpo } } object { inseto rotate <0,0,0> translate <0,20*clock,0> } object { chao }