// Last edited on DATE TIME by USER // Processed by remove-cam-lights background { color rgb < 1,1,1 > } #declare tx_camara = texture { pigment { color rgb < 1,0,0 > } finish{ ambient 1 } } #declare tx_tunel = texture { pigment { color rgb < 0,0,0 > } finish { diffuse 1 } } #declare n_camaras = 50; #declare n_tuneis = 50; #declare camara = sphere { < 0.00, 0.00, 0.00 >, 2 texture{ tx_camara } } #macro gerarRede(n_camaras, n_tuneis) #declare aleatorio = seed(1153); #declare pos_camara = array[n_camaras]; #for (i, 0, n_camaras-1) #declare tamanho = 3*rand(aleatorio); #while (tamanho < 1) #declare tamanho = 3*rand(aleatorio); #end #declare pos_camara[i] = <4*n_camaras*rand(aleatorio), 4*n_camaras*rand(aleatorio), 2*n_camaras*rand(aleatorio)>; object { camara scale tamanho translate pos_camara[i] } #end object { cylinder {pos_camara[0], < pos_camara[0].x, pos_camara[0].y, pos_camara[0].z+n_camaras >, 1 } texture { tx_tunel } } #for (i, 0, n_tuneis-1) #declare camara1 = 0; #declare camara2 = 0; #while (camara1 = camara2) #declare camara1 = int(rand(aleatorio)*n_camaras); #declare camara2 = int(rand(aleatorio)*n_camaras); #end #declare tamanho = rand(aleatorio); #while (tamanho < 0.2) #declare tamanho = rand(aleatorio); #end #declare tunel = cylinder { pos_camara[camara1], pos_camara[camara2], tamanho texture { tx_tunel } } object { tunel } #end #end gerarRede(n_camaras, n_tuneis) #include "camlight.inc" #declare centro_cena = < 2*n_camaras, 2*n_camaras, n_camaras >; #declare raio_cena = 3*n_camaras; #declare dir_camera = < 14.00, 7.00, 8.00 >; #declare dist_camera = 4*raio_cena; #declare intens_luz = 1.50; camlight(centro_cena, raio_cena, dir_camera, dist_camera , z, intens_luz)