#version 3.7; #global_settings{ max_trace_level 10 assumed_gamma 1.0 } #include "finish.inc" camera { location -10*z direction z up 3*y right 3*4*x/3 angle 40 } #declare V = 1.25; #declare W = 0.5; #macro PA(A, B) nurbs{ 6,3 accuracy 0.000001 <1,0,2,1> <1,0,1,1> V*<1,0,0,1/V> <1/2,0,-2,1> <1,1,2,0.707> <1,1,1,0.707> V*<1,1,0,0.707/V> <1/4,1/4,-2,1> <0,1,2,1> <0,1,1,1> V*<0,1,0,1/V> <0,W*1/2,-1/2,1/W> <0,W*1/2,-7/6,1/W> <0,1/2,-2,1> texture { pigment { uv_mapping checker pigment{ color B transmit 0.0 filter 0 } pigment{ color srgb 0.5 transmit 0.0 filter 0 } scale <1/28,1/8,1> } finish { Dull } } rotate A*z rotate clock*y } #end union{ PA(20, srgb <0.1,0.9,0.5>) PA(110,srgb <0.1,0.5,0.9>) PA(200, srgb <0.5,0.9,0.1>) PA(-70, srgb <0.9,0.1,0.5>) cylinder { 2.3*z, 2.7*z,1-0.01 texture { pigment { color srgb <0.9,0.5,0.1> }finish { Shiny } } rotate clock*y } box { <-0.7/2,-0.7/2,-0.2>,<0.7/2,0.7/2,0.2> texture { pigment { color srgb <0.5,0.1,0.9> }finish { Shiny } } rotate 65*z translate -2.3*z rotate clock*y } rotate 45*y } light_source { 10*y-10*x, 1 } light_source { 10*y-10*z, 2/3 } light_source { 10*y, 1/3 } light_source { -10*z, 1/3 }