// Last edited on 2003-12-14 20:19:25 by stolfi // Exemplo de arquivo de descricao de cena para POV-ray // Last edited on 2000-09-21 20:06:05 by ra002388 #declare n=3; #declare passo=clock*n*5; background{ color rgb < 0.8, 1, 1 > } light_source { < 0.00, 5000.00, 4000.00 >+passo*x color rgb < 1.00, 1.00, 1.00 > } #declare ctr = < 70, 12, 0.00 >; #declare camDir = (150*<0.75,0,1> + 15*y) - (< 70, 12, 0.00 >); camera { location ctr + 1.25*camDir right -1.00*x up 1.00*z sky y look_at ctr } #declare silvermetal = texture { pigment { color <0.4,0.4,0.4> } finish { diffuse 0.5 specular 0.3 roughness 0.005 ambient 0.01 reflection 0.25 } } #declare shinymetal = texture { pigment { color <0.9,0.9,0.9> } finish { diffuse 0.6 specular 0.35 roughness 0.005 ambient 0.01 reflection 1 } } #declare preto = texture { pigment { color rgb < 0.1, 0.05, 0.0 > } finish { diffuse 0.75 specular 0.5 roughness 0.005 ambient 0.1 } } #declare bege = texture { pigment { color rgb < 1.0, 0.80, 0.70 > } finish { diffuse 0.75 specular 0.5 roughness 0.005 ambient 0.1 } } #declare vermelho = texture { pigment { color rgb < 1.0, 0.20, 0.20 > } finish { diffuse 0.75 specular 0.5 roughness 0.005 ambient 0.1 } } #declare azul = texture { pigment { color rgb < 0.0, 0.00, 0.75 > } finish { diffuse 0.75 specular 0.5 roughness 0.005 ambient 0.1 } } #declare marrom = texture { pigment { color rgb < 0.5, 0.40, 0.0 > } finish { diffuse 0.75 specular 0.5 roughness 0.005 ambient 0.1 } } #declare barata = texture { pigment { color rgb < 0.5, 0.25, 0.0 > } finish { diffuse 0.75 specular 0.5 roughness 0.005 ambient 0.1} } #declare pupila = texture { pigment { color rgb < 0, 0, 0.5 > } finish { diffuse 0.75 specular 0.5 roughness 0.005 ambient 0.1} } #declare olho = texture { pigment { color rgb < 1, 1, 0.0 > } finish { diffuse 0.75 specular 0.5 roughness 0.005 ambient 0.1 } } #declare vidroazul = texture { pigment { color rgb < 0, 0, 1 > filter 0.7} finish { diffuse 0.75 specular 0.5 roughness 0.005 ambient 0.1 } } #declare vidroamarelo = texture { pigment { color rgb < 1, 1, 0 > filter 0.7} finish { diffuse 0.75 specular 0.5 roughness 0.005 ambient 0.1 } } #declare vidroverde = texture { pigment { color rgb < 0, 1, 0 > filter 0.7} finish { diffuse 0.75 specular 0.5 roughness 0.005 ambient 0.1 } } #declare inseto=union { #declare i=0; #while (i, 1.5 texture { barata } } cone { <0,0,0>,1.5 <0,0,10>,0 texture { barata } } rotate delta*x } #declare perna3 = union { sphere { <0,0,0>,2 texture { barata } } cone { <0,0,0>,2 <0,0,15>,1.5 texture { barata } } object { perna4 translate <0,0,15> } rotate gama*x } #declare perna2 = union { sphere { <0,0,0>, 2.5 texture { barata } } cone { <0,0,0>,2.5 <0,0,15>,2 texture { barata } } object { perna3 translate <0,0,15> } rotate beta*y } #declare perna = union { sphere { <0,0,0>, 3 texture { barata } } cone { <0,0,0>,3 <0,0,20>,2.5 texture { barata } } object { perna2 translate <0,0,20> } rotate 30*x rotate alfa*y } object { perna scale n/8 translate scale <1,1,j>} #declare j=j+2; #end #declare i=i+1; #end union { intersection { sphere { <0,-0.5,0>,1 scale translate texture { barata } } sphere { <0,0.5,0>,1 scale translate texture { barata } } } sphere { ,n texture { olho } } sphere { ,n texture { olho } } sphere { ,n/2.5 texture { pupila } } sphere { ,n/2.5 texture { pupila } } cylinder { , , 1 texture {barata} } sphere { ,2 texture { barata} } cylinder { , , 1 texture {barata} } sphere { ,2 texture { barata} } } } #declare tl = text { ttf "arialbd.ttf" "L" 0.5,0 texture { vidroazul } interior { ior 2 } } #declare ti = text { ttf "arialbd.ttf" "I" 0.5,0 texture { vidroamarelo } interior { ior 2 } } #declare tv = text { ttf "arialbd.ttf" "V" 0.5,0 texture { vidroverde } interior { ior 2 } } #declare espada = intersection { cylinder { <0,0,-1.5>, <0,30,-1.5>,3 } cylinder { <0,0,1.5>, <0,30,1.5>,1 } texture { shinymetal } } #declare cabeca = union { sphere { <0,7,0> , 3 texture { preto } } sphere { <0,3,0> , 2 texture { bege } } cone { <0,7,0>, 3, <0,3,0>, 2 texture { bege } } cylinder { <0,3,0>, <0,0,0>, 1 texture { bege } } } #declare tronco = difference { cylinder { <0,16,0>, <0,0,0>, 1 scale <5,1,3> texture { vermelho } } union { sphere { <-5,0,0>, 4 } sphere { <5,0,0>, 4 } texture { azul } } } #declare perna = union { sphere { <-3,22,0>, 2 texture { azul } } cylinder { <-3,22,0>, <-5,12,0>, 2 texture { azul } } sphere { <-5,12,0>, 2 texture { azul } } cone { <-5,12,0>,2, <-5,0,0>,1 texture { azul } } intersection { sphere { <-5,0,0>, 3 } box { <-8,3,-3>, <-2,0,3> } texture { marrom } } } #declare bracoesquerdo = union { sphere { <0,0,0>, 2 texture { vermelho} } cylinder { <0,0,0>, <-8,0,0>, 2 texture { bege } } sphere { <-8,0,0>,2 texture { bege } } cone { <-8,0,0>,2, <-8,0,8>,1 texture { bege } } sphere { <-8,0,8>,1 texture { bege } } rotate <0,60,0> } #declare bracodireito = union { sphere { <0,0,0>, 2 texture { vermelho} } cylinder { <0,0,0>, <8,0,0>, 2 texture { bege } } sphere { <8,0,0>,2 texture { bege } } cone { <8,0,0>,2, <16,0,0>,1 texture { bege } } sphere { <16,0,0>,1 texture { bege } } object { espada translate <16,0,0> } } #declare sobretudo = union { difference { difference { cone { <0,30,0>,1, <0,0,0>,1.5 } cone { <0,29.9,0>,0.9, <0,-0.1,0>,1.45 } } box { <-1.5,30,1>, <1.5,0,1.5> } texture { preto } scale <5,1,3> } } #declare neo=union { object { cabeca translate <0, 36, 0>} object { tronco translate <0, 20, 0>} object { perna } object { perna scale <-1,1,1>} object { bracoesquerdo rotate 45*x translate <-6,34,0> } object { bracodireito rotate -70*z rotate -40*y translate <6,34,0> } object { sobretudo translate < 0, 6, 0> } } object {inseto rotate 180*y rotate -80*z translate <25,15,10>} object {tl scale 60 translate 2*y } object {ti translate 1*x scale 60 translate 2*y } object {tv translate 1.7*x scale 60 translate 2*y } object {neo rotate -50*y translate <120,0,-10> } plane {y,0 texture {checker texture { silvermetal } texture { shinymetal } scale 5} }