// Exemplo de arquivo de descricao de cena para POV-ray // Last edited on 2003-07-31 12:50:37 by stolfi // ====================================================================== // CÂMERA camera { location < 0, 0, 160 > // Posição do observador. right -1.0*x // Largura RELATIVA da imagem. up 0.75*y // Altura RELATIVA da imagem. sky y // 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 * < +0.0, +10.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, +50.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, +50.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, -50.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, -50.0, -50.0 > // Posição da lâmpada. color rgb 1.2 * < 1.00, 1.00, 1.00 > // Intensidade e corda luz. } // ====================================================================== // DESCRIÇÃO DA CENA background{ color rgb < 0.0, 0.0, 0.5 > } #macro bolinha ( Raio, Cor, Rotacao, Posicao ) sphere { <0,0,0>, Raio pigment { color rgb Cor } rotate Rotacao translate Posicao } #end #macro fiozinho ( Altura, Raio, Cor, Rotacao,Posicao ) cylinder { < 0, -Altura/2, 0 >, < 0, Altura/2, 0 >, Raio pigment { color rgb Cor } rotate Rotacao translate Posicao } #end #macro caixa ( Tam, Cor, Rotacao, Posicao ) box { -Tam/2 Tam/2 pigment { color rgb Cor } rotate Rotacao translate Posicao } #end #macro rosquinha(Menor,Maior,Cor,Rotacao,Posicao ) torus { Maior, Menor pigment { color rgb Cor } rotate Rotacao translate Posicao } #end #declare NoRede=bolinha(0,<0,1,0>,0,<0,0,0>); #declare dim=6; #declare esp=8; #declare c1=-dim; #while(c1<=dim) #declare c2=-dim; #while(c2<=dim) #declare No = bolinha(2,<1,1,1>,0,) #declare NoRede = union { object{NoRede} object{No} } #declare c2 = c2 +1; #end #declare c1 = c1 + 1; #end #declare FioRede=bolinha(0,<1,1,1>,0,<0,0,0>); #declare c1=-dim; #while(c1<=dim) #declare Fio = fiozinho(2*esp*dim,0.5,<0,0,0>,0,) #declare FioRede = union { object{FioRede} object{Fio} } #declare c1= c1 + 1; #end #declare c1=-dim; #while(c1<=dim) #declare Fio = fiozinho(2*esp*dim,0.5,<0,0,0>,90*z,<0,esp*c1,0>) #declare FioRede = union { object{FioRede} object{Fio} } #declare c1= c1 + 1; #end #macro setobj(raiz,posx,posy) #declare obj=rand(raiz); #declare cor=; #if(obj<0.33) caixa(<2,2,2>,cor,0,) #else #if(obj<0.64) bolinha(1.2,cor,0,) #else rosquinha(1.2,0.5,cor,0,) #end #end #end #declare raiz=seed(3921035712); #declare NumPak=2*dim*dim; #declare Pacotes=bolinha(0,<0,1,0>,0,<0,0,0>); #declare c1=0; #while(c1