#include "retalho.inc" background{ color rgb < 0.710, 0.23, 0.11 > } // ====================================================================== // CORES E TEXTURAS #declare tx_fosca = texture{ pigment{ color rgb < 0.00, 0.50, 0.90 > } finish{ diffuse 0.9 ambient 0.1 } } #declare tx_base_0 = texture{ pigment{ color rgb < 1.00, 1.0, 1.0 > } finish{ diffuse 0.9 ambient 0.1 } } #declare tx_base_1 = texture{ pigment{ color rgb < 1.00, 0, 0 > } finish{ diffuse 0.9 ambient 0.1 } } #declare tx_base_2 = texture{ pigment{ color rgb < 0, 1.0, 0 > } finish{ diffuse 0.9 ambient 0.1 } } #declare tx_base_preta = texture{ pigment{ color rgb < 0, 0, 0 > } finish{ diffuse 0.9 ambient 0.1 } } // ====================================================================== // DESCRI��O DA CENA #macro meia_cadeira(altura, largura, inclinacao) union { #declare C1 = array[4][4] { {<0, 0, 0>, , , }, {<0, largura * 0.1, altura * 0.5>, , , }, {<0, 0, altura * 0.6>, , , }, {<0, -largura * 0.5, altura * 0.5>, , , } }; retalho(C1, 0, tx_base_preta, tx_base_0, 0, 0, 1, 1) #declare C2 = array[4][4] { {C1[3][0], C1[3][1], C1[3][2], C1[3][3]}, {2 * C1[3][0] - C1[2][0], 2 * C1[3][1] - C1[2][1], 2 * C1[3][2] - C1[2][2], 2 * C1[3][3] - C1[2][3]}, {<0, -largura * 0.5 - inclinacao, altura * 0.8>, , , }, {<0, -largura * 0.5 - inclinacao, altura>, , , } }; retalho(C2, 0, tx_base_preta, tx_base_1, 0, 0, 1, 1) #declare C3 = array[4][4] { {C1[0][0], 2 * C1[0][0] - C1[0][1], <0, -largura * 0.4, 0>, <0, -largura * 0.5, 0>}, {C1[1][0], 2 * C1[1][0] - C1[1][1], <0, -largura * 0.4, altura * 0.2>, <0, -largura * 0.5, altura * 0.2>}, {C1[2][0], 2 * C1[2][0] - C1[2][1], <0, -largura * 0.4, altura * 0.4>, <0, -largura * 0.5, altura * 0.4>}, {C1[3][0], 2 * C1[3][0] - C1[3][1], <0, -largura * 0.4, 0>, <0, -largura * 0.5, 0>} }; retalho(C3, 0, tx_base_preta, tx_base_2, 0, 0, 1, 1) } #end #macro cadeira(altura, largura, inclinacao) union { object{meia_cadeira(altura, largura, inclinacao)} object{meia_cadeira(altura, largura, inclinacao) scale <-1, 1, 1> translate } } #end // Cena union { object{cadeira(2, 2, 1)} object{cadeira(3, 1, 0.2) translate<2, 0, 0>} } #include "camlight.inc" #declare centro_cena = < 0, 0, 1.10 >; #declare raio_cena = 5.0; #declare dir_camera = < 10.00, 10.00, 4.00 >; #declare dist_camera = 5*raio_cena; #declare intens_luz = 1.20; camlight(centro_cena, raio_cena, dir_camera, dist_camera , z, intens_luz)