#include "treibstofftank.pov" #include "andruckabsorber.pov" #include "hufeisenpult.pov" #declare deck_14 = union { #if (1) intersection { union { difference { object { huelle } // Ausschnitte } } box { <-50, 20, -50> < 50, 15, 50> } } #end difference { cone { <0, 15.2, 0> 46.6 <0, 14.8, 0> 46.7 texture { T_arkonstahl } } // Ausschnitt f. Anlagen v. Deck 13. difference { cylinder { <0, 14, 0> <0, 16, 0> 25 } cylinder { <0, 14, 0> <0, 16, 0> 15 } } difference { cylinder { <0, 14, 0> <0, 16, 0> 45 } cylinder { <0, 14, 0> <0, 16, 0> 40 } } #ifdef (SCHNITT_1) box { <0, -0.3, 0> <-50, 0.3, -50> translate <0, 15.0, 0> } #end } #local rr = 25.5; #while (rr < 40.0) #local da = degrees(asin(0.5/rr))*2; #local aa = 0; #while (aa <= 360 - da) #local ss = 1; #ifdef (SCHNITT_1) #local pp = vrotate(, <0, aa, 0>); #if (pp.x < 0 & pp.z < 0) #local ss = 0; #end #end #if (ss) object { treibstofftank translate rotate <0, aa, 0> } #end #local aa = aa + da; #end #local rr = rr + 1.0; #end object { andruckabsorber translate <0, 15.2, 0> } #local a = 10; #while (a < 360) union { sphere { <45.5, 17.5, 0>, 2 } difference { cone { <45.5, 17.5, 0>, 0.3 <50.0, 19.0, 0>, 0.2 } cone { <45.5, 17.5, 0>, 0.2 <50.1, 19.1, 0>, 0.15 } } union { box { <46.0, 15.2, 0.5> <39.9, 15.1, -0.5> } cone { <43.4, 15.2, 0> 1 <43.4, 15.1, 0> 1 } // texture { pigment { rgb <1, 1, 0> } } } #local r = 40; #while (r <= 42.5) cone { 0.01 0.01 } cone { 0.01 0.01 } #local r = r + 0.5; #end cone { <40, 16.2, -0.5> 0.01 <42.5, 16.2, -0.5> 0.01 } cone { <40, 16.2, +0.5> 0.01 <42.5, 16.2, +0.5> 0.01 } object { hufeisenpult translate <43.4, 15.2, 0> } texture { T_arkonstahl } rotate <0, a, 0> } #local a = a + 60; #end }