// Last edited on 2003-12-09 01:47:44 by stolfi
 #include "colors.inc"
 #include "textures.inc"
 #include "stones.inc"
// Exemplo de arquivo de descricao de cena para POV-ray

// ======================================================================

#declare ctr = < 0.00, 0.00, 0.00 >;
#declare camDir = <4,2.5,3>;

camera {
  location   ctr + 1.80*camDir
  right      -1.0*x
  up         0.75*y
  sky        y
  look_at    ctr
}
 

// ======================================================================
// FONTES DE LUZ

light_source {
  10 * < 10,-10,18 >            // Posição da lâmpada.
  color rgb 1.2 * < 1.00, 1.00, 1.00 >   // Intensidade e corda luz.
} 
 
light_source {
  10 * < 10,10,10 >            // Posição da lâmpada.
  color rgb 1.2 * < 1.00, 1.00, 1.00 >   // Intensidade e corda luz.
}

light_source{
  10 * <-10,10 ,18> 
 color rgb 1.2 * < 1.00, 1.00, 1.00 >
}
// ======================================================================
// DESCRIÇÃO DA CENA 

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

#declare antena=
union{
 sphere {<0.5,0.85,0> 0.1}
 cylinder {<0,0,0>,<1,0,0>, 0.02 rotate <60,0,60>
 pigment {color Black}}
}

#declare olho=
union{
 cylinder{<0,0,0>, <0,0,1.8>, 0.1 pigment {color HuntersGreen}}
}

#declare corpo=
union{
 difference{ 
 cone{<0,0,0> 2 <0,2,0> 1 pigment {color Sienna}}
 object{olho translate <-0.3,0.8,0>}
 object{olho translate <0.3,0.8,0>}
 
 
 }
 object{antena translate <0.5,1.9,1>}
 object{antena scale <-1,1,1> translate <-0.5,1.9,1>  }
 
}

#declare semente = seed(0);  
#declare i=0;


#while (i<4)
#declare ang1=0.34 + 0.61*i;
 
#declare ang_pe = floor(-20*rand(semente)+45);
#declare ang_pata1 = floor(-20*rand(semente))-60;
#declare ang_pata2 = floor(30*rand(semente))+60;
#declare ang_perna = floor(-30*rand(semente))-45;

#declare pe=
union{
 cylinder{<0,0,0>, <1,0,0>,0.1}
 sphere {<0,0,0>, 0.1}
}

#declare pata_1=
union{
 cylinder{ <0,0,0>,<2,0,0>,0.1}
 sphere{<0,0,0>, 0.1}
 object{  pe rotate ang_pe*z translate <2,0,0>}
}

#declare pata_2=
union{
 cylinder{<0,0,0>,<0.5,0,0>,0.1}
 sphere{<0,0,0>, 0.1}
 object{pata_1 rotate ang_pata1*z translate <0.5,0,0>}
}

#declare perna=
union{
 cylinder{<0,0,0>,<2,0,0>, 0.1}
 sphere{<0,0,0>,0.1}
 object{pata_2  rotate ang_pata2*z translate <2,0,0>}
}

object{perna scale<0.3,0.3,0.3>   pigment {color Black} rotate ang_perna*z translate <2*sin(ang1),0,2*cos(ang1)>  }
object{perna rotate ang_perna *z scale<-0.3,0.3,0.3> pigment{color Black} translate <-2*sin(ang1),0,2*cos(ang1)>}

#declare i=i+1;
#end


object{corpo translate <0,0,0.5>}
plane{y,-2 pigment { color GreenYellow} }