#version 3.7; global_settings{ assumed_gamma 1.0 } #include "colors.inc" camera { location 10*z+5*y+5*x up image_height*y right image_width*x direction z angle 36 look_at 0 } sphere { 0, 0.1 texture { pigment { White } } } sphere { y, 0.1 texture { pigment { Green } } } cylinder { -2*y, 2*y, 0.01 texture{ pigment { Green } } } sphere { z, 0.1 texture { pigment { Blue } } } cylinder { -2*z, 2*z, 0.01 texture{ pigment { Blue } } } sphere { x, 0.1 texture { pigment { Red } } } cylinder { -2*x, 2*x, 0.01 texture{ pigment { Red } } } light_source { <40,80,40>, 1 } #declare Start=0; #declare Stop = 2*pi; #declare Step = (Stop-Start)/120; #declare SU=function{ spline{ natural_spline #for(thisTime, Start, Stop, Step) thisTime, < cos(thisTime) + 2*cos(2*thisTime), sin(thisTime)-2*sin(2*thisTime), 2*sin(3*thisTime)> #end } } #declare SV=function{ spline{ natural_spline #for(thisTime, Start, Stop, Step) thisTime, vnormalize( < cos(thisTime) + 2*cos(2*thisTime), sin(thisTime)-2*sin(2*thisTime), 2*sin(3*thisTime)> ) #end } } parametric { function { SU(u).x+SV(u).x*(v-0.5)/2 } function { SU(u).y+SV(u).y*(v-0.5)/2 } function { SU(u).z+SV(u).z*(v-0.5)/2 } , contained_by { sphere { 0, 5 } } precompute 10 x,y,z uv_mapping texture { pigment { checker color srgb <1,1,0> color srgb <0,1,1> scale } } }