// Exemplo de arquivo de descricao de cena para POV-ray // Last edited on 2003-10-15 00:21:18 by stolfi // ====================================================================== // CÂMERA #declare ctr = < 0.00, 0.00, 0.00 >; #declare camdir = < 10.00, 5.00, 2.5 >; camera { location ctr + 1.00*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 * < +50.0, +30.0, +50.0 > // Posição da lâmpada. color rgb 1.2 * < 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.8 * < 1.00, 1.00, 1.00 > // Intensidade e corda luz. } // ====================================================================== // DESCRIÇÃO DA CENA background{ color rgb < 0.75, 0.80, 0.85 > } #declare raio = 2.000; #declare tinta_A = texture { pigment { color rgb < 0.10, 0.80, 1.00 > } finish { diffuse 0.5 specular 0.5 roughness 0.005 ambient 0.1 } } #declare tinta_B = texture { pigment { color rgb < 1.00, 0.80, 0.10 > } finish { diffuse 0.5 specular 0.5 roughness 0.005 ambient 0.1 } } #declare tinta_C = texture { pigment { color rgb < 0.80, 1.00, 0.10 > } finish { diffuse 0.5 specular 0.5 roughness 0.005 ambient 0.1 } } #declare bola = sphere { < 0.00, 0.00, 0.00 >, 1.00 texture { tinta_A } translate <0, 0, 3> } #declare pescoco = cylinder { < 0.00, 0.00, 0.00 >, < 0.00, 0.00, 0.30 >, 0.20 texture { tinta_B } translate <0, 0, 1.7> } #declare corpo1 = box { <0.40, -0.90, -1.50>, <0.00, 0.90, 1.50 > texture { tinta_C } translate <0, 0, 0.3> } #declare corpo2 = sphere { <0.2, 0.00, 0.00>, 3.0 translate <0, -3.5, 0.40> } #declare corpo3 = sphere { <0.2, 0.00, 0.00>, 3.0 translate <0, 3.5, 0.4> } #declare pernas1 = box { <0.00, 0.00, 0.00>, <0.40, 1.80, 2.50> texture { tinta_A } translate <0, -0.88, -3.7> } #declare pernas2 = cylinder { <0.00, 0.00, 0.00>, <0.00, 0.60, 2.5>, 0.1 texture { tinta_A } } #declare pino = cylinder { < -2.00, +2.00, -1.00 >, < +2.00, -2.00, +1.00 >, 0.75 texture { tinta_B } } #declare assento = cylinder { <0.00, 0.00, -1.10>, <0.00, 0.00, -0.20> 1.00 texture { tinta_A } } #declare encosto = box { <-0.60, -1.00, -1.10>, <-1.60, 1.00, 0.90> texture { tinta_B } } #declare braco1 = box { <-0.60, -1.00, -1.10>, <1.00, -1.30, 0.50 > } #declare braco2 = box { <-0.60, 1.30, -1.10>, <1.00, 1.00, 0.50 > } #declare pes = cone { <1.50, 0.00, -1.10>, 0.60, <1.50, 0.00, -0.60>, 0.30 texture { tinta_C } } // Aqui está a cena, finalmente: /* difference { union { object { bola } object { pino } } object { furo } } */ /* union { object { assento } object { encosto } object { braco1 } object { braco2 } object { pes } } */ union { object { bola } object { pescoco } difference { object { corpo1 } object { corpo2 } object { corpo3 } } object { pernas2 translate<0, -1.00, -3.7>} object { pernas2 scale<1, -1, 1> translate<0, 1.00, -3.7>} object { pernas2 scale<1, 0.5, 0.5> translate<0, -2.00, -1.0> } }