// Last edited on DATE TIME by USER // Processed by remove-cam-lights #declare tx_corpo = texture { pigment { color rgb < 1.00, 0.80, 0.10 > } finish { diffuse 0.5 specular 0.5 roughness 0.005 ambient 0.1 } } #declare tx_bacia = texture { pigment { color rgb < 0.50, 0.50, 0.80 > } finish { diffuse 0.5 specular 0.5 roughness 0.005 ambient 0.1 } } #declare tx_chao = texture { pigment { color rgb < 0.30, 0.80, 0.20 > } finish { diffuse 0.5 specular 0.5 roughness 0.005 ambient 0.1 } } #declare chao = box{ < 10, 10, -17>, < -10, -10, -16 > texture{tx_chao} } #macro pe() cylinder{ < 0, 0, 0 >, < 0, 3, 0 > 0.5 texture{tx_bacia} } #end #macro anteperna(teta) union { cylinder{ < 0, 0, 0 >, < 0, 0, -6 > 0.5 texture{tx_bacia} } sphere{ < 0, 0, -6 > 0.5 texture{tx_corpo} } object {pe() rotate teta*x translate -6*z} } #end #macro perna(teta, alfa) union { cylinder{ < 0, 0, 0 >, < 0, 6, 0 > 0.5 texture{tx_bacia} } sphere{ < 0, 6, 0 > 0.5 texture{tx_corpo} } object {anteperna(teta) rotate alfa*x translate 6*y} } #end #macro corpo (teta, alfa, fi) union { sphere{ < 0, 0, 0 > 4 texture{tx_corpo} } cylinder{ < 6, 0, -3 >, < -6, 0, -3 > 0.5 texture{tx_bacia} } sphere{ < 6, 0, -3 > 0.5 texture{tx_corpo} } sphere{ < -6, 0, -3 > 0.5 texture{tx_corpo} } object {perna(teta, alfa) rotate -1*fi*x translate <6, 0, -3>} object {perna(teta, alfa) rotate -1*fi*x translate <-6, 0, -3>} } #end #macro interpola (ta, va, tb, vb, tt) #local s= (tt-ta)/(tb-ta); ((1-s)*va+s*vb) #end #declare t0 = 0.000; #declare t1 = 0.250; #declare t2 = 0.500; #declare t3 = 0.750; #declare t4 = 1.000; #declare teta0 = 0; #declare teta1 = 50; #declare alfa0 = 70; #declare alfa1 = -40; #declare fi0 = 70; #declare fi1 = 10; #declare altura0 = 0; #declare altura1 = -7; #declare altura2 = 10; #if ((clock >= t0) & (clock <= t1)) #declare teta = interpola (t0, teta0, t1, teta1, clock); #declare alfa = interpola (t0, alfa0, t1, alfa1, clock); #declare fi = interpola (t0, fi0, t1, fi1, clock); #declare altura = interpola (t0, altura0, t1, altura1, clock); #end #if ((clock >= t1) & (clock <= t2)) #declare teta = interpola (t1, teta1, t2, teta0, clock); #declare alfa = interpola (t1, alfa1, t2, alfa0, clock); #declare fi = interpola (t1, fi1, t2, fi0, clock); #declare altura = interpola (t1, altura1, t2, altura0, clock); #end #if ((clock >= t2) & (clock <= t3)) #declare teta = teta0; #declare alfa = alfa0; #declare fi = fi0; #declare altura = interpola (t2, altura0, t3, altura2, clock); #end #if ((clock >= t3) & (clock <= t4)) #declare teta = teta0; #declare alfa = alfa0; #declare fi = fi0; #declare altura = interpola (t3, altura2, t4, altura0, clock); #end background{ color rgb < 1, 1, 1 > } object {corpo (teta, alfa, fi) translate <0,0, altura>} object {chao} #include "camlight.inc" #declare centro_cena = < 30.00, 30.00, 4.00 >; #declare raio_cena = 9.0; #declare dir_camera = < 3, 3, 0.5 >; #declare dist_camera = 16.0; #declare intens_luz = 1.50; camlight(centro_cena, raio_cena, dir_camera, dist_camera , z, intens_luz)