#declare rotation = clock;
// #declare rotation = -28;
#declare bounding_radius = 8;
#declare q = 0.1;
#declare q_plus_1 = q + 1;
#declare q_divide_q_plus_1 = q / q_plus_1;
#declare two_divide_q_plus_1 = 2 / q_plus_1;
union {
isosurface {
function {
y + (pow(x-q_divide_q_plus_1,2) + z*z + two_divide_q_plus_1 * (q / sqrt((x-1)*(x-1)+z*z) + 1 / sqrt(x*x + z*z)))
}
accuracy 0.001
max_gradient 200 // increase to reduce artifact in funnel
contained_by {sphere{0,bounding_radius}} open
pigment {
gradient <0,1,0>
color_map { [0.01 color rgb <0.5,0,0.75>][0.02 color rgb 1]
[0.18 color rgb 1][0.19 color rgb <0.75,0.5,1>][0.21 color rgb <0.75,0.5,1>][0.22 color rgb 1]
[0.38 color rgb 1][0.39 color rgb <0.75,0.5,1>][0.41 color rgb <0.75,0.5,1>][0.42 color rgb 1]
[0.58 color rgb 1][0.59 color rgb <0.75,0.5,1>][0.61 color rgb <0.75,0.5,1>][0.62 color rgb 1]
[0.78 color rgb 1][0.79 color rgb <0.75,0.5,1>][0.81 color rgb <0.75,0.5,1>][0.82 color rgb 1]
[0.98 color rgb 1][0.99 color rgb <0.75,0.5,1>] }
scale 0.5
translate <0,0.03,0>
}
scale <1,0.5,1>
translate <0,1.42,0>
}
union {
sphere {0,0.2 pigment {rgbt <1,1,0,0.5>} interior {ior 1} finish {specular 1 roughness 0.1} }
sphere {<1,0,0>,0.1 pigment {rgbt <0,0.5,1,0.5>} interior {ior 1} finish {specular 1 roughness 0.1} }
sphere {<q/2,0,0>,0.05 pigment {rgb <0.5,0,0>} }
union {
torus {1-q/2,0.02 translate <q/2,0,0>}
cylinder {<-0.95,0,0>,<1.35,0,0>,0.02}
cylinder {<q/2,0,0>,<0.5,0,0.866>,0.02}
cylinder {<q/2,0,0>,<0.5,0,-0.866>,0.02}
pigment {rgb <0,0.75,0>}
}
union {
union { sphere {0,0.05} cylinder {0,<0,-9,0>,0.02} text {ttf "arlrdbd.ttf" "L1" 0.2, -0.1 scale 0.4 translate <-0.15,0.05,-0.1> rotate <55,rotation,0> no_shadow} translate <0.72,0,0> }
union { sphere {0,0.05} cylinder {0,<0,-9,0>,0.02} text {ttf "arlrdbd.ttf" "L2" 0.2, -0.1 scale 0.4 translate <-0.15,0.05,-0.1> rotate <55,rotation,0> no_shadow} translate <1.35,0,0> }
union { sphere {0,0.05} cylinder {0,<0,-9,0>,0.02} text {ttf "arlrdbd.ttf" "L3" 0.2, -0.1 scale 0.4 translate <-0.15,0.05,-0.1> rotate <55,rotation,0> no_shadow} translate <-0.95,0,0> }
union { sphere {0,0.05} cylinder {0,<0,-9,0>,0.02} text {ttf "arlrdbd.ttf" "L4" 0.2, -0.1 scale 0.4 translate <-0.15,0.05,-0.1> rotate <55,rotation,0> no_shadow} translate <0.5,0,0.866> }
union { sphere {0,0.05} cylinder {0,<0,-9,0>,0.02} text {ttf "arlrdbd.ttf" "L5" 0.2, -0.1 scale 0.4 translate <-0.15,0.05,-0.1> rotate <55,rotation,0> no_shadow} translate <0.5,0,-0.866> }
pigment {rgb <1,0,0>}
}
}
translate <-q/2,-0.14,0>
rotate <0,-rotation,0>
}
sky_sphere {pigment {rgb 1}}
light_source {<0,1,0> color rgb 0.5 parallel point_at 0}
light_source {<0,10,-10> color rgb 1 shadowless}
camera {orthographic location <0.05,7.8,-10> look_at <0.05,-0.1,0> angle 13.8}