// Last edited on 2009-07-23 17:55:40 by stolfilocal
// Processed by remove-cam-lights

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

#declare vermelho = 
  texture {
    pigment { color rgb < 1.0, 0.0, 0.0 > }
    finish { diffuse 0.8 specular 0.1 ambient 0.1 }
  }
#declare verde = 
  texture {
    pigment { color rgb < 0, 1, 0 > }
    finish { diffuse 0.8 specular 0.1 ambient 0.1 }
  }
#declare azul = 
  texture {
    pigment { color rgb < 0, 0, 1 > }
    finish { diffuse 0.8 specular 0.1 ambient 0.1 }
  }
#declare amarelo = 
  texture {
    pigment { color rgb < 1, 1, 0 > }
    finish { diffuse 0.8 specular 0.1 ambient 0.1 }
  }
 
 
 #macro folha()
  box {
   <-10, -0.5, -0.5>,
   < 10,  9.5,  0.5>
   texture{amarelo}
  }
 #end
 
 
 #macro parte1( alfa, beta )
  union {
   union {
    cylinder {    
     <0, 0, 0>,
     <0, 10, 0>,
     1
     texture{vermelho}
    }
    sphere {      
     <0,0,0>, 1
     texture{vermelho}
    }
   }
   object{ folha() rotate<alfa,beta,0> translate<0,10,0> }
  }
 #end
 
 
 #macro parte2( alfa, beta, gama, delta )
  union {
   union {
    cylinder {
     <0, 0, 0>,
     <0, 10, 0>,
     1
     texture{verde}
    }
    sphere {
     <0,0,0>, 1
     texture{verde}
    }
   }
   object{ parte1(alfa,beta) rotate<gama,delta,0> translate<0,10,0> }
  }
 #end
 
 #macro parte3( alfa, beta, gama, delta, epsilon, dzeta )
  union {
   union {
    cylinder {
     <0, 0, 0>,
     <0, 10, 0>,
     1
     texture{azul}
    }
    sphere {
     <0,0,0>, 1
     texture{azul}
    }
   }
   object{ parte2(alfa,beta,gama,delta) rotate<epsilon,dzeta,0> translate<0,10,0> }
  }
 #end
 
 
 parte3(45, 45, 30, -30, -20, -20)

// Original camera parameters:
// #local cam_ctr = <-50.00,0.00,-20.00>
// #local cam_vec = (<45.00,45.00,30.00>-<-50.00,0.00,-20.00>)
// #local cam_sky = z

#include "camlight.inc"
camlight(<-50.00,0.00,-20.00>,<10,10,10>,20.0,z,1.0)