// Last edited on 2004-01-22 12:11:17 by stolfi // Exemplo de arquivo de descricao de cena para POV-ray // Last edited on 2000-09-21 20:06:05 by ra002388 background{ color rgb < 0.00, 0.75, 0.85 > } sky_sphere { pigment { color rgb <0.4,0.9,1> } } #declare largrede=5; #declare ctr = < 3*largrede/4, 0.00, largrede/2 >; #declare camDir = 18 * < 1, 0.9, 0.7 >; camera { location ctr + 0.85*camDir right 1.20*x up 0.90*y sky y look_at ctr } light_source { 10*< 1.5, 8, 3 > color rgb 1.2*< 1.00, 1.00, 1.00 > } light_source { 10*< 3, 8, -2 > color rgb 0.4*< 1.00, 1.00, 1.00 > } light_source { 10*< -1, 1, 4 > color rgb 0.3*< 1.00, 1.00, 1.00 > } #declare s=seed(002388); #declare vermelho=<1,0,0>; #declare verde=<0,1,0>; #declare azul=<0,0,1>; #declare chao1=<0,1,1>; #declare chao2=<1,1,0>; plane {y, 0 pigment {color <0.9,0.9,0.9>} } #declare rede= intersection { difference { sphere { <0,0,0>, 1 } sphere { <0,0,0>, 0.9 } scale } cylinder { <0,0,0>, <0,-1,0>, 1 scale } translate texture { finish { diffuse 0.8 specular 0.15 roughness 0.005 ambient 0.01 } } } #declare laranja=sphere{ <0,0,0>, 0.3 texture { finish { diffuse 0.8 specular 0.15 roughness 0.005 ambient 0.01 } pigment { color <1,0.6,0> } } } #declare caixa=box{ <-0.4,-0.4,-0.4>, <0.4,0.4,0.4> texture { finish { diffuse 0.8 specular 0.15 roughness 0.005 ambient 0.01 } pigment { color <0,1,1> } } } #declare espinho=cone{ <-0.5,0,0>,0.5 <0.5,0,0>, 0 texture { finish { diffuse 0.8 specular 0.15 roughness 0.005 ambient 0.01 } pigment { color <1,0,0> } } } #declare maxpor2 = 2; #declare i = -maxpor2; #while (i<=maxpor2) #declare j = -maxpor2; #while (j<=maxpor2) #declare altarvore=2+rand(s); #declare copa=0.4 + 0.4*rand(s); #declare arvore = union { sphere { <0,altarvore,0>, copa texture { finish { diffuse 0.8 specular 0.15 roughness 0.005 ambient 0.01 } pigment { color verde*(0.4+0.6*rand(s))+vermelho*0.6*rand(s) } } } cylinder { <0,altarvore,0> <0,0,0> 0.2 texture { finish { diffuse 0.8 specular 0.15 roughness 0.005 ambient 0.01 } pigment { color 0.4*verde+0.5*vermelho+0.6*verde*rand(s)+0.5*vermelho*rand(s) } } } } #if ((i } #if (rand(s) < 0.2) object { laranja scale (rand(s)+0.5) translate <(i+0.2+(0.6*rand(s)))*largrede,1.2,j*largrede> } #else #if (rand(s) < 0.2) object { caixa scale (rand(s)+0.5) translate <(i+0.2+(0.6*rand(s)))*largrede,1.2,j*largrede> } #else #if (rand(s) < 0.2) object { espinho scale (rand(s)+0.5) translate <(i+0.2+(0.6*rand(s)))*largrede,1.2,j*largrede> } #end #end #end #end #if ((j translate } #if (rand(s) < 0.2) object { laranja scale (rand(s)+0.5) translate } #else #if (rand(s) < 0.2) object { caixa scale (rand(s)+0.5) translate } #else #if (rand(s) < 0.2) object { espinho scale (rand(s)+0.5) rotate <0,-90,0> translate } #end #end #end #end object { arvore translate } #declare j = j+1; #end #declare i = i+1; #end