#include "T_arkonstahl.pov" #include "T_BlackMetal.pov" #include "hufeisenpult.pov" // Leitungsbündel aus 3^lv Leitungen mit Durchmesser r2. // 45°-Bogen um <+r1,h,0> #macro lb(h,r1, r2, lv) intersection { torus { r1, r2 } plane { <-1, 0, 0> 0 rotate <0, 0, 0> } plane { <0, 0, -1> 0 rotate <0, 22.5-(lv-1), 0> } plane { <0, 0, +1> 0 rotate <0, -(22.5-(lv-1)), 0> } pigment {color <0.99/lv, 0.1, 0.5/lv>} finish {phong 1.0} translate <0, h, 0> } #if (lv > 1) lb(h+0.55*r2, r1, r2*0.4, lv-1) lb(h-0.55*r2*sin(radians(30)), r1-0.55*r2*cos(radians(30)), r2*0.4, lv-1) lb(h-0.55*r2*sin(radians(30)), r1+0.55*r2*cos(radians(30)), r2*0.4, lv-1) #end #end #declare polgeschuetz = union { union { cylinder { <0, 45.2, 0> <0, 46.2, 0>, 4.5 } cone { <0, 46.2, 0>, 4.5 <0, 47.7, 0>, 4.9 } pigment { radial color_map{ [0.1 rgb 0.1 ] [0.1 White] } frequency 16 } } cylinder { <0, 47.7, 0> <0, 50.0, 0>, 5 texture { T_BlackMetal } } difference { sphere { <0, 0, 0>, 4.8 } merge { box { <0, +0.3, -0.6> <5, 5, +0.6> } cylinder { <0, 0, 0> <0, 5, 0> 0.6 } cylinder { <0, +0.3, 0> <5, +0.3, 0> 0.6 } intersection { difference { cylinder { <0, 0, -1.0> <0, 0, +1.0> 5.0 } cylinder { <0, 0, -1.1> <0, 0, +1.1> 4.5 } } box { <-1.0, 0.0, -1.1> <+5.0, 5.0, +1.1> } } cylinder { <0, -0.3, 0> <5, -0.3, 0> 0.4 } rotate <0, 0, 10> rotate <0, +90, 0> } texture { T_arkonstahl } translate <0, 50, 0> } union { union { difference { union { cone { <0, 0.3, 0>, 0.6, <0, 0.3, 10>, 0.5 } cone { <0, 0.3, 10> 0.5 <0, 0.3, 9> 0.6 } cone { <0, 0.3, 8.5> 0.5 <0, 0.3, 9> 0.6 } } cone { <0, 0.3, 0>, 0.4, <0, 0.3, 10.1>, 0.4 texture { pigment { color rgb 0.1 } } } } difference { cone { <0, -0.3, 0>, 0.4, <0, -0.3, 8>, 0.4 } cone { <0, 0, 0>, 0.6, <0, 0, 1>, 0.6 rotate <45, 0, 0> translate <0, -0.3, 8> } } texture { pigment {color <0.7, 0.7, 1.0>} finish {phong 1.0} } } #declare i=5.5; #while (i < 8.5) torus { 0.5, 0.09 rotate <90, 0, 0> translate <0, 0.3, i> texture { T_BlackMetal } } #declare i = i + 0.2; #end superellipsoid { <0.25, 0.25> scale <1, 0.5, 0.5> translate <0, 0.5, 5> texture { pigment {color <0.7, 0.7, 1.0>} finish {phong 1.0} } } superellipsoid { <0.25, 0.25> scale <0.5, 0.5, 0.2> translate <0.9, 0.7, 5.5> texture { pigment {color <0.7, 0.7, 1.0>} finish {phong 1.0} } } superellipsoid { <0.25, 0.25> scale <0.5, 0.5, 0.2> translate <-0.9, 0.7, 5.5> texture { pigment {color <0.7, 0.7, 1.0>} finish {phong 1.0} } } superellipsoid { <0.25, 0.25> scale <0.4, 0.4, 0.1> translate <0.9, 0.7, 5.7> texture { pigment {color <0.3, 0.1, 0.2>} finish {phong 1.0} } } superellipsoid { <0.25, 0.25> scale <0.4, 0.4, 0.1> translate <-0.9, 0.7, 5.7> texture { pigment {color <0.3, 0.1, 0.2>} finish {phong 1.0} } } rotate <0, 180, 0> rotate <45, 0, 0> translate <0, 50, 0> } object { hufeisenpult translate <-5.3, 0, 0> rotate <0, -90, 0> translate <0, 45.2, 0> } #local ii = 0; #while (ii < 6) union { torus { 0.2 0.1 rotate <0, 0, 90> translate <4.5, 45.5, 0> } cylinder { <4.5, 45.5, 0> <7, 45.5, 0> 0.2 } torus { 0.2 0.1 rotate <0, 0, 90> translate <7, 45.5, 0> } prism { linear_sweep linear_spline -1 // min y 1 // max y 6 // nr points <7, 45.2> <7, 46.2> <8, 47.2> <10, 46.9> <10, 45.2> <7, 45.2> rotate <-90, 0, 0> } intersection { torus { 9, .8 } plane { <0, 0, -1> 0 rotate <0, 10, 0> } plane { <0, 0, +1> 0 rotate <0, -10, 0> } pigment {color <0.3, 0.1, 0.5>} finish {phong 1.0} translate <0, 46.1, 0> } sphere { <0, 0, 0> .8 pigment {color <0.3, 0.1, 0.5>} finish {phong 1.0} translate <9, 46.1, 0> rotate <0, 10, 0> } sphere { <0, 0, 0> .8 pigment {color <0.3, 0.1, 0.5>} finish {phong 1.0} translate <9, 46.1, 0> rotate <0, -10, 0> } #local h = 46.1; #local r1 = 9; #local r2 = .8; #local lv = 3; lb(h+0.55*r2, r1, r2*0.4, lv-1) lb(h-0.55*r2*sin(radians(30)), r1-0.55*r2*cos(radians(30)), r2*0.4, lv-1) lb(h-0.55*r2*sin(radians(30)), r1+0.55*r2*cos(radians(30)), r2*0.4, lv-1) texture { pigment {color <0.3, 0.1, 0.2>} finish {phong 1.0} } rotate <0, ii * 45 + 22.5 + 180, 0> } #local ii = ii + 1; #end }