// Last edited on DATE TIME by USER
// Processed by remove-cam-lights

  

  

#declare tinta_A = 
  texture {
    pigment { color rgb < 0.85, 0.65, 0.7 > }
    finish { diffuse 0.1 ambient 0.1 }
  }

#macro ponta () 
object {
 union {
 
 cylinder {
  <0,0,0.3> , 
 <-5,0,0.3>, 0.7
  texture { tinta_A }
}
  box {
     < 0.00, 0.00, 0.00 >, 
  <-5,0.5,-7> 
      texture { tinta_A }
  }
 box {< 0,0.5, -7 >, 
  <-1,5,-6.5> 
      texture { tinta_A }
} box {< -2,0.5, -7 >, 
  <-3,5,-6.5> 
      texture { tinta_A }
}
 box {< -4,0.5, -7 >, 
  <-5,5,-6.5> 
      texture { tinta_A }
}}}
#end

#macro braco1 (alfa)
union {
object{ cylinder {
  <0,0,0.3> , 
  <-5,0,0.3>,0.7 
  texture { tinta_A }
}}

object {
 box {
 <0,0,0>,
 <-5,3,1>
 texture { tinta_A} 
 }}
object { ponta()

 rotate <alfa,0,0>
 translate <0,3,0> 
 }}
#end

#macro braco2(alfa,beta)
union { object {braco1(alfa) 
 rotate <beta,0,0>
 translate <0,5,0>
}
object {
 box {
 <0,0,0>,
 <-5,5,1>
 texture { tinta_A} 
 }}

object{ cylinder {
  <0,0,0.3> , 
  <-5,0,0.3>,0.7 
  texture { tinta_A }
}}

}
#end 

#macro braco3(alfa,beta,gama)

union { object {braco2(alfa,beta) 
 rotate <gama,0,0>
 translate <0,8,0>
}
object {
 box {
 <0,0,0>,
 <-5,8,1>
 texture { tinta_A} 
 }}}
#end 

#declare c0 = 0.0;
#declare c1 = 0.2;
#declare c2 = 0.4;
#declare c3 = 0.6;
#declare c4 = 0.8;
#declare c5 = 1.0;

#if ((clock >= c0) & (clock < c3))
    #declare rr = (clock - c0)/(c3 - c0);
    #declare ss = (c3 - clock)/(c3 - c0);
    #declare cor = ss * 0 + rr * 0.7;
  #end
  
  #if ((clock >= c3) & (clock < c5))
    #declare rr = (clock - c3)/(c5 - c3);
    #declare ss = (c5 - clock)/(c5 - c3);
    #declare cor = ss * 0.7  + rr * 0;
   #end

#declare cor1 = <cor,0.7,0.8>;
background{ color rgb cor1 }

 #if ((clock >= c0) & (clock < c1))
    #declare rr = (clock - c0)/(c1 - c0);
    #declare ss = (c1 - clock)/(c1 - c0);
    #declare ang = ss * 0 + rr * 72;
  #end
  
  #if ((clock >= c1) & (clock < c2))
    #declare rr = (clock - c1)/(c2 - c1);
    #declare ss = (c2 - clock)/(c2 - c1);
    #declare ang = ss * 72  + rr * 144;
   #end

  #if ((clock >= c2) & (clock < c3))
    #declare rr = (clock - c2)/(c3 - c2);
    #declare ss = (c3 - clock)/(c3 - c2);
    #declare ang = ss * 144 + rr * 216;
   #end

  #if ((clock >= c3) & (clock < c4))
    #declare rr = (clock - c3)/(c4 - c3);
    #declare ss = (c4 - clock)/(c4 - c3);
    #declare ang = ss * 216 + rr * 288;
   #end

  #if ((clock >= c4) & (clock <= c5))
    #declare rr = (clock - c4)/(c5 - c4);
    #declare ss = (c5 - clock)/(c5 - c4);
    #declare ang = ss * 288 + rr *  360;
   #end

#declare vv = <  40.00, 50.00, 35 >; 
#declare uu = vrotate(vv, <0,0,ang>);

  

#macro quadro(tt)

   #if ((tt >= c0) & (tt < c1))
    #declare rr = (tt - c0)/(c1 - c0);
    #declare ss = (c1 - tt)/(c1 - c0);
    #declare alfa = ss * -90 + rr * -90;
    #declare beta = ss * 0   + rr * -90;
    #declare gama = ss * 0   + rr * 70;
  #end
  
  #if ((tt >= c1) & (tt < c2))
    #declare rr = (tt - c1)/(c2 - c1);
    #declare ss = (c2 - tt)/(c2 - c1);
    #declare alfa = ss * -90 + rr * 0;
    #declare beta = ss * -90 + rr * -70;
    #declare gama = ss * 70  + rr * -90;
   #end

  #if ((tt >= c2) & (tt < c3))
    #declare rr = (tt - c2)/(c3 - c2);
    #declare ss = (c3 - tt)/(c3 - c2);
    #declare alfa = ss * 0   + rr * 90;
    #declare beta = ss * -70 + rr * -50;
    #declare gama = ss * -90 + rr * -90;
   #end

  #if ((tt >= c3) & (tt < c4))
    #declare rr = (tt - c3)/(c4 - c3);
    #declare ss = (c4 - tt)/(c4 - c3);
    #declare alfa = ss * 90   + rr * 0;
    #declare beta = ss * -50 + rr * -25;
    #declare gama = ss * -90 + rr * -45;
   #end

  #if ((tt >= c4) & (tt < c5))
    #declare rr = (tt - c4)/(c5 - c4);
    #declare ss = (c5 - tt)/(c5 - c4);
    #declare alfa = ss *  0  + rr * -90;
    #declare beta = ss * -25 + rr *  0;
    #declare gama = ss * -45 + rr *  0;
   #end

    object { braco3(alfa, beta, gama) }

#end

#declare cor2 = <cor, 1,1>;
#declare cor3 = <0.5,cor,0.5>;

#declare plano =
plane {z,0
texture {pigment {checker  rgb cor2, rgb cor3}
finish{diffuse 0.5 ambient 0.5}
}scale 2
 translate -18 * z
}

object { quadro(clock) }
object { quadro (mod(clock + 0.30,1.0)) translate<0, -30, 0>}
object {plano}

// Original camera parameters:
// #local cam_ctr = <0,0,0>
// #local cam_vec = (uu)
// #local cam_sky = z

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