// Last edited on 2003-04-13 22:41:49 by stolfi
// arquivo de descricao de cena para POV-ray
// Laboratório 1 - MC930 - 1S/2003
// Marcelo Bello RA 992119

background{ color rgb < 0.6, 0.6, 0.6 > }

#declare ctr = <  0.00,  0.00,   0.00 >;
#declare cam = <  0.00,  5.00, -15.00 >;

camera
{
  location  ctr + 1.2*cam
  right 1.2 * x up 0.9 * y
  sky       y
  look_at   ctr
} 

light_source
{
  ctr + 10*(vrotate(cam, 20*y) + 5*y)
  color rgb 1.2 * < 1.00, 1.00, 1.00 >
}

light_source
{
  ctr + 10*(vrotate(cam, -70*y) + 7*y)
  color rgb 0.8 * < 1.00, 1.00, 1.00 >
}

#declare raioBola = 1;
#declare coeficienteKBola = 5;
#declare velocidadeHorizontalInicialBola = 16;
#declare posicaoVerticalInicialBola = 0;
#declare posicaoHorizontalInicialBola = -7;


#declare velocidadeHorizontalBola = velocidadeHorizontalInicialBola;
#declare deslocamentoHorizontalBola = velocidadeHorizontalBola*clock;


#declare deslocamentoVerticalBola = 3 * abs(sin( 2*clock * 3.14159*2 ));

#if ( mod(clock, 0.4) > 0.2  )
   #declare raioBola = raioBola + 0.6 -  mod(clock, 0.2)*3;
#else
   #declare raioBola = raioBola + mod(clock, 0.2)*3;
#end

#declare bounce =
  text
  {
    ttf "arial.ttf"
    "Bounce"
    0.2, 0
    texture { pigment { color rgb <0.8 1.0 0.2> }} // estava faltando - acrescentado por stolfi
  }

#declare corBola = < 0.6, 0.6, 1.0 >;

#declare texturaBola =
  texture
  {
    pigment{ rgb corBola }
  }

#declare chao =
  plane
  {
    y, -12.0
    pigment { hexagon color rgb < 1.0, 1.0, 1.0 > color rgb < 1.0, 0.5, 1.0 > color rgb < 0.7, 0.7, 0.7 >}
  }

#declare bola =
  sphere { < posicaoHorizontalInicialBola, posicaoVerticalInicialBola, 0 >, raioBola }

union
{
  object{ bola scale < 1, 1, 1 > 
    texture { texturaBola } // estava faltando - acrescentado por stolfi
    translate < deslocamentoHorizontalBola, deslocamentoVerticalBola, 0  > }
  object{ bounce translate< -10.5 + ( clock + 1 )*6.5, 2.0, 0.0 > scale <2.0, 2.0, 2.0 >}
  object{ chao }
}