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

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

#declare tx_vidro =
  texture{
    pigment{ color rgb < 0.85, 0.95, 1.00 > filter 0.70 }
    finish{ diffuse 0.3 reflection 0.5 ambient 0.4 specular 0.25 roughness 0.05 }
  }

#declare tx_fosca =
  texture{
    pigment{ color rgb < 1.00, 0.80, 0.80 > }
    finish{ diffuse 0.9 ambient 0.1 }
  }

#declare tx_base = texture
{
  pigment { color rgb <1.0, 0.0, 0.0> }
  finish { diffuse 0.9 ambient 0.1 }
}

#declare tx_propulsores = texture
{
  pigment { color rgb <0.0, 0.5, 0.5> }
  finish { diffuse 0.9 ambient 0.1 }
}

#declare tx_frente = texture
{
  pigment { color rgb <0.0, 1, 0> }
  finish { diffuse 0.9 ambient 0.1 }
}

#declare tx_roda = texture
{
  pigment { color rgb <0.0, 0.0, 1.0> }
  finish { diffuse 0.9 ambient 0.1 }
}

#declare raio = 2.000;

#declare cilindro = cylinder {
  <0,0,0>,
  <0,2,0>,
  0.3
  texture { tx_base }
}

#declare esfera = sphere {
  <0, 0, 0>,
  0.3
  texture { tx_propulsores }
}

#declare roda = sphere {
  <0, 0, 0>,
  0.3
  texture { tx_roda }
}

#declare cones = cone {
  <0.0, 2.6, 0>, 0,
  <0.0, 2, 0>, 0.3
  texture { tx_frente }
}

#declare caixa = box {
  <-1, -1, -1>,
  <1, 1, 1>
  texture { tx_roda }
}

#declare chao =
  box{ <-20,-20,-1>, <+20,+20,0> }

#include "eixos.inc"

union{
  object{ eixos(3.00) }

  object{ chao  translate < 0,0,-5 > texture{ tx_fosca } }

  #declare j = 0;

  #while (j < 5)
    #declare i = 0;
    #while (i < 5)
      #if (j <= i)
        box {<0.6 - i, -0.3, -1.5 + j*0.5>, <-0.6 - i, 3.9, -0.9 + j*0.5> texture { tx_vidro } }
      #end
      #if ((i = 1 & j = 1) | (i = 3 & j = 2))
        sphere { <-j, i*0.9, j*0.5>, 0.3 texture {pigment {color rgb<0.5, 0.5, 0.5>}}}
        cone { <-j, i*0.9, j*0.5>, 0, <-j, i*0.9, -0.6 + j*0.5>, 0.3 texture { pigment {color rgb<0.5, 0.5, 0.5>} }}
        cone { <-j, i * 0.9 - 0.2, j * 0.5 - 0.3>, 0, <-j, i * 0.9 - 0.2, -0.6 + j * 0.5 - 0.3>, 0.1 texture { pigment {color rgb<0.5, 0.5, 0.5>}}}
        cone { <-j, i * 0.9 + 0.2, j * 0.5 - 0.3>, 0, <-j, i * 0.9 + 0.2, -0.6 + j * 0.5 - 0.3>, 0.1 texture { pigment {color rgb<0.5, 0.5, 0.5>}}}
        cylinder { <-j, i * 0.9 - 0.3, -0.4 + j * 0.5>, <-j, (i+1)*0.9 - 0.6, -0.4 + j * 0.5>, 0.08 texture { pigment {color rgb <0.5 0.5, 0.5>}} }
      #else
        sphere { <-j, i * 0.9, j * 0.5>, 0.3 texture {pigment {color rgb<0.3, 0.9, 0.3>} finish{ diffuse 0.9 ambient 0.5 }}}
        cone { <-j, i * 0.9, j * 0.5>, 0, <-j, i * 0.9, -0.6 + j * 0.5>, 0.3 texture { pigment {color rgb<0.3, 0.3, 0.9>} finish{ diffuse 0.9 ambient 0.5 }}}
        cone { <-j, i * 0.9 - 0.2, j * 0.5 - 0.3>, 0, <-j, i * 0.9 - 0.2, -0.6 + j * 0.5 - 0.3>, 0.1 texture { pigment {color rgb<0.9, 0.3, 0.3>} finish{ diffuse 0.9 ambient 0.5 }}}
        cone { <-j, i * 0.9 + 0.2, j * 0.5 - 0.3>, 0, <-j, i * 0.9 + 0.2, -0.6 + j * 0.5 - 0.3>, 0.1 texture { pigment {color rgb<0.9, 0.3, 0.3>} finish{ diffuse 0.9 ambient 0.5 }}}
        cylinder { <-j, i * 0.9 - 0.3, -0.4 + j * 0.5>, <-j, (i+1)*0.9 - 0.6, -0.4 + j * 0.5>, 0.08 texture { pigment {color rgb <1.00, 0.80, 0.10>} finish{ diffuse 0.9 ambient 0.5 }} }
      #end
      #declare i = i+1;
    #end
    #declare j = j + 1;
  #end

}

#include "camlight.inc"
#declare centro_cena = < -1.20, 2.00, 0.00 >;
#declare raio_cena = 6.0;
#declare dir_camera = < 1.00, 1.00, 1.00 >;
#declare dist_camera = 16.0;
#declare intens_luz = 1.00;
camlight(centro_cena, raio_cena, dir_camera, dist_camera , z, intens_luz)