// Last edited on DATE TIME by USER // Processed by remove-cam-lights #declare ww=0; #declare vv=0; #declare vv= <-46.00, -10,8>; #declare ww= vaxis_rotate(vv,z,clock*360); #declare aux=0; #if (clock<=0.5) #declare aux=clock; #end #if (clock>0.5) #declare aux=1-clock; #end background{ color rgb < 0.75, 0.80, 0.85 > } global_settings{ max_trace_level 30 } plane{z, 0 texture {pigment{checker rgb <1,1,1>, rgb} finish{diffuse 0.5 ambient 0.5} } translate -10*z } #declare raio = 2.000; #declare tinta_A = texture { pigment { color rgb < 0.10, 0.80, 1.00 > } finish { diffuse 0.8 specular 0.1 roughness 0.005 ambient 0.1 } } #declare tinta_B = texture { pigment { color rgb < 1.00, 0.80, 0.10 > } finish { diffuse 0.8 specular 0.1 roughness 0.005 ambient 0.1 } } #declare base = union { box { < -1.50, -2.50, -0.50 >,<1.50, 2.50, 0.50> texture { tinta_B } } box { < 0, 0, 0 >,<0.25, 0.25, -4> texture { tinta_B } translate<-1.50, -2.50, -0.50> } box { < 0, 0, 0 >,<0.25, 0.25, -4> texture { tinta_B } translate<1.25, -2.5, -0.50> } box { < 0, 0, 0 >,<0.25, 0.25, -4> texture { tinta_B } translate<1.50, 2.25, -0.50> } box { < 0, 0, 0 >,<0.25, 0.25, -4> texture { tinta_B } translate<-1.50, 2.25, -0.50> } } #macro tronco_base(alfa3,alfa2, alfa1, beta1) union{ cylinder { <0, 0, 0>, <0, -5, 0>, 0.5 } sphere { < 0.00, -5, 0.00 >,0.5 } object { tronco_tronco(alfa2, alfa1, beta1) rotate translate <0,-5,0> } } #end #macro tronco_tronco(alfa2, alfa1, beta1) union{ cylinder { <0, 0, 0>, <0, -3, 0>, 0.5 } sphere { < 0.00, -3, 0.00 >,0.5 } object { tronco_colher(alfa1,beta1) rotate translate <0,-3,0> } } #end #macro tronco_colher(alfa,beta) union{ cylinder { <0, 0, 0>, <0, -4, 0>, 0.5 } sphere { < 0.00, -4, 0.00 >,0.5 } object { folha() rotate translate <0,-4,0> } } #end #macro folha() union{ cylinder { <0, 0, 0>, <0, -2.1, 0>, 0.5 } intersection{ sphere { < 0.00, -1.50, 0.00 >, 1.0 scale<1,2,1> } } } #end #declare c0=0.0; #declare c1=0.2; #declare c2=0.36; #declare c3=0.52; #declare c4=0.68; #declare c5=0.84; #declare c6=1.00; #declare nh=5; #declare nv=4; #declare nquadros=nh*nv; #declare cini=0.0; #declare cfin =1; #declare passo = (cfin-cini)/(nquadros-0.9999); #declare ck =cini; #declare iv=0; #while(iv < nv) #declare ih=0; #while (ih < nh) #declare ck =ck+passo; #declare ih=ih+1; #end #declare iv=iv+1; #end #macro quadro(ck) #if((ck>=0.0)&(ck=c1)&(ck=c2)&(ck=c3)&(ck=c4)&(ck=c5)&(ck<=c6)) #declare rr=(ck-c5)/(c6-c5); #declare b =75-rr*50; #declare c=60; #declare a=70; #end union{ object{ tronco_base(a,b, -15, c) rotate<-90,0,0> texture{tinta_A} } object { base scale<1.5,1,1> } } #end union{ object {quadro(clock)} object {quadro(mod(clock+0.3,1.0)) translate<9, -7,0> } } // Original camera parameters: // #local cam_ctr = <0,-5,0> // #local cam_vec = ((ww)-<0,-5,0>) // #local cam_sky = z #include "camlight.inc" camlight(<0,-5,0>,<10,10,10>,20.0,z,1.0)