// EAT / A Edge Collapsing '03.02 // by Tsutomu HIGO E-mail: nj2t-hg@asahi-net.or.jp #version 3.5; global_settings { max_trace_level 4 assumed_gamma 2.2 } camera { location <0, 18, -26> angle 90 look_at <5, 5, 0.5> } #declare R1 = seed(7); #declare Media = media { emission 0.05 intervals 40 samples 1, 50 confidence 0.9999 variance 1/100 density { spherical turbulence 0.7 color_map { [0.0 color rgbt <0, 0, 0, 1>] [0.1 color rgbt <0.2, 0, 1, 0.9>] [1 color rgb <1, 1, 1>] } scale 25 } } #declare R1 = seed(7); #macro Meshsquare(Pmaxx, Pmaxy, Pmaxz, Rrand, Rsize, X0, Y0, Z0, Tm) #declare Cp = array[Pmaxx][Pmaxy][Pmaxz][3] #declare Xp = 0; #while (Xp < Pmaxx) #declare Yp = 0; #while (Yp < Pmaxy) #declare Zp = 0; #while (Zp < Pmaxz) #declare Cp[Xp][Yp][Zp][0] = Xp/Pmaxx-0.5; #declare Cp[Xp][Yp][Zp][1] = 0-Yp/Pmaxx; #declare Cp[Xp][Yp][Zp][2] = Zp/Pmaxx; #declare Zp = Zp+1; #end #declare Yp = Yp+1; #end #declare Xp = Xp+1; #end union { #declare Xp = 0; #while (Xp < Pmaxx) #declare Yp = 0; #while (Yp < Pmaxy) #declare Zp = 0; #while (Zp < Pmaxz) #if (-0.1/(pow(Cp[Xp][Yp][Zp][0], 2)+pow(Cp[Xp][Yp][Zp][2], 2)+0.16)+0.28+0.15*rand(R1) > Cp[Xp][Yp][Zp][1]) sphere { Rsize/Pmaxx*2} #else #if (0.988 < rand(R1)) #declare Ts = rand(R1)+0.001; sphere { Rsize/Pmaxx*2} #end #end #declare Zp = Zp+1; #end #declare Yp = Yp+1; #end #declare Xp = Xp+1; #end pigment {color rgb <1, 1, 1>} finish { reflection 0.6 phong 1 brilliance 0.2 ambient 0.3 } no_shadow translate <0.5/Pmaxx, 0.5/Pmaxx, 0> scale 60 rotate y*110 } #end union { sphere { 0, 1000 pigment { color rgbf<1, 1, 1, 1> } finish { ambient 0 diffuse 0 } interior { media {Media}} hollow rotate z*150 } object {Meshsquare (80, 40, 38, 0.8, 0.25, 0, -0.3, 0.3, 1.2) translate y*4} translate y*1 rotate y*90 }