#include "eixos.inc" #include "transforms.inc" #include "direcao_do_sol.inc" #include "parametros.inc" // Exemplo de arquivo de descricao de cena para POV-ray // Last edited on 2020-09-30 19:57:13 by jstolfi // ====================================================================== // CORES E TEXTURAS background{ color rgb < 0.8, 0.8, 0.8 > } #declare roleta = seed(1246553); #declare tx_templo = texture{ pigment{ color rgb < 0.6, 0.6, 0.6 > } finish{ diffuse 0.9 ambient 0.1 } } #declare texture_painel=texture { pigment {color rgb < 1, 0, 0 >} finish {ambient 1 diffuse 0}} #macro wall(p1, p2, p3, p4) polygon { 9, p1, p2, p3, p4, p1, (9*p1+p2+p3+p4)/12, (p1+9*p2+p3+p4)/12, (p1+p2+9*p3+p4)/12, (p1+p2+p3+9*p4)/12 texture { tx_templo } } #end #macro base(p1, p2, p3, p4, p5) difference { polygon { 11, p1, p2, p3, p4, p5, p1 (9*p1+p2+p3+p4+p5)/13, (p1+9*p2+p3+p4+p5)/13, (p1+p2+9*p3+p4+p5)/13, (p1+p2+p3+9*p4+p5)/13, (p1+p2+p3+p4+9*p5)/13 texture { tx_templo } } } #end #local b1 = <-4,-4,0>; #local b2 = <-4,4,0>; #local b3 = <4,6,0>; #local b4 = <8,0,0>; #local b5 = <4,-6,0>; #local t1 = <-2,-2,5>; #local t2 = <-2,2,5>; #local t3 = <2,3,5>; #local t4 = <4,0,5>; #local t5 = <2,-3,5>; #macro painel(p1, p2, p3, p4) polygon { 4 // Number of points (9*p1+p2+p3+p4)/12, (p1+9*p2+p3+p4)/12, (p1+p2+9*p3+p4)/12, (p1+p2+p3+9*p4)/12 texture {texture_painel} } #end #macro painel_cima(p1, p2, p3, p4, p5) polygon { 5 // Number of points (9*p1+p2+p3+p4+p5)/13, (p1+9*p2+p3+p4+p5)/13, (p1+p2+9*p3+p4+p5)/13, (p1+p2+p3+9*p4+p5)/13, (p1+p2+p3+p4+9*p5)/13 texture {texture_painel} } #end #macro pyramid() base(b1, b2, b3, b4, b5) base(t1, t2, t3, t4, t5) wall(b1, t1, t2, b2) wall(b2, t2, t3, b3) wall(b3, t3, t4, b4) wall(b4, t4, t5, b5) wall(b5, t5, t1, b1) object {painel(b1, t1, t2, b2)} object {painel(b2, t2, t3, b3)} object {painel(b3, t3, t4, b4)} object {painel(b4, t4, t5, b5)} object {painel(b5, t5, t1, b1)} object {painel_cima(t1, t2, t3, t4, t5)} #end pyramid() #local dir_sol = direcao_do_sol(lat, lon, mes, hora); #declare dir_camera = dir_sol; #include "camlight.inc" #declare centro_cena = < 0.00, 0.00, 2.50 >; #declare raio_cena = 15.0; #declare dist_camera = 200*raio_cena; #declare intens_luz = 1.00; camlight(centro_cena, raio_cena, dir_camera, dist_camera , z, intens_luz)