// Last edited on DATE TIME by USER // Processed by remove-cam-lights #declare c0 = 0.00; #declare c1 = 0.50; #declare c2 = 1.00; #declare nh = 5; #declare nv = 4; #declare nquadros = (nv*nh); #declare clock_init = 0.0; #declare clock_end = 1.0; #declare passo = ((clock_end - clock_init)/(nquadros - 0.9999)); #declare iv = 0; #declare cam = 180*(clock-c0)/(c1-c0); #if((clock >= c0) & (clock < c1)) #declare rr = (clock-c0)/(c1-c0); #declare ss = (c1-clock)/(c1-c0); #declare corr = ss*0.2 + rr*1; #declare uper = ss*0 + 45*rr; #end #if((clock >= c1) & (clock <= c2)) #declare rr = (clock-c1)/(c2-c1); #declare ss = (c2-clock)/(c2-c1); #declare corr = ss*1 + rr*0.2; #declare uper = ss*45 + 0*rr; #end background{ color rgb < 0.75, corr, 0.85 > } #declare raio = 2.000; #declare branco = texture { pigment { color rgb < 1.00, 1.00, 1.00 > } finish { diffuse 0.8 specular 0.1 roughness 0.005 ambient 0.1 } } #declare preto = texture { pigment { color rgb < 0.00, 0.00, 0.00 > } finish { diffuse 0.8 specular 0.1 roughness 0.005 ambient 0.1 } } #declare cinza = texture { pigment {color rgb < 0.80, 0.80, 0.80 > } finish { diffuse 0.8 specular 0.1 roughness 0.005 ambient 0.1 } } #declare marrom = texture { pigment {color rgb < 0.90, 0.65, 0.20 > } finish { diffuse 0.8 specular 0.1 roughness 0.005 ambient 0.1 } } #declare azul = texture { pigment { color rgb < 0.10, 0.00, 0.80 > } finish { diffuse 0.8 specular 0.1 roughness 0.005 ambient 0.1 } } #declare amarelo = texture { pigment { color rgb < 1.00, 1.00, 0.00 > } finish { diffuse 0.8 specular 0.1 roughness 0.005 ambient 0.1 } } #declare verde = texture { pigment { color rgb < 0.10, 0.85, 0.10 > } finish { diffuse 0.8 specular 0.1 roughness 0.005 ambient 0.1 } } #declare vermelho = texture { pigment { color rgb < 0.85, 0.05, 0.10 > } finish { diffuse 0.8 specular 0.1 roughness 0.005 ambient 0.1 } } #declare colher = difference{ object{ sphere { <0,0,0>, 0.5 texture {amarelo} } } object{ union{ box { <1,-1,0>, <-1,1,1> texture {amarelo} } sphere { <0,0,0>, 0.4 texture {verde} } } } } #declare pegador = difference{ object{ sphere { <0,0,0>, 0.5 texture {amarelo} } } object{ union{ cylinder { <0,0,-0.1>, <0,0,0.1>, 0.5 texture {amarelo} } sphere { <0,0,0>, 0.4 texture {verde} } } } } #declare apoio = union { object{ cylinder { <0,0,0>, <0,0,2>, 0.25 texture {azul} }} object{ sphere { <0,0,0> , 0.25 texture {cinza} } translate <0,0,2> } } #declare apoio_simples = cylinder { <0,0,0>, <0,0,2>, 0.25 texture {azul} } #macro folha() union { object { apoio_simples scale<0,0,0.5> rotate <-90,0,0> } object { colher translate <0,1.5,0> } } #end #macro folha2() union { object { apoio_simples scale<0,0,0.5> rotate <-90,0,0> } object { pegador translate <0,1.5,0> } } #end #macro cabo(alfa) union{ object { apoio rotate <-90,0,0> } object { folha() rotate translate <0,2,0> } } #end #macro cabo2(alfa) union{ object { apoio rotate <-90,0,0> } object { folha2() rotate translate <0,2,0> } } #end #macro cabo_mestre(c1_alfa, c2_alfa, beta, teta) union{ object { apoio scale<0,0,2> rotate<180,0,0> } object { sphere { <0,0,0>, 0.25 texture {cinza} } } object { cabo(c1_alfa) rotate translate <0,0,-4> } object { cabo2(c2_alfa) rotate translate <0,0,-4> } } #end #macro cabo_apoio_mestre(zappa, c1_alfa, c2_alfa, beta, teta) union{ object { apoio rotate <90,0,0> translate <0,2,0> } object { cabo_mestre(c1_alfa, c2_alfa, beta, teta) rotate translate <0,2,0> } } #end #macro quadro (clock1) #if((clock1 >= c0) & (clock1 < c1)) #declare rr = (clock1-c0)/(c1-c0); #declare ss = (c1-clock1)/(c1-c0); #declare zappa = ss*0 + rr*45; #declare c1_alfa = ss*30 + rr*90; #declare c2_alfa = ss*30 + rr*130; #declare beta = ss*(-30) + rr*(-50); #declare teta = ss*0 + rr*60; #end #if((clock1 >= c1) & (clock1 <= c2)) #declare rr = (clock1-c1)/(c2-c1); #declare ss = (c2-clock1)/(c2-c1); #declare zappa = ss*45 + rr*0; #declare c1_alfa = ss*90 + rr*30; #declare c2_alfa = ss*130 + rr*30; #declare beta = ss*(-50) + rr*(-30); #declare teta = ss*60 + rr*0; #end object{ cabo_apoio_mestre(zappa, c1_alfa, c2_alfa, beta, teta) scale<2.1,2.1,2.1> translate<0,17,-10> } #end plane { z, 0 texture { pigment { checker <1,1,1> , <0.5,0.5,0.6> } finish { diffuse 1 specular 0.5 roughness 0.005 ambient 0.1 } } translate -25*z } object{ quadro(clock) } object{ quadro(mod(clock+0.25,1.0)) translate<0,-17,0> } // Original camera parameters: // #local cam_ctr = <0.00,17.00,-13.00> // #local cam_vec = vrotate(((uu)-<0.00,17.00,-13.00>),(vv,<0,-) // #local cam_sky = z #include "camlight.inc" camlight(<0.00,17.00,-13.00>,<10,10,10>,20.0,z,1.0)