// Exemplo de arquivo de descricao de cena para POV-ray // Last edited on 2010-03-04 15:44:01 by stolfi // ====================================================================== // CORES E TEXTURAS background{ color rgb < 0.75, 0.80, 0.85 > } #declare tx_plastico = texture{ pigment{ color rgb < 0.10, 0.80, 1.00 > } finish{ diffuse 0.8 ambient 0.1 specular 0.5 roughness 0.005 } } #declare tx_fosca = texture{ pigment{ color rgb < 0.70, 0.70, 0.80 > } finish{ diffuse 0.9 ambient 0.1 } } #declare tx_espelho = texture{ pigment{ color rgb < 0.80, 0.80, 0.85 > } finish{ diffuse 0.2 reflection 0.1*< 0.80, 0.80, 0.85 > ambient 0.1 } } #declare tx_vidro = texture{ pigment{ color rgb < 0.85, 0.95, 1.00 > filter 0.70 } finish{ diffuse 0.03 reflection 0.25 ambient 0.02 specular 0.25 roughness 0.005 } } #declare tx_xadrez = texture{ pigment{ checker color rgb < 0.10, 0.72, 0.20 >, color rgb < 0.2, 0.2, 0.20 > } finish{ diffuse 0.9 ambient 0.1 } scale 0.5 } #declare phi = (sqrt(5)+1)/2; #macro dodecaedro(raio) intersection{ plane{<1,0,phi>,raio} plane{<1,0,-phi>,raio} plane{<-1,0,phi>,raio} plane{<-1,0,-phi>,raio} plane{,raio} plane{,raio} plane{<-phi,1,0>,raio} plane{<-phi,-1,0>,raio} plane{<0,phi,1>,raio} plane{<0,phi,-1>,raio} plane{<0,-phi,1>,raio} plane{<0,-phi,-1>,raio} } #end #macro octaedro(raio) intersection{ plane{<1,1,1>,raio} plane{<1,1,-1>,raio} plane{<1,-1,1>,raio} plane{<-1,1,1>,raio} plane{<1,-1,-1>,raio} plane{<-1,1,-1>,raio} plane{<-1,-1,1>,raio} plane{<-1,-1,-1>,raio} } #end #macro icosaedro(raio) intersection{ object {octaedro(raio)} object {dodecaedro(raio*1.08)} } #end #macro cubo(raio) intersection{ plane{<1,0,0>,raio} plane{<0,1,0>,raio} plane{<0,0,1>,raio} plane{<-1,0,0>,raio} plane{<0,-1,0>,raio} plane{<0,0,-1>,raio} } #end // ====================================================================== // DESCRIÇÃO DA CENA // Partes da cena: #declare chao = box{ <-10,-10,-1>, <+10,+10,0> } #include "eixos.inc" // Aqui está a cena, finalmente: union{ object{chao texture{tx_xadrez} } object {icosaedro(1) texture{tx_vidro} interior{ior 1.2} translate<0,2,3>} intersection{ cubo(1) octaedro(1*1.15) texture{tx_vidro} interior{ior 1.2} translate<0,-2,3> } } #include "camlight.inc" #declare centro_cena = < 0.00, 0.00, 2.00 >; #declare raio_cena = 5.5; #declare dir_camera = < 4.00, 1.00, 2.00 >; #declare dist_camera = 26.0; #declare intens_luz = 1.00; camlight(centro_cena, raio_cena, dir_camera, dist_camera , z, intens_luz)