// 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.75, 0.80, 0.85 > } #declare tx_folha = texture{ pigment{ color rgb < 0.00, 1.00, 0.00 > } finish{ diffuse 0.9 ambient 0.1 } } #declare tx_tronco = texture{ pigment{ color rgb < 0.60, 0.30, 0.10 > } finish{ diffuse 0.9 ambient 0.1 } } // ====================================================================== // DESCRI��O DA CENA #declare roleta1 = seed(263364); #declare roleta2 = seed(628336); #declare ponto = <0,0,0>; #declare altura = 10.00; #declare bifurc = 1.00; // Partes da cena: #macro arvore(P,A,K) union{ #local raio = 2.00; cylinder{ P, < P.x, P.y, P.z + 5 >, raio texture{ tx_tronco } } #local P = < P.x, P.y, P.z + 5 >; sphere{ P, raio texture{ tx_tronco } } #local raio = raio/2; #while (rand(roleta1) < A) object{ arvore(P,A,K) rotate 10*x } object{ arvore(P,A,K) rotate -10*x } #end cylinder{ P, < P.x, P.y, P.z + P.z/2 >, raio texture{ tx_tronco } rotate 10*x } #local P = < P.x, P.y, P.z + P.z/2 >; sphere{ P, raio texture{ tx_tronco } } #local raio = raio/2; cone{ P, 0.00 < P.x, P.y, P.z - P.z/3 >, raio texture{ tx_folha } } } #end // Aqui est� a cena, finalmente: object{ arvore(ponto,altura,bifurc) translate < 0,0,0 > } //object{ exercito_human(10,10) translate < 0,0,0 > } #include "camlight.inc" #declare centro_cena = < 0.00, 0.00, 1.00 >; #declare raio_cena = 10.0; #declare dir_camera = < 14.00, 7.00, 4.00 >; #declare dist_camera = 20*raio_cena; #declare intens_luz = 1.20; camlight(centro_cena, raio_cena, dir_camera, dist_camera , z, intens_luz)