// Last edited on 2003-10-14 23:33:08 by stolfi // ====================================================================== // CÂMERA #declare ctr = < 0.00, 0.00, 0.50 >; #declare camdir = < 11.00, 5.00, 3.50 >; camera { location ctr + 0.80*camdir // Posição do observador. right -0.60*x // Largura RELATIVA da imagem. up 0.80*y // Altura RELATIVA da imagem. sky z // Qual direção é "para cima"? look_at ctr // Para onde a câmera está apontando. } // Nota: os parâmetros "right" e "up" devem ter a mesma proporção // que os parâmetros ${WIDTH} e ${HEIGHT} no Makefile. // ====================================================================== // FONTES DE LUZ light_source { 10 * < +30.0, +50.0, +30.0 > // Posição da lâmpada. color rgb 1.1 * < 1.00, 1.00, 1.00 > // Intensidade e corda luz. } light_source { 10 * < +50.0, -10.0, -10.0 > // Posição da lâmpada. color rgb 0.4 * < 1.00, 1.00, 1.00 > // Intensidade e corda luz. } light_source { 10 * < +30.0, +10.0, 50.0 > // Posição da lâmpada. color rgb 0.7 * < 1.00, 1.00, 1.00 > // Intensidade e corda luz. } // ====================================================================== // DESCRIÇÃO DA CENA background{ color rgb < 0.35, 0.55, 0.75 > } #include "colors.inc" // Cores... #declare tinta_Verm = texture { pigment { color rgb < 1.00, 0.00, 0.00 > } finish { diffuse 0.8 specular 0.5 roughness 0.005 ambient 0.1 } } #declare tinta_Azul = texture { pigment { color rgb < 0.30, 0.30, 1.00 > } finish { diffuse 0.8 specular 0.5 roughness 0.005 ambient 0.1 } } #declare corpo = union { difference { cylinder { < 0, 0, 2 > < 0, 0, -2 > 2 } torus { 2, 1 rotate -90*x scale < 0, 0, 2 > } } sphere { < 1, -0.5, 1.3 > 0.7 } sphere { < 1, 0.5, 1.3 > 0.7 } texture { tinta_Verm } } #declare cabeca = sphere { < 0, 0, 2.9 > 0.8 texture { tinta_Azul } } #declare braco_dir = union { cylinder { < 0, 0, 1 > < 0, 0, -1 > 0.3 rotate -30*x translate < 0, -2, 1.0 > } cylinder { < 0, 0, 1 > < 0, 0, -1 > 0.3 translate < 0, -2.4, -0.5 > } sphere { < 0, -2.4, 0.35 > 0.4 } texture { tinta_Azul } } union { object { corpo } object { cabeca } object { braco_dir } object { braco_dir scale < -1, 1, 1 > } }