// Last edited on 2007-04-03 19:42:21 by stolfi
// Processed by remove-cam-lights

background{ color rgb < 0.75, 0.80, 0.85 > }

#declare raio = 2.000;

#declare tinta_A = 
  texture {
    pigment { color rgb < 0.10, 0.80, 1.00 > }
    finish { diffuse 0.8 specular 0.3 roughness 0.005 ambient 0.1 }
  }

#declare tinta_B = 
  texture {
    pigment { color rgb < 1.00, 0.80, 0.10 > }
    finish { diffuse 0.8 specular 0.3 roughness 0.005 ambient 0.1 }
  }

#declare tinta_C=
  texture{
   
 }

#declare tinta_esfera = 
  texture {
    pigment { color rgb < 1.00, 0.00, 0.00 > }
    finish { diffuse 0.8 specular 0.3 roughness 0.005 ambient 0.1 }
  }

#declare bola =
  sphere {
    < 0.00, 0.00, 0.00 >, 2.00 
    texture { tinta_A }
  }
  
#declare furo = 
  cylinder {
    < -1.00, -2.00, -2.00 >,
    < +1.00, +2.00, +2.00 >,
    1.50
    texture { tinta_B }
  }
  
#declare pino = 
  cylinder {
    < -2.00, +2.00, -1.00 >,
    < +2.00, -2.00, +1.00 >,
    0.75
    texture { tinta_B }
  }
  

#declare quadrado_mestre =
 box{
   <-4.00, -4.00, -4.00 >
   < 4.00, 4.00, 4.00 >
   texture {tinta_A}
 }

#declare quadrado_interior =
box{
   < -3.80, -3.80, -3.80>
   <  3.80, 3.80 , 3.80 >
   texture {tinta_A}
}

#declare quadrado_recorte =
 box{
   < 5.00, -5.00, 5.00 >
   < 0.00, 5.00, -1.00 >
   texture {tinta_B}
 }

#declare esfera_quadrado =
sphere{
   <0.0, 2.0, 3.5>, 0.4
   texture {tinta_esfera}
}

union{
 object{esfera_quadrado}
 difference{
    difference{
       object{quadrado_mestre}
       object{quadrado_interior}
  }
  object{quadrado_recorte}
   }
}

#declare bola_mestre =
sphere{
   <0.0,0.0, 0.0>, 3.0
   texture {tinta_A}
}

#declare bola_interior =
sphere{
   <0.0,0.0, 0.0>, 2.8
   texture {tinta_A}
}

#declare bola_recorte = 
box{
   < -5.00, 5.00, 5.00 >
   < 5.00, 0.00, -1.00 >
   texture {tinta_B}
}

difference{
 difference{
  object{bola_mestre}
         object{bola_interior}
 }
        object{bola_recorte}
}

// Original camera parameters:
// #local cam_ctr = <0,0,0>
// #local cam_vec = <8.00,4.00,2.00>
// #local cam_sky = z

#include "camlight.inc"
camlight(<0,0,0>,<10,10,10>,20,z,1.0)