// Last edited on 2009-07-22 11:40:01 by stolfilocal
// Processed by remove-cam-lights

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

#declare colorDarkBlue = 
  texture {
    pigment { color rgb < 0.00, 0.00, 0.80 > }
    finish { diffuse 0.8 specular 0.1 roughness 0.205 ambient 0.1 }
  }

#declare colorLightBlue = 
  texture {
    pigment { color rgb < 0.00, 0.40, 1.00 > }
    finish { diffuse 0.8 specular 0.1 roughness 0.205 ambient 0.1 }
  }

#declare colorDarkGreen = 
  texture {
    pigment { color rgb < 0.00, 0.80, 0.00 > }
    finish { diffuse 0.8 specular 0.1 roughness 0.005 ambient 0.1 }
  }
  
#declare colorLightGreen = 
  texture {
    pigment { color rgb < 0.00, 1.00, 0.00 > }
    finish { diffuse 0.8 specular 0.1 roughness 0.005 ambient 0.1 }
  }
  
#declare colorYellow =
  texture {
    pigment { color rgb < 1.00, 1.00, 0.00 > }
    finish { diffuse 0.8 specular 0.1 roughness 0.005 ambient 0.1 }
  }
  
#declare colorRed =
  texture {
    pigment { color rgb < 1.00, 0.00, 0.00 > }
    finish { diffuse 0.8 specular 0.1 roughness 0.005 ambient 0.1 }
  }
  
#declare colorBrown = 
  texture {
    pigment { color rgb < 0.90, 0.90, 0.75 > }
    finish { diffuse 0.8 specular 0.1 roughness 0.005 ambient 0.1 }
  }
  
#declare colorGrey = 
  texture {
    pigment { color rgb < 0.90, 0.90, 0.90 > }
    finish { diffuse 0.8 specular 0.1 roughness 0.205 ambient 0.1 }
  }
  
#declare colorArray = array[6] {colorDarkBlue,colorLightBlue,colorDarkGreen,colorLightGreen,colorYellow,colorRed};

#declare roleta = seed(011594);

#declare objArray = array[3] {
    box {
      < 1.50, -0.10, 1.50 >,
      < 3.50, -3.60, 7.50 >
      texture { colorArray[ int(rand(roleta)*6) ] }
    },
    sphere {
      < 2.25, -2.00, 3.50 >, 2.00
      texture { colorArray[ int(rand(roleta)*6) ] }
    },
    cone {
      < 1.50, -2.00, 1.50 >, 2.00,
      < 1.50, -2.00, 7.50 >, 0.20
      texture { colorArray[ int(rand(roleta)*6) ] }
    }
  };

#declare i = 0;
#declare j = 0;
#declare k = 0;
#declare tam = 1;

#declare estantes = int(rand(roleta)*5) + 3;
#while (i < estantes)
  
    
  union {
    
    difference {
      box {
        < 0.00, 0.00, 0.00 >,
        < 30.00, -4.00, 10.00 >
        texture { colorBrown }
      }
      box {
        < 1.00, 0.01, 1.00 >,
        < 29.00, -3.50, 9.00 >
        texture { colorGrey }
      }
      translate < 0.00, -20.00*i, 0.00 >
    }
      
      #declare qtdd = int(rand(roleta)*9) + 1;
      #declare j = 0;
      #while (j < qtdd)
        #declare tam = int(rand(roleta)*2) + 1;
     box {
          < 1.50, -0.10, 1.50 >,
          < 3.50, -3.60, 7.50*tam >
          texture { colorArray[ int(rand(roleta)*6) ] }
          translate < 2.80*j, -20.00*i, 0.00 >
        }        
        
        #declare j = j + 1;
      #end
      
    
    difference {
      box {
        < 0.00, 0.00, 0.00 >,
        < 30.00, -4.00, 10.00 >
        texture { colorBrown }
      }
      box {
        < 1.00, 0.01, 1.00 >,
        < 29.00, -3.50, 9.00 >
        texture { colorGrey }
      }
      translate < 0.00, -20.00*i, 10.00 >
    }
      
      #declare qtdd = int(rand(roleta)*9) + 1;
      #declare j = 0;
      #while (j < qtdd)
        #declare tam = int(rand(roleta)*2) + 1;
        box {
          < 1.50, -0.10, 1.50 >,
          < 3.50, -3.60, 4.50*tam >
          texture { colorArray[ int(rand(roleta)*6) ] }
          translate < 2.80*j, -20.00*i, 10.00 >
        }
                
        #declare j = j + 1;
      #end
    
    difference {
      box {
        < 0.00, 0.00, 0.00 >,
        < 30.00, -4.00, 10.00 >
        texture { colorBrown }
      }
      box {
        < 1.00, 0.01, 1.00 >,
        < 29.00, -3.50, 9.00 >
        texture { colorGrey }
      }
      translate < 0.00, -20.00*i, 20.00 >
    }
      
      #declare qtdd = int(rand(roleta)*9) + 1;
      #declare j = 0;
      #while (j < qtdd)
        #declare tam = int(rand(roleta)*2) + 1;
        box {
          < 1.50, -0.10, 1.50 >,
          < 3.50, -3.60, 4.50*tam >
          texture { colorArray[ int(rand(roleta)*6) ] }
          translate < 2.80*j, -20.00*i, 20.00 >
        }
        
        #declare j = j + 1;
      #end
    
  }
  
  #declare i = i + 1;
#end

// Original camera parameters:
// #local cam_ctr = <0.00,-60.00,0.00>
// #local cam_vec = (<100.00,30.00,30.00>-<0.00,-60.00,0.00>)
// #local cam_sky = z

#include "camlight.inc"
camlight(<0.00,-50.00,0.00>,<7,10,7>,150.0,z,1.0)