// Last edited on 2003-05-28 17:50:22 by stolfi

#include "colors.inc"
#include "stones.inc"

background{ 0.2*Blue + 0.6*White}
camera {
    location 0.60*<20, -3, -30>
    right x up y
    sky y
    look_at <0,-3.3,0>
  }
  
light_source { <1000, 300, -500> 1.2*White }
light_source { <-500, 300, -1000> 0.9*White }     
light_source { <500, 1300, -300> 0.9*White }     

plane {
  y, -13
  texture { T_Stone10} }     
  
   
#declare olho =
  sphere {
    < -1.00, 4.00, -2.00 >, .5
    pigment {Blue} 
  }

#declare boca =
  sphere {
    < 0.00, 2.00, -2.00 >, .5
    pigment {Red }
  }

#declare corpo = 
  cylinder {
    < 0.00, -5.00, 0.00 >,
    < 0.00, 0.00, 0.00 >,
    2
    pigment {Brown }
  }

#declare cabeca =
  sphere {
    < 0.00, 3.50, 0.00 >, 2.5
    pigment { Brown  }
  }

#declare membrossup = 
  cylinder {
    < -2, -1.00, 0.00 >,
    < 2, 1.00, 0.00 >,
    0.55
    pigment { Black }
  }
#declare coxas = 
  cylinder {
    < 0, -5.00, 0.00 >,
    < 0, -7.00, 0.00 >,
    0.55
    pigment { Black }
  }
#declare pescoco = 
  cylinder {
    < 0.00, 0.00, 0.00 >,
    < 0.00, 1.10, 0.00 >,
    0.35
    pigment { Black }
  }
#declare joelhos =
  sphere { <0, -7, 0 >, 0.8
  pigment {CoolCopper} }

#declare membrosinf =
  cylinder { <0,-7,0>, <-1,-11,0>, 0.55
	     pigment {BakersChoc} }

#declare pes =
  sphere { <-1,-11,0>, 0.6 
	   scale<3,0,0>
	   pigment {Copper} }

#if (clock=0)
union{
	object{ olho }
	object{ olho translate <2, 0, 0 >}
	object{ boca }
	object { cabeca }
	object { membrossup translate < -3.9, -1.46, 0>  }
	object { membrossup  scale < -1, 1, 1> translate<3.9,-1.46,0> }
	object {corpo}
	object { coxas translate <-1.5,0,0>} /*coxa esq */
	object {coxas scale<-1,1,1> translate<1.5,0,0>} 
	object {pescoco}
	object {joelhos translate <-1.5,0,0>}
	object {joelhos scale<-1,1,1> translate <1.5,0,0>}
	object {membrosinf translate <-1.5,0,0> }
	object {membrosinf scale <-1,1,1> translate <1.5,0,0> }
	object {pes translate <-0.2,0,0> }
	object {pes scale <-1,1,1> translate <0.2,0,0>}
}
#else
	#if (clock < 0.51) 
	union{
		object{ olho }
		object{ olho translate <2, 0, 0 >}
		object{ boca }
		object { cabeca }
		object { membrossup translate < -3.9, -1.46, 0>  }
		object { membrossup  scale < -1, 1, 1> translate<3.9,-1.46,0> }
		object {corpo}
		translate clock*<-1,0,0>
		}
	union{
		object { coxas translate <-1.5,0,0> rotate clock*<30,0,5> }
		object {coxas scale<-1,1,1> translate<1.5,0,0>}
		object {pescoco}
		object {joelhos translate <-1.5,0,0> rotate clock*<30,0,5>}
		object {joelhos scale<-1,1,1> translate <1.5,0,0>}
		object {membrosinf translate <-1.5,0,0> rotate clock*<0,0,40> translate clock*<-5,2,-3>}
		object {membrosinf scale <-1,1,1> translate <1.5,0,0> }
		object {pes translate <-0.2,0,0> translate clock*<5,1,-3> }
		object {pes scale <-1,1,1> translate <0.2,0,0>} 
	}
	#end
	#if (clock > 0.51)	
	union{
		object{ olho }
		object{ olho translate <2, 0, 0 >}
		object{ boca }
		object { cabeca }
		object { membrossup translate < -3.9, -1.46, 0>  }
		object { membrossup  scale < -1, 1, 1> translate<3.9,-1.46,0> }
		object {corpo}
		}
	union{
		object { coxas translate <-1.5,0,0> }
		object {coxas scale<-1,1,1> translate<1.5,0,0> rotate clock*<-5,0,1>}
		object {pescoco}
		object {joelhos translate <-1.5,0,0> }
		object {joelhos scale<-1,1,1> translate <1.5,0,0> rotate clock*<-5,0,1>}
		object {membrosinf translate <-1.5,0,0>}
		object {membrosinf scale <-1,1,1> translate <1.5,0,0> rotate clock*<0,0,-40/5> translate clock*<5/5,-2/5,3/5>}
		object {pes translate <-0.2,0,0>  }
		object {pes scale <-1,1,1> translate <0.2,0,0> translate clock*<-5/5,-1/5,3/5>} 
	}
	#end 
#end