// Last edited on 2005-01-06 01:43:32 by stolfi // Processed by remove-cam-lights #declare g = seed(23423); background{ color rgb < 0.75, 0.80, 0.85 > } #declare raio = 2.000; #declare cor_predio = texture { pigment { color rgb < 0.92, 0.92, 0.92 > } finish { diffuse 0.8 specular 0.2 roughness 0.005 ambient 0.1 } } #declare cor_entrada = texture { pigment { color rgb < 0.90, 0.99, 0.99 > } finish { diffuse 0.8 specular 0.2 roughness 0.005 ambient 0.1 } } #declare cor_semiEsfs = texture { pigment { color rgb < 0.95, 0.95, 0.1 > } finish { diffuse 0.8 specular 0.2 roughness 0.005 ambient 0.1 } } declare caixaCorte = box { <-40, -40, -40>, <40, 0, 40> } #declare semiEsf1 = object { difference { sphere { <0,0,0>, 20 } object { caixaCorte translate <0, 10, 0> } translate <-60, 10, 0> } } #declare semiEsf2 = object { difference { sphere { <0,0,0>, 20 } object { caixaCorte translate <0, 30, 0> } translate <60, 37, 0> } } #declare baseEntrada = object { difference { sphere { <0,0,0>, 20 } object {caixaCorte} } translate <0, 0, 25> } declare entrada = object { difference { object {baseEntrada} box {<-10, 0, 20>, <10, 8, 100>} } } #declare andar = box { <-30,0,-25>, <30,10,25> } #declare seisJanelas = union { #declare i = 0; #while (i < 6) box { <-27.5 + i * 10, 2.5, -30>, <-22.5 + i * 10, 7.5, 30> } #declare i = i + 1; #end } #declare cincoJanelas = union { #declare i = 0; #while (i < 5) box { <-32, 2.5, -22.5 + i * 10>, <32, 7.5, -17.5 + i * 10> } #declare i = i + 1; #end } #declare andarNormal = difference { object {andar} object {cincoJanelas} object {seisJanelas} } #declare predioEsquerdo = union { #declare i = 0; #while (i < 2) object { andarNormal translate <-60, i * 10, 0> } #declare i = i + 1; #end } #declare predioDireito = union { #declare i = 0; #while (i < 2) object { andarNormal translate <60, i * 10, 0> } #declare i = i + 1; #end } #declare predioCentral = union { #declare i = 0; #while (i < 6) object { andarNormal translate <0, i * 10, 0> } #declare i = i + 1; #end } #declare bolinhas = object { union { #declare i = 1; #declare ang = (2 * 3.141592) / 12; #declare angAt = -3.141592 / 2; #while (i <= 12) #if ((i > 1) & (i < 7)) sphere { <15 * sin(angAt), 12, 15 * cos(angAt)>, 2 texture { pigment { color rgb < rand(g), rand(g), rand(g) > } finish { diffuse 0.8 specular 0.2 roughness 0.005 ambient 0.1 } } } #end #declare i = i + 1; #declare angAt = angAt + ang; #end } translate <0, 0, 25> } plane {y, 0 texture { pigment{checker <0.2,0.2,0.2>,<0.3,0.3,0.3>} finish {ambient 01 diffuse 0.9} scale 30.0 } } object { union { union { object {predioEsquerdo} object {predioDireito} object {predioCentral} texture { cor_predio } } union { object {semiEsf1} object {semiEsf2} texture { cor_semiEsfs } } object { entrada texture { cor_entrada } } object {bolinhas} } } #include "camlight.inc" camlight(<0,20,0>,<110,60,200>,1.05,y,1.0)