// Exemplo de arquivo de descricao de cena para POV-ray // Last edited on 2003-09-04 15:25:26 by stolfi #include "colors.inc" // ====================================================================== // CÂMERA camera { location < 25.00, 5, 3 > // Posição do observador. right -0.75*x // Largura RELATIVA da imagem. up 1.00*y // Altura RELATIVA da imagem. sky z // Qual direção é "para cima"? look_at < 0.00, 0.00, 0.00 > // Para onde a câmera está apontando. } // Nota: os parâmetros "right" e "up" devem ter a mesma proporção // que os parâmetros ${WIDTH} e ${HEIGHT} no Makefile. // ====================================================================== // FONTES DE LUZ light_source { 10 * < +50.0, +30.0, +50.0 > // Posição da lâmpada. color rgb 1.2 * < 1.00, 1.00, 1.00 > // Intensidade e corda luz. } light_source { 10 * < +50.0, -10.0, +10.0 > // Posição da lâmpada. color rgb 0.8 * < 1.00, 1.00, 1.00 > // Intensidade e corda luz. } #include "colors.inc" #declare gerador = seed(123456); // objetos #declare predio = box { <4.5,-4.5,-10>, <-4.5,4.5,10> pigment{color Yellow} } #declare solo = plane { <0,0,1>, -10 pigment{checker color Black, color White} } #declare porta = box { <0.5,-0.5,-2>, <-0.5,0.5,2> pigment{color Blue} } #declare janela_quadrada = box { <0.5,-0.5,-0.5>, <-0.5,0.5,0.5> } #declare corte_triangular = box { <0.8,-0.5,-1>, <-0.8,0.5,1> } #declare janela_triangular = difference { object{janela_quadrada translate<0,0,0.5>} object{corte_triangular translate<0,0.5,1> rotate x*26.5651 translate<0,0.5,0> } object{corte_triangular translate<0,-0.5,1> rotate x*-26.5651 translate<0,-0.5,0>} translate <0,0,-0.5> } #declare janela_circular = cylinder{ <0.5,0,0>, <-0.5,0,0> 0.5 } //Cena union{ object{solo} object{predio} object{porta translate<4.1,-3.0,-9>} // A Variável p define qual janela será colocada #declare p = 0; // Variáveis de iteração dos loops #declare i=0; #declare j=0; #declare w=0; //Eixo X #declare aa=0; //Eixo Y #declare bb=-5.0; //Eixo Z #declare cc=-12.5; #while(i<2) #if(aa=0) #declare aa = 4.1; #else #declare aa = -4.1; #end #declare i = i + 1; #declare bb=-5; #declare j=0; #while(j<4) #declare bb = bb + 2; #declare j = j + 1; #declare cc=-12.5; #declare w=0; #while(w<4) #declare cc = cc + 5; #declare w = w + 1; #if(p=0) object{janela_circular pigment {rgb } translate} #end #if(p=1) object{janela_triangular pigment {rgb } translate} #end #if(p=2) object{janela_quadrada pigment {rgb } translate} #declare p = -1; #end #declare p = p + 1; #end #end #end #declare i=0; #declare j=0; #declare w=0; //Eixo X #declare a=0; //Eixo Y #declare b=-5.0; //Eixo Z #declare c=-12.5; #while(i<2) #if(a=0) #declare a = 4.1; #else #declare a = -4.1; #end #declare i = i + 1; #declare b=-5; #declare j=0; #while(j<4) #declare b = b + 2; #declare j = j + 1; #declare c=-12.5; #declare w=0; #while(w<4) #declare c = c + 5; #declare w = w + 1; #if(p=0) object{janela_circular pigment {rgb } rotate 90*z translate } #end #if(p=1) object{janela_triangular pigment {rgb } rotate 90*z translate} #end #if(p=2) object{janela_quadrada pigment {rgb } rotate 90*z translate} #declare p = -1; #end #declare p = p + 1; #end #end #end rotate z*50 rotate y*20 }