// POV-Ray 3.7 Scene File "povloopb.pov" // author: Friedrich A. Lohmueller,2004/Aug-2009 // homepage: www.f-lohmueller.de // #if (version < 3.7) global_settings{ assumed_gamma 1.0 } #end #default{ finish{ ambient 0.1 diffuse 0.9 }} // uses "axis_xyz.inc" #include "colors.inc" #include "textures.inc" //---------------------------------------------------------------------- // camera -------------------------------------------------------------- #declare Cam1 = camera {ultra_wide_angle angle 20 location < 5.0 , 6.0 ,-8.0> look_at < 0.5 , 0.4 , 0.0>} #declare Cam2 = camera {ultra_wide_angle angle 25 location <12.0 , 5.0 ,-5.0> look_at < 2.0 , 2.0 , 0.0>} camera{Cam1} // sun ----------------------------------------------------------------- light_source{<1800,2500,-2500> color White} //---------------------------------------------------------------------- // background ------------------------------- #declare Orange_Yellow = color rgb<1,0.70,0>; sphere{<0,0,0>,1 hollow texture{pigment{gradient <0,1,0> color_map{[0.0 color Orange_Yellow] [0.1 color Orange_Yellow] [0.5 color White] [0.9 color Orange_Yellow] [1.0 color Orange_Yellow]} quick_color White scale 2 translate<0,-1,0> } finish {ambient 1 diffuse 0} } scale 10000} // --------------------------------------------------------------------- #include "AxisXYZ.inc" #declare RED = texture{ pigment{ color rgb<0.85,0,0.20> } finish { phong 1}} #declare WHITE = texture{ pigment{ color rgb<1,1,1> } finish { phong 1}} object{ AxisXYZ (4.5, 3, 6.5, RED, WHITE)} //---------------------------------------------------------------------- #declare Ball = sphere {<0,0,0>,1.00 scale <1,1,1> translate<0,0,0> texture{ pigment{ color rgb<1,0.65,0.0>} finish { phong 1}}} #declare Radius0 = 3.5; #declare NR = 9;//number of revolutions #declare NpR = 50;//number of elements per revolution #declare Scale = 0.55; //per revolution #declare HpR = 0.00; //-------------------------------------------------- #local Hd = HpR/NpR; #local Scale_p = pow(Scale,1/360); #local Scale_pE = pow(Scale_p,360/NpR); #local Old_S = Scale_pE; #local Old_H = Hd; union{ #declare Nr = 0; // start #declare EndNr = NR*NpR; // end #while (Nr< EndNr) object{Ball translate scale Old_S translate<0,Old_H,0> rotate<0,Nr * 360/NpR ,0>} #declare Nr = Nr + 1; // next Nr #declare Old_S = Scale_pE*Old_S; #declare Old_H = Old_H+Hd*Old_S; #end // --------------- end of loop ----------------- rotate<0,0,0>} //------------------------------------------------------------- end