// Exemplo de arquivo de descricao de cena para POV-ray // Last edited on 2000-11-09 12:14:05 by Felipe de Alvarenga Leite #include "colors.inc" #include "stones.inc" plane{ y, 0 pigment{granite scale 1.5} } sky_sphere { pigment { gradient y color_map { [0.000 0.002 color rgb <1.0, 0.2, 0.0> color rgb <1.0, 0.2, 0.0>] [0.002 0.200 color rgb <0.8, 0.1, 0.0> color rgb <0.2, 0.2, 0.3>] } scale 2 translate -1 } pigment { bozo turbulence 0.65 octaves 6 omega 0.7 lambda 2 color_map { [0.0 0.1 color rgb <0.85, 0.85, 0.85> color rgb <0.75, 0.75, 0.75>] [0.1 0.5 color rgb <0.75, 0.75, 0.75> color rgbt <1, 1, 1, 1>] [0.5 1.0 color rgbt <1, 1, 1, 1> color rgbt <1, 1, 1, 1>] } scale <0.2, 0.5, 0.2> } rotate -135*x } background{ color rgb < 1, 1, 1 > } light_source { < -15.00, 50.00, 50.00 > color rgb < 1.00, 1.00, 1.00 > } //light_source { // < 15.00, 40.00, -5.00 > // color rgb < 1.00, 1.00, 1.00 > //} camera { location < -25.00, 25.00, -25.00 > // right < 0.000, 0.00, 0.00 > // up < 0.00, 0.00, 0.00 > sky < 0.00, 1.00, 0.00 > look_at < 32.00, 10.00, 24.00 > } #declare i=1; #declare g=seed(pi); //#declare f=seed(pi +1); //#declare h=seed(pi+3); //#declare esferas= // #while (i<10) // #if (rand(g) < 0.75) // sphere{ <10*i, 3, 4>, 2+sin(pi*i/2)} // #end // #declare i=i+1; // #end //#declare predio= //union{ #declare i=20*rand(g) + 8; #declare j=8*rand(g) + 4; #declare k=12*rand(g) + 4; #declare aux1=k; #declare aux2=j; #declare caixa= union{ box{<0, 0, 0>, pigment{ color rgb }} box{, pigment {color rgb<0.7,0.7,0.7>}} cylinder{, 0.1 pigment {color rgb<1, 0, 0>}} } #declare predio= difference { object {caixa} box{, <(k/2)+1, 2, 3> pigment{color rgb<1, 1, 1>}} #while(i >4) #declare k=aux1; #declare j=aux2; #while (k >2) box{, pigment{color rgb <0.8, 0.8, 0.8>}} box{, pigment{color rgb <0.8, 0.8, 0.8>}} #declare k=k-2; #end #while (j>2) box{<0, i-1, j-1>, <2, i-2, j-2> pigment{color rgb<0.8, 0.8, 0.8>}} box{, pigment{color rgb<0.8, 0.8, 0.8>}} #declare j=j-2; #end #declare i= i-2; #end } #declare a=3; #declare fim= union{ #while (a>-1) #declare b=3; #while (b>-1) #declare i=20*rand(g) + 8; #declare j=8*rand(g) + 4; #declare k=12*rand(g) + 4; #declare aux1=k; #declare aux2=j; #if(rand(g)<0.8) object{difference { union{ box{<0, 0, 0>, <16, 0.1, 12> pigment{color rgb <0, 0.2, 0>}} box{<0, 0, 0>, pigment{ color rgb }} box{, pigment {color rgb<0.7,0.7,0.7>}} cylinder{, 0.1 pigment {color rgb<1, 0, 0>}} } box{, <(k/2)+1, 2, 3> pigment{color rgb<1, 1, 1>}} #while(i >4) #declare k=aux1; #declare j=aux2; #while (k >2) box{, pigment{color rgb <0.8, 0.8, 0.8>}} box{, pigment{color rgb <0.8, 0.8, 0.8>}} #declare k=k-2; #end #while (j>2) box{<0, i-1, j-1>, <2, i-2, j-2> pigment{color rgb<0.8, 0.8, 0.8>}} box{, pigment{color rgb<0.8, 0.8, 0.8>}} #declare j=j-2; #end #declare i= i-2; #end } translate<18*b, 0, 14*a>} #else box{<0, 0, 0>, <16, 0.5, 12> pigment{ color rgb <0, 0.3, 0>}} #end #declare b=b-1; #end #declare a=a-1; #end } object{fim}