// Exemplo de arquivo de descricao de cena para POV-ray
// Last edited on 2010-03-04 15:44:01 by stolfi

// ======================================================================
// CORES E TEXTURAS
#include "textures.inc" 

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

#declare tx_plastico = 
  texture{
    pigment{ color rgb < 0.10, 0.80, 1.00 > }
    finish{ diffuse 0.8 ambient 0.1 specular 0.5 roughness 0.005 }
  }

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

#declare tx_espelho = 
  texture{
    pigment{ color rgb < 1.00, 0.85, 0.30 > }
    finish{ diffuse 0.2 reflection 0.7*< 1.00, 0.85, 0.30 > ambient 0.1 }
  }

#declare tx_vidro = 
  texture{
    pigment{ color rgb < 0.85, 0.95, 1.00 > filter 0.70 }
    finish{ diffuse 0.03 reflection 0.02 ambient 0.02 specular 0.25 roughness 0.005 }
  }


#declare tx_xadrez =
  texture{
    pigment{ checker color rgb < 0.10, 0.32, 0.60 >, color rgb < 1.00, 0.97, 0.90 > }
    finish{ diffuse 0.9 ambient 0.1 }
    scale 2
  }

#declare arquibancada = 
  texture{
    pigment{ color rgb < 0, 1, 1.00 > }
    finish{ diffuse 0.8 ambient 0.1 specular 0.5 roughness 0.005 }
  }
  
#declare tx_escada = 
  texture{
    pigment{ color rgb < 1.00, 0.80, 0.10 > }
    finish{ diffuse 0.9 ambient 0.1 }
  }

#declare tx_pele =
  texture{
    pigment{ color rgb < 1.00, 0.721, 0.513 > }
    finish{ diffuse 0.9 ambient 0.1 }
  }

#declare tx_camisa_1 = 
  texture{
    pigment{ color rgb < 0.10, 0.80, 1.00 > }
    finish{ diffuse 0.8 ambient 0.1 specular 0.5 roughness 0.005 }
  }

#declare tx_camisa_2 =
  texture{
    pigment{ checker color rgb < 0, 0, 0 >, color rgb < 1, 1, 1 > }
    finish{ diffuse 0.9 ambient 0.1 }
    scale 0.15
  }


#declare tx_cadeira = 
  texture{
    pigment{ color rgb < 1.00, 0.00, 0.00 > }
    finish{ diffuse 0.9 ambient 0.1 }
  }
  
#declare tx_grama = 
  texture{
    pigment{ color rgb < 0, 1, 0 > }
    finish{ diffuse 0.8 ambient 0.1 specular 0.5 roughness 0.005 }
  }
// ======================================================================
// DESCRIÇÃO DA CENA 


// Partes da cena:


#macro piso(Tamanho, Largura) 
  box{ <0,0,-1>, <Largura,Tamanho,0> }
	
	texture {tx_xadrez}
#end




#macro estatua (texto)      
	union{
    union {
    	
    	cone{<0,0,0>, 2,
	     <0, 0 ,4> , 1.5
	     texture {White_Marble}
	     }

	box{<-2, 2, 4>, <2,-2, 5>
		texture{Pine_Wood}
	}	
     }
	
	text{ttf "arial.ttf" texto , 0.1, 0.0 translate <-1.5, 3.5,2> rotate <90, 0, 180> scale 1.2  texture {White_Marble}}

}
#end

// Aqui está a cena, finalmente:

union {
/*
*/
	
	object{estatua("Portugues") translate <3,3,0>}
	object{estatua("MC930A") translate <9,9,0>} 
	object{estatua("Museu") translate <3,14,0>}
	object{piso(30, 30)}
}	


#include "eixos.inc"
#include "camlight.inc"
#declare centro_cena = < 6.00, 12.00, 1.00 >;
#declare raio_cena =  15; //40.0;
#declare dir_camera =  <4 ,15, 5>;  //< 30, 12, 25.00 >;
#declare dist_camera =  20;  //40.0;
#declare intens_luz = 1.50;
camlight(centro_cena, raio_cena, dir_camera, dist_camera , z, intens_luz)