// 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 < 25, 0 , 10 > // 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" // Animação // Parametros: // rd: rotação dos dedos #declare rd=0; // rm: rotação das mãos #declare rm=0; // raz e rax: rotação do braço #declare raz=0; #declare rax=0; // altura do bastao #declare zb=-3; #if(clock < 0.3) // rotação do antebraço em direção ao objeto #declare raz = 30 - (100 * clock); #else #if(clock < 0.6) // rotação dos dedos #declare rd=clock*-170; // rotação da mão #declare rm=clock*-50; #else // rotação do antebraço para cima #declare rax=60*(clock - 0.6); #declare rd=0.7*-170; #declare rm=0.7*-50; #declare zb=-3+11.66*(clock-0.6); #end #end // objetos #declare bastao = cylinder{ <0,0,0>, <0,0,3>, 0.5 pigment{color rgb<0.4,0.6,0.2>} } #declare solo = plane { <0,0,1>, -3 pigment{checker color Black, color 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 // 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 antebraco1 = cylinder{ <0,0,0>, <0,8,0>, 0.5 pigment{Gray} } #declare antebraco = union{ object{antebraco1} object{mao rotate z*rm translate<0,8,0>} } // Braço #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{bastao translate<1,5.5-(zb/5),zb>} object{braco translate<0,-8,-0.5> } }