#include "ynkelonium_texture.pov" #declare pk_x = 30; #declare pk_z = 40; #declare pk_r = 8; #declare cone_texture = texture { material_map { gif "16_lines_v_capped.map.gif" map_type 2 texture { pigment { color rgb <0.75, 0.75, 0.1> } finish { F_MetalA } } texture { pigment { color rgb <0.05, 0.05, 0.1> } finish { F_MetalA } } } } #declare projektorkopf = union { #if (1) difference { prism { conic_sweep bezier_spline 1, 44/60, 32 <-(pk_x), -(pk_z-pk_r)>, <-(pk_x), 0>, <-(pk_x), 0>, <-(pk_x), +(pk_z-pk_r)>, // kl <-(pk_x), +(pk_z-pk_r)>, <-(pk_x), +(pk_z)>, <-(pk_x), +(pk_z)>, <-(pk_x-pk_r), +(pk_z)>, // rlo <-(pk_x-pk_r), +(pk_z)>, <0, +(pk_z)>, <0, +(pk_z)>, <+(pk_x-pk_r), +(pk_z)>, // ko <+(pk_x-pk_r), +(pk_z)>, <+(pk_x), +(pk_z)>, <+(pk_x), +(pk_z)>, <+(pk_x), +(pk_z-pk_r)>, // rro <+(pk_x), +(pk_z-pk_r)>, <+(pk_x), 0>, <+(pk_x), 0>, <+(pk_x), -(pk_z-pk_r)>, // kr <+(pk_x), -(pk_z-pk_r)>, <+(pk_x), -(pk_z)>, <+(pk_x), -(pk_z)>, <+(pk_x-pk_r), -(pk_z)>, // rru <+(pk_x-pk_r), -(pk_z)>, <0, -(pk_z)>, <0, -(pk_z)>, <-(pk_x-pk_r), -(pk_z)>, // ku <-(pk_x-pk_r), -(pk_z)>, <-(pk_x), -(pk_z)>, <-(pk_x), -(pk_z)>, <-(pk_x), -(pk_z-pk_r)> // rlu scale <1, 22/(1-44/60), 1> translate <30, 102-22/(1-44/60), 0> pigment { color White } } cylinder { <30, 82, pk_z>, <30, 82+2, pk_z>, 10 pigment { color Red } } cylinder { <30, 86, pk_z>, <30, 86+2, pk_z>, 10 pigment { color Red } } cylinder { <30, 90, pk_z>, <30, 90+2, pk_z>, 10 pigment { color Red } } cylinder { <30, 94, pk_z>, <30, 94+2, pk_z>, 10 pigment { color Red } } cylinder { <30, 98, pk_z>, <30, 98+2, pk_z>, 10 pigment { color Red } } } difference { prism { linear_sweep bezier_spline 0, 6 32 <-(pk_x), -(pk_z-pk_r)>, <-(pk_x), 0>, <-(pk_x), 0>, <-(pk_x), +(pk_z-pk_r)>, // kl <-(pk_x), +(pk_z-pk_r)>, <-(pk_x), +(pk_z)>, <-(pk_x), +(pk_z)>, <-(pk_x-pk_r), +(pk_z)>, // rlo <-(pk_x-pk_r), +(pk_z)>, <0, +(pk_z)>, <0, +(pk_z)>, <+(pk_x-pk_r), +(pk_z)>, // ko <+(pk_x-pk_r), +(pk_z)>, <+(pk_x), +(pk_z)>, <+(pk_x), +(pk_z)>, <+(pk_x), +(pk_z-pk_r)>, // rro <+(pk_x), +(pk_z-pk_r)>, <+(pk_x), 0>, <+(pk_x), 0>, <+(pk_x), -(pk_z-pk_r)>, // kr <+(pk_x), -(pk_z-pk_r)>, <+(pk_x), -(pk_z)>, <+(pk_x), -(pk_z)>, <+(pk_x-pk_r), -(pk_z)>, // rru <+(pk_x-pk_r), -(pk_z)>, <0, -(pk_z)>, <0, -(pk_z)>, <-(pk_x-pk_r), -(pk_z)>, // ku <-(pk_x-pk_r), -(pk_z)>, <-(pk_x), -(pk_z)>, <-(pk_x), -(pk_z)>, <-(pk_x), -(pk_z-pk_r)> // rlu } prism { linear_sweep bezier_spline 0, 6 32 <-(pk_x), -(pk_z-pk_r)>, <-(pk_x), 0>, <-(pk_x), 0>, <-(pk_x), +(pk_z-pk_r)>, // kl <-(pk_x), +(pk_z-pk_r)>, <-(pk_x), +(pk_z)>, <-(pk_x), +(pk_z)>, <-(pk_x-pk_r), +(pk_z)>, // rlo <-(pk_x-pk_r), +(pk_z)>, <0, +(pk_z)>, <0, +(pk_z)>, <+(pk_x-pk_r), +(pk_z)>, // ko <+(pk_x-pk_r), +(pk_z)>, <+(pk_x), +(pk_z)>, <+(pk_x), +(pk_z)>, <+(pk_x), +(pk_z-pk_r)>, // rro <+(pk_x), +(pk_z-pk_r)>, <+(pk_x), 0>, <+(pk_x), 0>, <+(pk_x), -(pk_z-pk_r)>, // kr <+(pk_x), -(pk_z-pk_r)>, <+(pk_x), -(pk_z)>, <+(pk_x), -(pk_z)>, <+(pk_x-pk_r), -(pk_z)>, // rru <+(pk_x-pk_r), -(pk_z)>, <0, -(pk_z)>, <0, -(pk_z)>, <-(pk_x-pk_r), -(pk_z)>, // ku <-(pk_x-pk_r), -(pk_z)>, <-(pk_x), -(pk_z)>, <-(pk_x), -(pk_z)>, <-(pk_x), -(pk_z-pk_r)> // rlu scale <0.9, 1.01, 0.9> } translate <30, 102, 0> pigment { color White } } superellipsoid { <0.1, 0.1> scale <20, 1, 30> translate <30, 102, 0> texture { pigment { color rgb <0.05, 0.05, 0.1> } finish { F_MetalA } } } #end #if (0) cone { <80, 0, 0>, 5 <80, 110, 0>, 5 pigment { color Red } } #end intersection { torus { 1, 0.5 texture { material_map { gif "16_lines.map.gif" map_type 5 texture { pigment { color rgb <0.75, 0.75, 0.1> } finish { F_MetalA } } texture { pigment { color rgb <0.05, 0.05, 0.1> } finish { F_MetalA } } } } scale 40 rotate <90, 0, 0> scale <1, 1, pk_z/pk_x> } box { <-60, -60, -60> < 0, 0, 60> } translate <70, 80, 0> } cone { <0, 0, 0>, 1, <0, 1, 0>, 1 texture { cone_texture } scale <20, 10, 20> rotate <0, 0, 90> scale < 1, 1, pk_z/pk_x> translate <80, 40, 0> } } #declare balken = union { #if (1) cone { <0, 0, 0>, 24, <10, 0, 0>, 24 scale < 1, 1, 50/24> translate <80, 40, 0> } #end box { <80, 0, -50> <90, 40, 50> } } #declare zufuehrung = union { cone { <0, 0, 0>, 1 <0, 4, 0>, 1 texture { cone_texture } scale <14, 8, 14> rotate <0, 0, 90> translate <122, 40, -16> } cone { <0, 0, 0>, 1 <0, 4, 0>, 1 texture { cone_texture } scale <14, 8, 14> rotate <0, 0, 90> translate <122, 40, +16> } } #declare aggregate_block = union { // Hauptaggregateblock box { <122, 20, -100> <178, 48, 100> } box { <118, 20, -100> <122, 40, 100> } cone { <0, 0, -1>, 1 <0, 0, 1>, 1 scale <4, 8, 100> translate <122, 40, 0> } prism { linear_sweep linear_spline -90, 90 5 <122, 48>, <122, 80>, <128, 80>, <148, 48>, <122, 48> rotate <-90, 0, 0> } prism { linear_sweep linear_spline -80, 80 6 <128, 80>, <148, 48>, <160, 48>, <180, 90>, <128, 90>, <128, 80> rotate <-90, 0, 0> } box { <148, 0, -60> <280, 80, 60> } } #declare metagrav_oben = union { //bodenplatte prism { linear_sweep linear_spline -100, 100, 5, <0, 0>, <10, 20>, <206, 20>, <206, 0>, <0, 0> rotate <-90, 0, 0> } object { projektorkopf translate <0, 0, 50> } object { projektorkopf translate <0, 0, 50> scale <1, 1, -1> } object { balken translate <0, 0, 50> } object { balken translate <0, 0, 50> scale <1, 1, -1> } object { zufuehrung translate <0, 0, 50> } object { zufuehrung translate <0, 0, 50> scale <1, 1, -1> } object { aggregate_block } #if (0) pigment { checker color White*0.7, color White*0.5 scale 10 } #else texture { Ynkelonium_Texture } #end } #declare metagrav_unten = union { //bodenplatte prism { linear_sweep linear_spline -100, 100, 5, <70, 0>, <80, 20>, <206, 20>, <206, 0>, <70, 0> rotate <-90, 0, 0> } object { projektorkopf translate <0, -40, 0> scale <1, -1, 1> translate <0, +66, 0> translate <0, 0, 50> } object { projektorkopf translate <0, -40, 0> scale <1, -1, 1> translate <0, +66, 0> translate <0, 0, 50> scale <1, 1, -1> } object { balken translate <0, 26, 50> } object { balken translate <0, 26, 50> scale <1, 1, -1> } #declare i = -99; #while (i <= 99) #declare j = 81; #while (j <= 89) cone { , 1 , 1 } #declare j = j + 4; #end #declare i = i + 11; #end object { zufuehrung translate <0, 20, 50> } object { zufuehrung translate <0, 20, 50> scale <1, 1, -1> } object { aggregate_block } #if (0) pigment { checker color White*0.7, color White*0.5 scale 10 } #else texture { Ynkelonium_Texture } #end }