#include "colors.inc" // Exemplo de arquivo de descricao de cena para POV-ray // Last edited on 2003-07-31 12:50:37 by stolfi // ====================================================================== // CÂMERA camera { location < 50, 150, 35 > // Posição do observador. right <-0.6 ,0 ,0> // Largura RELATIVA da imagem. up <0, 0, 0.8> // Altura RELATIVA da imagem. sky <0, 0, 1> // Qual direção é "para cima"? look_at < 10, 20, 0 > // 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 { < +80.0, +110.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 * < 20.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 < 1, 1, 0.85 > } #declare raio = 2.000; #declare tinta_vermelho = texture { pigment { color rgb < 1, 0, 0 > } finish { diffuse 0.5 specular 0.5 roughness 0.005 ambient 0.1 } } #declare tinta_verde = texture { pigment { color rgb < 0, 1, 0 > } finish { diffuse 0.5 specular 0.5 roughness 0.005 ambient 0.1 } } #declare tinta_azul= texture { pigment { color rgb < 0.60, 0.60, 1.00 > filter 1 } finish { diffuse 0.1 reflection 0.25 specular 1 roughness 0.001 ambient 0.1 } } #declare cor_fundo= texture { pigment { color rgb < 0.4, 0.4, 0.85 > } // finish { diffuse 0.5 specular 0.5 roughness 0.005 ambient 0.1 } } //#declare cor_metal=<0.75,0.8,0.85> //#declare tinta_metal= // texture { // pigment { color rgb cor_metal } // finish { diffuse 0.05 specular 0.2 roughness 0.05 ambient 0.05 reflection cor_metal } // } /////////////////////////////////// #declare fonte = seed(12345); #declare i=0; #while(i<6) #declare largura_corpo = 7; #declare compr4 = 4; #declare compr3 = 6; #declare compr2 = 14; #declare compr1 = 10; #declare gama = 30; #declare beta = 45; #declare alfa = 60; #if (mod(i,2)=0) //penas impares 0,1,2 #declare clockp=clock; #else //demais pernas 3,4,5 #declare clockp=clock;//clockp=mod(clock+0.5 , 1); #end #switch (clock) #range (0,0.25) #declare teta= -60 + (200*clockp); #break #range (0.25,0.75) #declare teta=-10; #break #range (0.75,1) #declare teta=-10 - (200*(clockp-0.75)); #break #end #switch (clock) #range (0,0.25) #declare novo=(clockp*180); #break #range (0.25,0.75) #declare novo=(45-((clockp-0.25)*180)); #break #range (0.75,1) #declare novo=(-45+((clockp-0.75)*180)); #break #end #declare parte4 = cylinder{ <0,0,0> , , 1 pigment{Red}} #declare parte3 = union{ sphere { , 1 pigment{Red} } cylinder{ <0,0,0> , , 1pigment{Red} } object{ parte4 rotate gama*y translate pigment{Red} } } #declare parte2 = union{ sphere { ,1 pigment{Red} } cylinder{ <0,0,0> , , 1 pigment{Red}} object{ parte3 rotate beta*y translate pigment{Red} } } #declare parte1 = union{ sphere { , 1} cylinder{ <0,0,0> , , 1 pigment{Red}} object{ parte2 rotate alfa*y translate pigment{Red} } } // #declare perna = // union{ // object{ parte1 rotate teta*y rotate novo*x translate pigment{Red}} // object{ parte1 rotate teta*y rotate -novo*x rotate 180*z translate pigment{Red} } // } #if (i<3) #declare perna = object{ parte1 rotate teta*y rotate novo*x translate pigment{Red}} #else #declare perna = object{ parte1 rotate teta*y rotate -novo*x rotate (180-teta)*z translate pigment{Red} } #end object{perna} #declare i=i+1; #end //while #declare corpo=box{ <2,5,2> , <8,45,-2> pigment{Gray}} #declare eixos=union{ cylinder {<0,0,0> , <0,50,0> , 0.2 pigment{Red}} //y cylinder {<0,0,0> , <50,0,0> , 0.2 pigment{Blue}} //x cylinder {<0,0,0> , <0,0,50> , 0.2 pigment{Green}} //z } //object{eixos} object{corpo}