// Last edited on 2003-04-12 05:05:45 by stolfi #include "colors.inc" #include "stones.inc" #include "textures.inc" camera { location 4.0*<14, 0.5, -11> right -0.60*x up 0.80*y look_at <0,0,7> } background { color Gray } light_source { 10*<10, 5, 0> 1.0*White } light_source { 10*<-20, 30, 0> 0.5*White} plane { y, -100 texture { T_Stone15 } } #declare tx_espelho = texture{ pigment { Green } finish{ ambient 0.05 diffuse 0.05 reflection Green specular 0.20 roughness 0.05 } } #declare cor_cristal2 = Red; #declare tx_cristal2 = texture{ finish{ ambient 0.1 diffuse 0.1 reflection 0.25 specular 1 roughness 0.001 } pigment { color cor_cristal2 filter 1 } } #declare cor_cristal1 = Yellow; #declare tx_cristal1 = texture{ finish{ ambient 0.1 diffuse 0.1 reflection 0.25 specular 1 roughness 0.001 } pigment { color cor_cristal1 filter 1 } } #declare cor_cristal3 = Blue; #declare tx_cristal3 = texture{ finish{ ambient 0.1 diffuse 0.1 reflection 0.25 specular 1 roughness 0.001 } pigment { color cor_cristal3 filter 1 } } #declare Half_Torus = difference { torus { 4, 1 rotate -90*x } box { <-5, -5, -1>, <5, 0, 1> } texture { tx_cristal2 } interior {ior 2.0} translate 10*x } #declare Flip_It_Over = 180*x; #declare rosquinha = torus { 4, 1 rotate -90*x translate <22, 4, 0> texture {tx_cristal3} interior {ior 2.0} } #declare bolaestranha = sphere { <2, -5, 0>, 5 scale < 2, 0, 0 > translate <0, 0.2, 0> texture {tx_espelho} interior {ior 2.0} } #declare pedacinhos = cylinder { <0, 2, 0>, <0, -2, 0>, 1 texture{tx_cristal3} interior {ior 2.0} } #declare portacopos = cylinder { <0, 10, 0>, <0,-10,0>, 5 open translate <-15, -5, 0> texture {tx_cristal1} interior {ior 2.0} } #declare ligacao = cylinder{ < -10, 0, 0>, < -5,0, 0> 1 translate -5*y texture{tx_cristal3} interior {ior 2.0} } union { object {rosquinha} object {bolaestranha} object {portacopos} object {pedacinhos translate < 4, -11, 0>} object {pedacinhos translate < 7, -9, 2> rotate 50*x } object {pedacinhos translate <4, -10, 0> rotate -30*z } object {ligacao} object { Half_Torus } object { Half_Torus rotate Flip_It_Over translate 8*x } }