// Last edited on DATE TIME by USER // Processed by remove-cam-lights background{ color rgb < 0.75, 0.80, 0.85 > } #declare roleta = seed(321); #declare tx_grama = texture{ pigment{ color rgb < 0.15, 0.9, 0.15 > } finish{ diffuse 0.7 ambient 0.1 roughness 0.9 } } #declare tx_pele = texture{ pigment{ color rgb < 0.9, 0.8, 0.6 > } finish{ diffuse 0.8 ambient 0.1 roughness 0.5 } } #declare tx_calca = texture{ pigment{ color rgb < 0.45, 0.45, 0.65 > } finish{ diffuse 0.9 ambient 0.1 roughness 0.1 } } #declare tx_metal = texture{ pigment{ color rgb < 1.00, 0.10, 0.10 > } finish{ diffuse 0.7 ambient 0.1 specular 0.5 reflection 0.1 } } #declare tx_metal2 = texture{ pigment{ color rgb < 0.10, 0.10, 1.00 > } finish{ diffuse 0.7 ambient 0.1 specular 0.5 reflection 0.1 } } #declare tx_escada = texture{ pigment{ color rgb < 0.20, 0.20, 0.20 > } finish{ diffuse 0.7 ambient 0.1 } } #declare tx_farol = texture{ pigment{ color rgb < 0.85, 0.85, 0 > filter 0.30 } finish{ diffuse 0.03 reflection 0.25 ambient 0.7 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.0 } #declare raio = 2.000; #declare cadeira = intersection{ cylinder { < 0,0,0.2 >, < 0.05,0,0.2 >, 0.45 } box { < -0.01,-0.35,0 >, <0.6,0.35,1> } rotate <0,0,90> texture{ tx_metal } } #declare cabeca = sphere{ < 0,0,0.15 >, 0.15 texture{ tx_pele } } #declare corpo = cone{ < 0,0,0 >, 0.21, < 0,0,0.6 >, 0 } #declare pernas = cylinder{ < 0,0,0 >, < 0,0,0.5 >, 0.09 texture{ tx_calca } } #declare pessoa = union{ object { cabeca translate < 0,0,1.1> } object { corpo translate < 0,0,0.5 > texture{ tx_metal }} object { pernas } } #declare pessoa2 = union{ object { cabeca translate < 0,0,1.1> } object { corpo translate < 0,0,0.5 > texture{ tx_metal2 }} object { pernas } } #declare cadeira_pessoa = union{ object{ cadeira translate <0,0,0.1> } object{ pessoa translate <0,0.5,0.1> } object{ cadeira rotate <270,0,0> } } #declare cadeira_pessoa2 = union{ object{ cadeira translate <0,0,0.1> } object{ pessoa2 translate <0,0.5,0.1> } object{ cadeira rotate <270,0,0> } } #declare cadeira_vazia = union{ object{ cadeira translate <0,0,0.1> } object{ cadeira rotate <270,0,0> } } #macro arquibancada(largura, nEscadas, nAndares) #declare largSecao = (largura)/(nEscadas+1); #declare nCadeiras = div((largSecao-1),0.8); union{ #declare largDegrau = 1.0; #declare i = 0; #while (i < nAndares) #declare j = 0; #while (j<(nAndares - i)) #declare k = 0; #while (k < (nEscadas)) box { < k*largSecao, 0 + j*largDegrau , largDegrau*i >, < (k+1)*largSecao-1 , (j+1)*largDegrau, largDegrau*(i+1) > texture { tx_pele } } #if (j = (nAndares - i - 1)) #declare l = 0; #while (l < nCadeiras) #if (rand(roleta) < 0.35) object { cadeira_pessoa translate < k*largSecao+0.8*(l+1)-0.4 , (j+0.5)*largDegrau, largDegrau*(i+1)+0.1> } #else #if (rand(roleta) < 0.55) object { cadeira_pessoa2 translate < k*largSecao+0.8*(l+1)-0.4 , (j+0.5)*largDegrau, largDegrau*(i+1)+0.1> } #else object { cadeira_vazia translate < k*largSecao+0.8*(l+1)-0.4 , (j+0.5)*largDegrau, largDegrau*(i+1)+0.1> } #end #end #declare l = l+1; #end #end box { < (k+1)*largSecao-1 , 0 + j*largDegrau , largDegrau*i >, < (k+1)*largSecao , (j+1)*largDegrau, largDegrau*(i+1) > texture { tx_escada } } #declare k = k + 1; #end #if (j = (nAndares - i - 1)) #declare l = 0; #while (l < nCadeiras) #if (rand(roleta) < 0.30) object { cadeira_pessoa translate < k*largSecao+0.8*(l+1)-0.4 , (j+0.5)*largDegrau, largDegrau*(i+1)+0.1> } #else #if (rand(roleta) < 0.50) object { cadeira_pessoa2 translate < k*largSecao+0.8*(l+1)-0.4 , (j+0.5)*largDegrau, largDegrau*(i+1)+0.1> } #else object { cadeira_vazia translate < k*largSecao+0.8*(l+1)-0.4 , (j+0.5)*largDegrau, largDegrau*(i+1)+0.1> } #end #end #declare l = l+1; #end #end box { < k*largSecao , 0 + j*largDegrau , largDegrau*i >, < (k+1)*largSecao , (j+1)*largDegrau, largDegrau*(i+1) > texture { tx_pele } } #declare j = j + 1; #end #declare i = i + 1; #end } #end #declare campo = box{ <0,0,-1>, <20,10,0.05> } #declare chao = box{ <-20,-20,-1>, <+20,+20,0> } #include "eixos.inc" union{ object{ chao texture{ tx_xadrez } } object{ campo texture{ tx_grama } translate <-10,-5,0> } object{ arquibancada(20,2,7) translate <-10,-5-7,0> } object{ arquibancada(20,4,7) translate <-10,-5-7,0> rotate <0,0,180> } object{ arquibancada(10,2,7) rotate <0,0,90> translate <10+7,-5,0> } object{ arquibancada(10,3,7) rotate <0,0,90> translate <10+7,-5,0> rotate <0,0,180> } } #include "camlight.inc" #declare centro_cena = < 0.00, 0.00, 1.00 >; #declare raio_cena = 20.0; #declare dir_camera = < -4.0, -4.0, 3.00 >; #declare dist_camera = 30.0; #declare intens_luz = 1.30; camlight(centro_cena, raio_cena, dir_camera, dist_camera , z, intens_luz)