// Last edited on 2007-07-23 20:59:28 by stolfi // Processed by remove-cam-lights background{ color rgb < 0.75, 0.80, 0.85 > } #declare tinta_A = texture { pigment { color rgb < 0.10, 0.10, 0.10 > } finish { diffuse 0.5 specular 0.5 roughness 0.005 ambient 0.1 } } #declare tinta_B = texture { pigment { color rgb < 0.9, 0.9, 0.9 > } finish { diffuse 0.5 specular 0.5 roughness 0.005 ambient 0.1 } } #declare tinta_trans = texture { pigment { color rgb < 0.9, 0.9, 0.9 > filter 0.5 } finish { diffuse 0.5 specular 0.5 roughness 0.005 ambient 0.1 } } #declare tinta_ouro = texture { pigment { color rgb < 1.0, 0.8, 0 > } finish { diffuse 0.2 roughness 0.2 ambient 0.4 reflection 0.2 } } #declare tinta_D = texture { pigment { color rgb < 0, 255, 255 > } finish { diffuse 0.5 specular 0.5 roughness 0.5 ambient 0.1 } } #declare no_corpo = sphere { < 0.0, 0.0, 0.0 >, 0.80 texture {tinta_A} } #declare no_pernas = sphere { < 0.0, 0.0, 0.0 >, 1.10 texture {tinta_A} } #declare coxa = cylinder { <0.00, 0.00, 0.00>, <6.00, 0.00, 0.00>, 0.95 texture {tinta_B} } #declare canela = union { object {no_pernas translate<5.5, 0.0, 0.0>} cylinder { <0.00, 0.00, 0.00>, <6.00, 0.00, 0.00>, 0.95 texture {tinta_B} } } #macro perna(alfa) union { object {canela rotate alfa*z translate 6*x} object {no_pernas translate 6*x} object {coxa} object {no_pernas} } #end #macro membro_inferior(mem_x, mem_y, joe_y) object {perna(joe_y) rotate} #end #declare biceps = cylinder { <0.00, 0.00, 0.00>, <4.00, 0.00, 0.00>, 0.60 texture {tinta_B} } #declare espada = cone { <4.5, 0.0, 0.0>, 0.5 <4.5, 0.0, 12.0>, 0.0 texture {tinta_ouro} } #declare antebraco = union { object {no_corpo translate<4.5, 0.0, 0.0>} cylinder { <0.00, 0.00, 0.00>, <4.00, 0.00, 0.00>, 0.60 texture {tinta_B} } } #macro antebraco_direito(alfa) union { object {no_corpo translate<4.5, 0.0, 0.0>} object {espada translate<-4*clock, 6*clock, 0> rotate y*alfa} cylinder { <0.00, 0.00, 0.00>, <4.00, 0.00, 0.00>, 0.60 texture {tinta_B} } } #end #macro braco(alfa, beta) union { object{antebraco_direito(beta) rotate alfa*y translate 4*x} object {no_corpo translate 4*x} object {biceps} object {no_corpo} } #end #macro braco_esquerdo(alfa) union { object {antebraco rotate alfa*y translate 4*x} object {no_corpo translate 4*x} object {biceps} object {no_corpo} } #end #macro membro_direito(mem_x, mem_y, cot_x, espad_z) object {braco(cot_x, espad_z) rotate<0, mem_y, mem_x>} #end# macro membro_esquerdo(mem_x, mem_y, cot_x) object {braco_esquerdo(cot_x) rotate<0, mem_y, mem_x>} #end #declare pescoco = cylinder { <0.00, 0.00, 7.60>, <0.00, 0.00, 8.80>, 0.60 texture {tinta_B} } #declare orelha_direita = cone { <0.0, 0.0, 10.0>, 1.5 <3.0, 0.0, 13.0>, 0.0 texture {tinta_A} } #declare orelha_esquerda = cone { <0.0, 0.0, 10.0>, 1.5 <-3.0, 0.0, 13.0>, 0.0 texture {tinta_A} } #declare cabeca = sphere { < 0.0, 0.0, 10.0 >, 2.00 texture {tinta_B} } #declare corpo = box { < 2.5, -0.6, 7.6> < -2.5, 0.6, 2.2> texture {tinta_B} } #declare cot_time = 45*clock-20; #if(clock > 0.7) #declare cot_time1 = 0; #declare espa_time = 90*(clock-0.7)/0.3; #declare joe_time = -45*(clock-0.7)/0.3; #declare perna_time = -20*(clock-0.7)/0.3+80; #end #if(clock <= 0.7) #declare cot_time1 = 90*(clock/0.7)-90; #declare espa_time = 0; #declare joe_time = 0; #declare perna_time = 80; #end union { object {orelha_direita} object {orelha_esquerda} object {cabeca} object {pescoco} object {corpo} object{membro_direito(0, cot_time, cot_time1, espa_time) translate<2.5, 0, 7.4> } object{membro_esquerdo(0, 50, 30) translate<2.5, 0, 7.4> scale<-1,1,1> } object{membro_inferior(0, perna_time, joe_time) translate<2.2, 0, 2.2> } object{membro_inferior(0, 80, 0) translate<2.2, 0, 2.2> scale<-1,1,1> } } // Original camera parameters: // #local cam_ctr = <0.00,0.00,2.00> // #local cam_vec = (<-35.00,56.00,20.00>-<0.00,0.00,2.00>) // #local cam_sky = z #include "camlight.inc" camlight(<0.00,0.00,2.50>,<7,10,5>,35.0,z,1.0)