// MC930: Projeto Final - 14/12/2000 #include "textures.inc" #include "colors.inc" #include "finish.inc" background { color rgb < 1.00, 1.00, 0.80 > } //plano que da a impressao do ceu plane { y, 500 texture { pigment { color rgb <0.22, 0.3, 0.82> } finish { ambient 1 diffuse 0} } texture { pigment { bozo turbulence .5 color_map { [0 color rgb <1, 1, 1>] [1 color rgb <1, 1, 1> filter 1] } } finish { ambient 1 diffuse 0 } scale <1000, 250, 250> rotate <5, 45, 0> } } light_source { < 20.00, 30.00, 50.00 > color rgb 3* < 1.00, 1.00, 1.00 > } camera { location < 20.00, 30.00, 50.00 > right < 2.40, 0.00, 0.00 > up < 0.00, 0.00, 1.80 > sky < 0.00, 1.00, 0.00 > look_at < 10.00, 30.00, 30.00 > } #declare tinta_AMAR = texture { pigment { color rgb < 1.00, 1.00, 0.00 > } finish { diffuse 0.5 specular 0.5 roughness 0.005 ambient 0.1 } } #declare tinta_AZUL = texture { pigment { color rgb < 0.00, 0.00, 1.00 > } finish { diffuse 0.5 specular 0.5 roughness 0.005 ambient 0.1 } } #declare tinta_VERD = texture { pigment { color rgb < 0.00, 0.50, 0.00 > } finish { diffuse 0.5 specular 0.5 roughness 0.005 ambient 0.1 } } #declare tinta_MARR = texture { pigment { color rgb < 0.25, 0.25, 0.00 > } finish { diffuse 0.5 specular 0.5 roughness 0.005 ambient 0.1 } } #declare tinta_MARR2 = texture { pigment { color rgb < 0.10, 0.10, 0.05 > } finish { diffuse 0.5 specular 0.5 roughness 0.005 ambient 0.1 } } #declare tinta_BRAN = texture { pigment { color rgb < 1.00, 1.00, 1.00 > } finish { diffuse 0.5 specular 0.5 roughness 0.005 ambient 0.1 } } #declare tinta_PRET = texture { pigment { color rgb < 0.00, 0.00, 0.00 > } finish { diffuse 0.5 specular 0.5 roughness 0.005 ambient 0.1 } } #declare tinta_VIDR = texture { Glass } #declare chao = plane { y, 0 pigment {color rgb <0.90, 0.90, 0.90>} } #declare terreo = union { // terreno box { < -15, 0, -15>, < 15, 0.5, 15> texture { tinta_VERD } } // terreo box { < -11.5, 0.5, -11.5>, < 11.5, 10, 11.5> texture { tinta_BRAN } } // primeira laje box { < -11.5, 10, -11.5>, < 11.5, 11, 11.5> texture { tinta_MARR } } // porta box { < -1.5, 0.5, -2.5>, < 1.5, 3, 11.7> texture { tinta_MARR } } } #declare i = 1; #declare g = seed(pi); #declare andares = union { #declare n_and = rand(g) * 30; #while (i < n_and + 1) box { < -10, 5.43 + 5*i, -10>, < 10, 5.57 + 5*i, 10> texture { tinta_MARR } } box { < -10, 2.68 + 5*i, -10>, < 10, 2.82 + 5*i, 10> texture { tinta_MARR } } box { < -10.5, 47.68, -10.5>, < 10.5, 47.82, 10.5> texture { tinta_MARR } } // paredes de frente box { < -11.5, 5 + 5*i, 10.2>, < -10.5, 10 + 5*i, 11.0> texture { tinta_MARR } } box { < -5.5, 5 + 5*i, 10.2>, < -4.5, 10 + 5*i, 11.0> texture { tinta_MARR } } box { < -0.5, 5 + 5*i, 10.2>, < 0.5, 10 + 5*i, 11.0> texture { tinta_MARR } } box { < 4.5, 5 + 5*i, 10.2>, < 5.5, 10 + 5*i, 11.0> texture { tinta_MARR } } box { < 10.5, 5 + 5*i, 10.2>, < 11.5, 10 + 5*i, 11.0> texture { tinta_MARR } } // janelas de frente box { < -10.5, 5 + 5*i, 9.5>, < -5.5, 10 + 5*i, 10.5> texture { tinta_VIDR } } box { < -4.5, 5 + 5*i, 9.5>, < -0.5, 10 + 5*i, 10.5> texture { tinta_VIDR } } box { < 0.5, 5 + 5*i, 9.5>, < 4.5, 10 + 5*i, 10.5> texture { tinta_VIDR } } box { < 5.5, 5 + 5*i, 9.5>, < 10.5, 10 + 5*i, 10.5> texture { tinta_VIDR } } // paredes de fundo box { < -11.5, 5 + 5*i, -10.2>, < -10.5, 10 + 5*i, -11.0> texture { tinta_MARR } } box { < -5.5, 5 + 5*i, -10.2>, < -4.5, 10 + 5*i, -11.0> texture { tinta_MARR } } box { < -0.5, 5 + 5*i, -10.2>, < 0.5, 10 + 5*i, -11.0> texture { tinta_MARR } } box { < 4.5, 5 + 5*i, -10.2>, < 5.5, 10 + 5*i, -11.0> texture { tinta_MARR } } box { < 10.5, 5 + 5*i, -10.2>, < 11.5, 10 + 5*i, -11.0> texture { tinta_MARR } } // janelas de fundo box { < -10.5, 5 + 5*i, -9.5>, < -5.5, 10 + 5*i, -10.5> texture { tinta_VIDR } } box { < -4.5, 5 + 5*i, -9.5>, < -0.5, 10 + 5*i, -10.5> texture { tinta_VIDR } } box { < 0.5, 5 + 5*i, -9.5>, < 4.5, 10 + 5*i, -10.5> texture { tinta_VIDR } } box { < 5.5, 5 + 5*i, -9.5>, < 10.5, 10 + 5*i, -10.5> texture { tinta_VIDR } } #declare i = i + 1; #end #declare i = 1; } // janelas direitas box { < 10.5, 10, 10.5>, < 11.5, 50, -11.5> texture { tinta_MARR } } // janelas esquerdas box { < -10.5, 10, 10.5>, < -11.5, 50, -11.5> texture { tinta_MARR } } // miolo do predio box { < -10, 5, -10>, < 10, 50, 10> texture { tinta_MARR2 } } // laje da cobertura box { < -11.5, 50, -11.5>, < 11.5, 51, 11.5> texture { tinta_MARR } } // cobertura box { < -11.5, 53, -11.5>, < 11.5, 54, 11.5> texture { tinta_MARR } } box { < -11.5, 50, 10.2>, < -10.5, 54.5, 11.0> texture { tinta_MARR } } box { < -5.5, 50, 10.2>, < -4.5, 54.5, 11.0> texture { tinta_MARR } } box { < -0.5, 50, 10.2>, < 0.5, 54.5, 11.0> texture { tinta_MARR } } box { < 4.5, 50, 10.2>, < 5.5, 54.5, 11.0> texture { tinta_MARR } } box { < 10.5, 50, 10.2>, < 11.5, 54.5, 11.0> texture { tinta_MARR } } box { < -11.5, 50, -10.2>, < -10.5, 54.5, -11.0> texture { tinta_MARR } } box { < -5.5, 50, -10.2>, < -4.5, 54.5, -11.0> texture { tinta_MARR } } box { < -0.5, 50, -10.2>, < 0.5, 54.5, -11.0> texture { tinta_MARR } } box { < 4.5, 50, -10.2>, < 5.5, 54.5, -11.0> texture { tinta_MARR } } #declare triangulo = prism { linear_sweep linear_spline 37, // sweep the following shape from here ... 60, // ... up through here 3, // the number of points making up the shape ... <-11.5,11.5>, <0,6>, <11.5,11.5> texture { tinta_MARR } } #declare furo = cylinder { < 0, 56.7, -12>, < 0, 56.7, 12>, 1.5 texture { tinta_VIDR } } #declare predio = union { object { terreo } object { andares } } #declare vazio = box { < -7.5, 0, -7.5>, < 7.5, 0.5, 7.5> texture { tinta_VERD } } // Cena Final object { chao } object { predio } difference { object { triangulo translate <0,-60,-11.5> rotate <90,0,0> translate <0,54.5,11.5>} object { furo }}