// Last edited on 2009-11-23 22:58:38 by stolfilocal // Processed by remove-cam-lights #macro eixo(ponta,cor,nome) union{ sphere{ <0,0,0>, 0.02 } cylinder{ <0,0,0>, 0.91*ponta, 0.02 } cone{ 0.90*ponta, 0.06, ponta, 0.00 } texture{ pigment{ color rgb cor } finish{ ambient 0.5 diffuse 0.5 } } } #end #macro eixos(tamanho) union{ object{ eixo( <0,tamanho,0>, <0.0,0.8,0.0>, "Y") } object{ eixo( <0,0,tamanho>, <0.3,0.3,1.0>, "Z") } } #end background{ color rgb < 0.75, 0.80, 0.85 > } #declare tx_verde = texture{ pigment{ color rgb < 0.1, 0.60, 0.08 > } finish{ diffuse 0.9 ambient 0.1 } } #declare tx_laranja = texture{ pigment{ color rgb < 0.8, 0.60, 0.2 > } finish{ diffuse 0.9 ambient 0.1 } } #declare tx_preto = texture{ pigment{ color rgb < 0, 0, 0 > } finish{ diffuse 0.9 ambient 0.1 } } #declare tx_pele = texture{ pigment{ color rgb < 0.85, 0.7, 0.4 > } finish{ diffuse 0.9 ambient 0.1 } } #declare tx_olho = texture{ pigment{ color rgb < 0, 0.7, 0.1 > } finish{ diffuse 1 reflection 1 ambient 1 specular 1 roughness 1 } } #declare tx_boca = texture{ pigment{ color rgb < 0.7, 0.0, 0.1 > } finish{ diffuse 0.9 ambient 1 } } #declare tx_nariz = texture{ pigment{ color rgb < 0, 0, 0> } finish{ diffuse 1 reflection 1 ambient 1 specular 1 roughness 1 } } #macro sphere_torus(r1, r2, n, f, pos, rot, sca, tex) #declare i=0; #declare ang=(2*pi)/n; #while (i < n) sphere{, r2, f scale sca rotate rot translate pos texture{tex}} #declare i=i+1; #end #end #declare mamao = blob { sphere{<0,0,0>, 1.5, 1.4 texture{tx_verde}} sphere{<0,1,0>, 2, 0.7 scale <0.9, 1, 0.7> texture{tx_laranja}} cylinder{<0, 1.5, 0> <0,1.6,0>, 0.3, 1.2 scale <0.9, 1, 0.7> texture{tx_laranja}} sphere_torus(0.15, 0.3, 7, 2, <0, -0.9, 0>, <90, 0, 0>, <1, 1, 0.6>, tx_laranja) sphere{<0,-1.2,0>, 0.3, -1 texture{tx_laranja}} threshold 0.5 scale <1, 1, 0.9> } #declare anao = blob { sphere{<0, 0, 0>, 2, 1 texture{tx_pele}} sphere{<0.8, 0.4, 0.3>, 0.2, 5 texture{tx_olho}} sphere{<0.8, -0.4, 0.3>, 0.2, 5 texture{tx_olho}} sphere{<1, 0.0, 0.0>, 0.2, 5 texture{tx_nariz}} sphere{<0.8, 0.4, -0.3>, 0.2, -5 texture{tx_boca}} sphere{<0.8, 0.4, -0.3>, 0.2, -5 texture{tx_boca}} cylinder{<0.8, 0.4, -0.3>, <0.8, -0.4, -0.3>, 0.3, -5 texture{tx_boca}} threshold 0.5 } #macro mamao_anao(F) union { blob { sphere{<0,0,0>, 1.5, 1.4*F texture{tx_verde}} sphere{<0,0,1>, 2, 0.7*F scale <0.9, 0.7, 1> texture{tx_laranja}} cylinder{F*<0, 0, 1.5> + 0.0001*z, F*<0,0,1.6> - 0.0001*z, 0.3, 1.2*F scale <0.9, 0.7, 1> texture{tx_laranja}} sphere_torus(0.15, 0.3, 7, 2*F, <0, 0, -0.9>, <0, 0, 0>, <1, 0.6, 1>, tx_laranja) sphere{<0, 0, 0>, 2, (1-F)*1 texture{tx_pele}} sphere{<0.8, 0.4, 0.3>, 0.2, (1-F)*5 texture{tx_olho}} sphere{<0.8, -0.4, 0.3>, 0.2, (1-F)*5 texture{tx_olho}} sphere{<1, 0.0, 0.0>, 0.2, (1-F)*5 texture{tx_nariz}} sphere{<0.8, 0.4, -0.3>, 0.2, (1-F)*(-5) texture{tx_boca}} sphere{<0.8, 0.4, -0.3>, 0.2, (1-F)*(-5) texture{tx_boca}} cylinder{<0.8, 0.4, -0.3>, <0.8, -0.4, -0.3>, 0.3, (1-F)*(-5) texture{tx_boca}} threshold 0.5 } } #end object{ mamao_anao((1+cos(2*pi*clock))/2) } // Original camera parameters: // #local cam_ctr = <0,0,0> // #local cam_loc = <2.5,0,0.5> // #local cam_vec = <2.5,0,0.5> // #local cam_sky = z #include "camlight.inc" camlight(<0,0,0>,3.00,<10,10,10>,12.00,z,1.2)