// Last edited on 2009-07-22 17:19:06 by stolfilocal
// Processed by remove-cam-lights
#include "colors.inc"

  

  

  

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

#declare espessura = 1.0;
#declare raio = 3.0;
#declare rotacao = 120;

#declare escala = 1/2;

#declare tinta = 
  texture {
    pigment { color rgb < 0.80, 0.40, 0.40 > }
    finish { diffuse 0.8 specular 0.8 roughness 0.05 ambient 0.1 }
  }

#declare textura_marble =
pigment {
    marble
    turbulence 1
    color_map {
      [0.0 color Gray90] 
      [0.7 color Gray60] 
      [1.0 color Gray20] 
    }
}

#macro geraEsferas ( num_iteracoes )
  #if ( num_iteracoes = 0 )
    cylinder{ < 0, 0, -espessura >, < 0, 0, espessura >, raio }
  #else
    union{
      cylinder{ < 0, 0, -espessura >, < 0, 0, espessura >, raio }
      union{
         object{ geraEsferas(num_iteracoes-1) translate < 0, (raio+raio/2)*2, 0 > rotate < 0, 0, rotacao > }
         object{ geraEsferas(num_iteracoes-1) translate < 0, (raio+raio/2)*2, 0 > rotate < 0, 0, rotacao * 2 > }
         object{ geraEsferas(num_iteracoes-1) translate < 0, (raio+raio/2)*2, 0 > rotate < 0, 0, rotacao * 3 > }
         scale < escala, escala, 1 >
      }
    }
  #end
#end

#declare N = 4;

object { geraEsferas(N) texture { tinta } }

// Original camera parameters:
// #local cam_ctr = <0,0,0>
// #local cam_vec = <-10.00,2.00,-20.00>
// #local cam_sky = y

#include "camlight.inc"
camlight(<0,0,0>,<4,5,10>,20.0,y,1.0)