// PERSISTENCE OF VISION 3.1 SCENE FILE // // Sample Arabeske "expert" POV-Ray export wrapper. // Golden rods, works with any p4* "final" mode export. #include "metals.inc" #include "colors.inc" camera { up y right x location <10, 10, -20> look_at <0, 0, 0> angle 5 } light_source{ <-1, -2, -5> rgb 1.5 } // First mandatory macro, draws a polygon. // Caution: the "A" array is a prism-style list of vertices, // with excluded polygons following the main one when necessary. #macro AraUserPolygon(A, index) prism{ -1, 0, dimension_size(A, 1) #local i=0; #while (i, }} rotate -90*x } #end // Second macro, mandatory for "final" mode exports. // It just draws segments, using AraUserSegmentThickness/2 as radius. // If necessary, the related colour is AraColors[1]. #macro AraUserSegment(Origin, End) union{ cylinder{Origin, End, AraUserSegmentThickness/2} sphere{Origin, AraUserSegmentThickness/2} sphere{End, AraUserSegmentThickness/2} clipped_by{box{, }} rotate -90*x //pigment {rgb AraColors[1]} texture{T_Gold_1E} } #end // Added for 1.1.10 Bézier lines output // There is no support for plain Bézier cubic sphere_sweeps, so we'll use ours. // Decrease Step for greater precision. #macro AraUserBezierCurve(Origin, Ctrl1, Ctrl2, End) #local Step = 1/25; union{ sphere{Origin, AraUserSegmentThickness/2} #local Pp = Origin; #local T=Step; #while (T <= 1+Step/2) #local U = 1-T; #local P = U*U*U*Origin + 3*U*U*T*Ctrl1 + 3*U*T*T*Ctrl2 + T*T*T*End; cylinder{Pp, P, AraUserSegmentThickness/2} sphere {P, AraUserSegmentThickness/2} #local Pp = P; #local T = T+Step; #end clipped_by{box{, }} rotate -90*x //pigment {rgb AraColors[1]} texture{T_Gold_1E} } #end // Added for 1.1.10 Bézier prisms output #macro AraUserBezierPolygon(A, index) #local N = dimension_size(A, 1); prism{ linear_sweep bezier_spline -1, 0, N*2 #local i=0; #while (i, }} rotate -90*x } #end #include "expert.pov" sphere{ 0, 100000 hollow #local OM=0.95; #local LA = 0.03; #local FI = 0.75; texture{ pigment { bozo octaves 8 lambda LA omega OM color_map{ [0.0 White*1] [1.0 White*FI] } turbulence .5 scale 1000 } finish {ambient 1 diffuse 0} } texture{ pigment { bozo octaves 8 lambda LA omega OM color_map{ [0.0 rgbf <1, 1, 1, 1>*1] [1.0 rgbf <1, 1, 1, 1>*FI] } turbulence .5 scale 300 } finish {ambient 1 diffuse 0} } texture{ pigment { bozo octaves 8 lambda LA omega OM color_map{ [0.0 rgbf <1, 1, 1, 1>*1] [1.0 rgbf <1, 1, 1, 1>*FI] } turbulence .5 scale 100 } finish {ambient 1 diffuse 0} } texture{ pigment { gradient y octaves 8 lambda LA omega OM color_map{ [0.0 rgbt <1, 1, 1, .3>] [0.5 rgbt <1, 1, 1, 1>] } turbulence .03 translate -.03*y scale 50000 } finish {ambient 1 diffuse 0} } }