// Last edited on 2009-07-24 16:35:32 by stolfilocal
// 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.1 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.1 roughness 0.005 ambient 0.1 }
  }

#macro folha()
  cylinder {
    < 0.00, 0.00, 0.00 >,
    < 2.00, 0.00, 0.00 >,
    0.1
    texture { tinta_B }
  }
#end

#macro primeiro_pai(gama)
  union {
    cylinder {
    < 0.00, 0.00, 0.00 >,
    < 2.00, 0.00, 0.00 >,
    0.1
    texture { tinta_A }
    }
    object { folha() rotate <0,gama,0> translate <2,0,0> }

  }
#end

#macro segundo_pai(beta, gama)
  union {
    cylinder {
    < 0.00, 0.00, 0.00 >,
    < 2.00, 0.00, 0.00 >,
    0.1
    texture { tinta_B }
    }
    object { primeiro_pai(gama) rotate <0,beta,0> translate <2,0,0> }
  }
#end

#macro talher(alfa, beta, gama)
  union {
    cylinder {
      < 0.00, 0.00, 0.00 >,
      < 3.00, 0.00, 0.00 >,
      0.3
      texture { tinta_A }
    }
    object { segundo_pai(beta, gama) rotate <0,alfa,0> translate <3,0,0> }
  }

#end

  union {
  object { talher(45, 45, -135) }
  object { talher(90, -120, 160) translate <0,3,0>}
  }

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

#include "camlight.inc"
camlight(<1.5,1.5,-0.7>,<10,10,10>,10.0,z,1.0)