/**************************************************************** * Trabalho Final de MC930 - Computaco Grafica * * Professor: Jorge Stolfi * * Tema: Teatro de Arena do Centro de Convivencia Cultural * * Aluno: Marcos Makoto Ikegame - 971219 * ****************************************************************/ #include "colors.inc" #include "stones.inc" #include "textures.inc" #include "finish.inc" //CAMERA camera { location <3, 3, -8> look_at <0, 2, 0> angle 80 } //FONTE DE LUZ light_source { < 10 , 10 , -10 > White } light_source { <0, 10, 3> color White spotlight radius 10 falloff 50 tightness 10 point_at <0, 0, 0> } /* // EIXOS CARTESIANOS union { // Eixo X - Vermelho cylinder { <0,0,0>, <5,0,0>, 0.2 pigment { color rgb <1,0,0> } } // Eixo Y - Verde cylinder { <0,0,0>, <0,5,0>, 0.2 pigment { color rgb <0,1,0> } } // Eixo Z - Azul cylinder { <0,0,0>, <0,0,5>, 0.2 pigment { color rgb <0,0,1> } } } */ //CEU E TERRA background{ color rgb < 0, 0, 1 > } sky_sphere { pigment { bozo turbulence 0.65 octaves 6 omega 0.7 lambda 2 color_map { [0.0 0.1 color rgb <0.85, 0.85, 0.85> color rgb <0.75, 0.75, 0.75>] [0.1 0.5 color rgb <0.75, 0.75, 0.75> color rgbt <1, 1, 1, 1>] [0.5 1.0 color rgbt <1, 1, 1, 1> color rgbt <1, 1, 1, 1>] } scale <0.2, 0.5, 0.2> } rotate -135*x } plane { y, 0 texture { pigment { color Green } normal { bumps 0.9 scale 0.1 } } } //PALCO CENTRAL #declare pedaco_palco = box { < -0.75 , 0 , 2 >, < 0.75 , 0.25 , -2 > pigment { color rgb < 1, 1 , 1 > } } #declare palco_1 = union { object { pedaco_palco } object { pedaco_palco rotate < 0 , 45 , 0 > } object { pedaco_palco rotate < 0 , 90 , 0 > } object { pedaco_palco rotate < 0 , 135 , 0 > } } #declare pedaco_palco_2 = box { < -0.9375 , 0 , 2.5 >, < 0.9375 , 0.25 , -2.5 > pigment { color rgb < 1, 1 , 1 > } } #declare palco_2 = difference { union { object { pedaco_palco_2 } object { pedaco_palco_2 rotate < 0 , 45 , 0 > } object { pedaco_palco_2 rotate < 0 , 90 , 0 > } object { pedaco_palco_2 rotate < 0 , 135 , 0 > } } union { object { palco_1 } object { palco_1 rotate < 0 , 45 , 0> } } } #declare palco_3 = difference { object { palco_1 } union { object {palco_1 scale 0.8 } object {palco_1 scale 0.8 rotate < 0 , 45 , 0> } translate < 0 , 0.05 , 0 > } } object {palco_1} object {palco_2 translate <0, 0.25 ,0>} //ARQUIBANCADA #declare arq_frente = difference { difference { box { < 2.6 , 0 , -1 >, < 4.3 , 2.2 , 1 > pigment { color rgb < 1 , 1 , 1 > } } plane {< 1 , 0 , 0 >, -1 rotate < 0 , 0 , -40 > translate < 3.3 , -0.4 , 0 > pigment { color rgb < 1 , 1 , 1 > } } } box { < 3.7 , 2.2 , 0.2 > < 4.0 , 1.2 , -0.2 > } } #declare t_prata = texture { pigment { Silver } finish { ambient .1 diffuse .4 specular .3 roughness 0.001 reflection .3 metallic } } #declare arq_1 = union { object { arq_frente } difference { intersection { box { < 4.3 , 0 , -1 >, < 5.6 , 2.2 , 1 > pigment { color rgb < 1 , 1 , 1 > } } plane {< 1 , 0 , 0 >, -1 rotate < 0 , 0 , 45 > translate < 8.5 , 0 , 0 > pigment { color rgb < 1 , 1 , 1 > } } } box { < 4.5 , 0 , -1.1 > < 5.7 , 1.3 , 1.1 > } } } #declare pilastra = box { < 0 , 0 , -1 > < 0.2 , 2 , -1.2 > rotate < 0 , 0 , -40 > translate < 4 , 0 , 0 > pigment { color rgb < 1 , 1 , 1 > } } union { object {arq_1 rotate < 0 , 5 , 0 >} cylinder { < 5.2 , 0 , 1 > < 5.2 , 1.4, 1 > 0.1 pigment { color rgb < 1 , 1 , 1 > } } cylinder { < 5 , 0 , -1 > < 5 , 1.4, -1 > 0.1 pigment { color rgb < 1 , 1 , 1 > } } } union { object {arq_1 rotate < 0 , 100 , 0 >} object { pilastra rotate < 0 , 80 , 0 >} object { pilastra rotate < 0 , 90 , 0 >} } object {arq_1 rotate < 0 , 195 , 0 >} union { object {arq_1 rotate < 0 , 290 , 0 > } box { < 4.5 , 0 , -1 > < 5.7 , 1.3 , 1 > pigment { color rgb < 1 , 1 , 1 > } rotate < 0 , 290 , 0 > } } //TORRE DE ILUMINACAO #declare torre_1 = box { < 0.3 , 0 , 0.1 > < -0.3 , 3.9 , 0.25 > pigment { color rgb < 1 , 1 , 1 > } rotate < 0 , 0 , 36 > translate < 2.6 , 0 , 0 > } #declare torre_2 = object { torre_1 translate < 0 , 0 , -0.3 > } intersection { union { object{torre_1} object{torre_2} } plane { < 0 , 1 , 0 >, -1 texture { pigment { color Red } } translate < 0 , 3.85, 0 > } rotate < 0 , 35 , 0 > } //LUMINARIA difference { sphere { < 0, 2.4 , 0 > 0.4 pigment{ Silver } } plane { < 0 , 1 , 0 >, 1 pigment{ color rgb < 1.00, 0.90, 0.05 > } finish{ diffuse 0.05 ambient 0.05 reflection 0.50 } translate < 0 , 1.3 , 0 > } rotate < 0 , 35 , 0 > } //PISO TERREO #declare piso1 = box { < 3 , 0 , 3 > < -3 , 0.1 , -3 > pigment{ color rgb < 1.00, 0.90, 0.05 > } } #declare piso2 = box { < 2.4 , 0.1 , 2.4 > < -2.4 , 0.2 , -2.4 > pigment{ color rgb < 1.00, 0.90, 0.05 > } } object{ piso1 rotate < 0 , 15 , 0 >} object{ piso2 rotate < 0 , 26 , 0 >} object{ piso2 rotate < 0 , 10 , 0 >}