// Exemplo de arquivo de descricao de cena para POV-ray // Last edited on 2003-09-04 15:25:26 by stolfi #include "colors.inc" // ====================================================================== // CÂMERA camera { location < 20, 20, 3 > // Posição do observador. right -1*x // Largura RELATIVA da imagem. up 0.5*y // Altura RELATIVA da imagem. sky z // Qual direção é "para cima"? look_at < 0.00, 0.00, 0.00 > // 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. } #include "colors.inc" // objetos #declare solo = plane { <0,0,1>, -3 pigment{White} } // Dedos #declare dedo = box{ <0.15,0,-0.10>, <-0.15,1,0.10> } #declare dedo1 = union{ object{dedo pigment{Green}} } #declare dedo2 = union{ object{dedo pigment{Red}} } #declare dedo3 = union{ object{dedo pigment{Yellow}} } // Mão #declare palma = box{ <0.15,0,-0.55>, <-0.15,2,0.55> pigment{Blue} } // rotação do dedo #declare rd=clock*-40; // Colocando os dedos na mão #declare mao1 = union{ object{palma} object{dedo1 rotate x*rd translate<0,2,0.4>} } #declare mao2 = union{ object{mao1} object{dedo2 rotate x*rd translate<0,2,0>} } #declare mao = union{ object{mao2} object{dedo3 rotate x*rd translate<0,2,-0.4>} } // Antebraço // rotação da mão #declare rm=clock*60; #declare antebraco1 = cylinder{ <0,0,0>, <0,8,0>, 0.5 pigment{Gray} } #declare antebraco = union{ object{antebraco1} object{mao rotate x*rm translate<0,8,0>} } // Braço // rotação do antebraço #declare raz=30*clock; #declare rax=10*clock; #declare braco1 = cylinder{ <0,0,0>, <0,5,0>, 0.75 pigment{Pink} } #declare braco = union{ object {braco1} object {antebraco rotate z*raz rotate x*rax translate<0,5,0>} } union{ object{solo} object{braco translate<10,0,0> } }