// Quarto trabalho de computacao grafica. // Isana Luzia Seabra de Campos - RA006374 // Last edited on 2001-06-02 20:26:22 by stolfi #include "colors.inc" background{ color rgb < 1, 1, 1 > } camera { location < 22.00, 8.00, 12.00 > right < -0.60, 0.00, 0.00 > up < 0.00, 0.00, 0.80 > sky < 0.00, 0.00, 1.00 > look_at < 0.00, 0.00, 3.0 > } light_source { < 24.00, 14.00, 30.00 > color rgb < 1.00, 1.00, 1.00 > } #declare preto = texture { pigment { color rgb < 0.0, 0.0, 0.0 > } finish { diffuse 0.5 specular 0.5 roughness 0.005 ambient 0.1 } } #declare amarelo = color rgb < 1.0, 1.0, 0.00 > #declare azul = color rgb < 0.0, 0.0, 1.00 > #declare tx_cristal = texture{ finish{ ambient 0.1 diffuse 0.1 reflection 0.25 specular 1 roughness 0.001 } pigment{ color azul filter 1 } } #declare tx_espelho = texture{ pigment{ rgb amarelo } finish{ ambient 0.05 diffuse 0.05 reflection amarelo specular 0.20 roughness 0.05 } } #declare alca = difference{ torus{1.5, 0.5 texture {tx_cristal} hollow interior{ior 1.5}} plane{<0,0,1>,0 } rotate 90*z rotate -110*x translate<0,4.2,4> } #declare copo = object{ union{ torus{2.0, 0.4 rotate 90*x } torus{2.2, 0.4 rotate 90*x translate<0,0,0.6>} torus{2.4, 0.4 rotate 90*x translate<0,0,1.2>} torus{2.6, 0.4 rotate 90*x translate<0,0,1.8>} torus{2.8, 0.4 rotate 90*x translate<0,0,2.4>} torus{3.0, 0.4 rotate 90*x translate<0,0,3.0>} torus{3.0, 0.4 rotate 90*x translate<0,0,3.6>} torus{3.0, 0.4 rotate 90*x translate<0,0,4.2>} texture {tx_espelho} } } #declare base = object{ union{ torus{2.5, 0.4 rotate 90*x } torus{2.0, 0.4 rotate 90*x translate<0,0,0.6>} torus{1.5, 0.4 rotate 90*x translate<0,0,1.2>} torus{1.5, 0.4 rotate 90*x translate<0,0,1.8>} torus{1.0, 0.4 rotate 90*x translate<0,0,2.4>} torus{1.0, 0.4 rotate 90*x translate<0,0,3.0>} texture {tx_espelho} } } #declare numero1 = object{ union { cylinder { <0,0,0>,<0,0,3>, 0.5 pigment {Blue} } cylinder { <0,0,3>,<0,-1.5,3>, 0.5 pigment {Blue} rotate 15*x translate<0,1.0,0>} } } // box { <0.0, 0.0, 0.0>, < 9.0, 0.0, 0.1 > texture{ preto } } // box { <0.0, 0.0, 0.0>, < 0.0, 9.0, 0.1 > texture{ preto } } // box { <0.0, 0.0, 0.0>, < 0.1, 0.0, 9.0 > texture{ preto } } plane{<0,0,1>,0 pigment {checker <0.95,0.95,0.95>,<0.9,0.9,0.9> }} object{ union{ union{ object{copo translate<0,0,2.0>} object{base} scale<0,1.5,0> } object{alca} object{alca rotate 180*z} object{numero1 translate<4,0,2> rotate 5*y} } }