// Exemplo de arquivo de descricao de cena para POV-ray // Last edited on 2017-05-07 20:10:09 by stolfilocal // ====================================================================== // 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 < 1.00, 0.80, 0.10 > } finish{ diffuse 0.9 ambient 0.1 } } #declare tx_peca = texture{ pigment{ color rgb < 0.5, 0.5, 0.5 > } finish{ diffuse 0.9 ambient 0.1 } } #declare tx_espelho = texture{ pigment{ color rgb < 1.00, 0.85, 0.30 > } finish{ diffuse 0.2 reflection 0.7*< 1.00, 0.85, 0.30 > 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.0, 0.0, 0.0 >, color rgb < 1.00, 0.97, 0.90 > } finish{ diffuse 0.9 ambient 0.1 } scale 1.0 } // ====================================================================== // DESCRIÇÃO DA CENA #include "eixos.inc" #declare raio = 1; #declare altura = 4; #declare tx = tx_espelho #declare artic = sphere {<0,0,0>, raio texture {tx}} #declare seg = cylinder {<0,0,raio/2>, <0,0,altura>, raio texture {tx}} #macro perna() #union{ object {artic} object {seg} } #end #macro perna2(ang) #union{ object { perna() } object { perna() rotate translate <0, 0, altura> } } #end #macro perna3(ang1, ang2) #union{ object { perna() } object { perna2(ang1) rotate translate <0, 0, altura> } } #end #macro perna4(ang1, ang2, ang3) #union{ object { perna() } object { perna3(ang1, ang2) rotate translate <0, 0, altura> } } #end #macro perna5(ang1, ang2, ang3, ang4) #union{ object { perna() } object { perna4(ang1, ang2, ang3) rotate translate <0, 0, altura> } } #end #macro perna6(ang1, ang2, ang3, ang4, ang5) #union{ object { perna() } object { perna5(ang1, ang2, ang3, ang4) rotate translate <0, 0, altura> } } #end //perna6(45, -45, 45, -45, 45) #macro inseto(ang1, ang2, ang3, ang4, ang5, ang6, ang7, ang8, ang9, ang10, ang11, ang12, ang13, ang14, ang15, ang16, ang17, ang18, ang19, ang20, ang21, ang22, ang23, ang24, ang25, ang26, ang27, ang28, ang29, ang30) #union{ object { box { <-20,-10,-5>, <20, 10, 5> texture {tx}} } object { perna6(ang1, ang2, ang3, ang4, ang5) translate <0,10,5> rotate <150,0,0>} object { perna6(ang6, ang7, ang8, ang9, ang10) translate <-10,10,5> rotate <150,0,0>} object { perna6(ang11, ang12, ang13, ang14, ang15) translate <10,10,5> rotate <150,0,0>} object { perna6(ang16, ang17, ang18, ang19, ang20) translate <0,10,5> rotate <150,0,180>} object { perna6(ang21, ang22, ang23, ang24, ang25) translate <-10,10,5> rotate <150,0,180>} object { perna6(ang26, ang27, ang28, ang29, ang30) translate <10,10,5> rotate <150,0,180>} } #end inseto(45, -45, 45, -45, 45, -45, 45, -45, 45, -45 45, -45, 45, -45, 45, -45, 45, -45, 45, -45 45, -45, 45, -45, 45, -45, 45, -45, 45, -45) #include "camlight.inc" #declare centro_cena = < 0, 0, 0 >; #declare raio_cena = 50; #declare dir_camera = < 10.00, 30.00, 5.00 >; #declare dist_camera = 5*raio_cena; #declare intens_luz = 1.20; camlight(centro_cena, raio_cena, dir_camera, dist_camera , z, intens_luz)