// Last edited on DATE TIME by USER // Processed by remove-cam-lights #include "eixos.inc" #include "camlight.inc" #declare centro_cena = < 0.00, 0.00, 0.00 >; #declare raio_cena = 10.0; #declare dir_camera = < 14.00, 7.00, 4.00 >; #declare dist_camera = 16.0; #declare intens_luz = 1.00; camlight(centro_cena, raio_cena, dir_camera, dist_camera , z, intens_luz) background{ color rgb < 1, 1, 1 > } #declare Azul = texture{ pigment{ color rgb < 0.00, 0.00, 1.00 > } } #declare Vermelho = texture{ pigment{ color rgb < 1.00, 0.00, 0.00 > } } #declare Verde = texture{ pigment { color rgb <0.00, 1.00, 0.00> } } #declare member = cylinder{ <0, 0, 0>, <0, 0, 0.5>, 0.1 } #macro Pessoa(tx_pessoa) union{ cone{ <0, 0, 0>, 0.5, <0, 0, 1>, 0.2 } sphere{ <0, 0, 1.5 >, 0.5 } object { member translate <0, -0.25, -0.5> } object { member translate <0, +0.25, -0.5> } object { member rotate 90*x translate <0, 0.7, 0.5> } object { member rotate 90*x translate <0, -0.2, 0.5> } scale 0.4 translate <0, 0, 0.8> texture {tx_pessoa} } #end #macro Escada(degraus, txt_escada) union{ #declare x1 = 1.5; #declare x2 = 0; #declare z1 = 0; #declare z2 = -0.5; #declare i = 0; #while(i < degraus) #declare x1 = x1 - 1.5; #declare x2 = x2 - 1.5; #declare z1 = z1 + 0.5; #declare z2 = z2 + 0.5; box{ , texture{ txt_escada } } #declare i = i + 1; #end } #end #macro Arquibancada(fileiras, txt_arq, largura, cadeiras) union{ #declare x1 = 1.5; #declare x2 = 0; #declare z1 = 0; #declare z2 = -0.5; #declare xc = 0.5; #declare zc = 0; #declare i = 0; #declare roleta = seed(315); #while(i < fileiras) #declare j = 0; #declare x1 = x1 - 1.5; #declare x2 = x2 - 1.5; #declare z1 = z1 + 0.5; #declare z2 = z2 + 0.5; box{ , texture{ txt_arq } } #declare i = i + 1; #declare yc = -3.25-largura; #declare xc = xc - 1.5; #declare zc = zc + 0.5; #while(j < cadeiras) #declare yc = yc + 1.75; object{ Cadeira(xc, yc, zc) } #if (rand(roleta) < 0.5) object { Pessoa( #if(rand(roleta)< 0.5) Vermelho #else Verde #end) translate } #end #declare j = j + 1; #end #end } #end #macro Cadeira(x0, y0, z0) union{ cylinder{ , , 0.15 } cylinder{ , , 0.15 } cylinder{ , , 0.15 } cylinder{ , , 0.15 } box{ , } pigment { color rgb <0.5, 0.5, 0.5> } } #end union{ object{ Escada(7, Vermelho) translate <-7, 0, 2.5>} object{ Arquibancada(5, Azul, 0.5, 3) translate <-7, 3.5, 2.5> } object{ Arquibancada(5, Azul, 0.5, 3) translate <-7, -3.5, 2.5> } object{ Arquibancada(5, Verde, 4, 7) } object { eixos(5.0) } }