Transitionstriebwerk verkleinert (war ja für schweren Kreuzer)

und eingebaut.
This commit is contained in:
hjp 2008-08-17 22:07:04 +00:00
parent d9dcff27df
commit e773515aeb
16 changed files with 665 additions and 285 deletions

View File

@ -3,6 +3,8 @@ include GNUmakevars
all: \ all: \
test-transitionstriebwerk.png \
test-deck_07.png \
test-deck_04.png \ test-deck_04.png \
test-feldschirm_projektor_v.png \ test-feldschirm_projektor_v.png \
test-deck_06.png \ test-deck_06.png \
@ -69,7 +71,10 @@ test-schneller_kreuzer.png: test-schneller_kreuzer.pov \
ringwulst.pov triebwerk.pov \ ringwulst.pov triebwerk.pov \
landestuetze.pov \ landestuetze.pov \
deck_08.pov \ deck_08.pov \
deck_07.pov \
deck_06.pov \
deck_05.pov \ deck_05.pov \
deck_04.pov \
deck_03.pov \ deck_03.pov \
feldschirm_projektor_v.pov \ feldschirm_projektor_v.pov \
deck_02.pov \ deck_02.pov \
@ -190,6 +195,9 @@ test-feldschirm_projektor_v.png: test-feldschirm_projektor_v.pov \
test-deck_04.png: test-deck_04.pov deck_04.pov \ test-deck_04.png: test-deck_04.pov deck_04.pov \
test-deck_07.png: test-deck_07.pov deck_07.pov \
test-transitionstriebwerk.png: test-transitionstriebwerk.pov transitionstriebwerk.pov \
%.gif: %.ppm %.gif: %.ppm
ppmquant 256 $< | ppmtogif > $@ ppmquant 256 $< | ppmtogif > $@

View File

@ -75,6 +75,26 @@
cylinder { cylinder {
<0, -39, 0> <0, -41, 0> 2 <0, -39, 0> <0, -41, 0> 2
} }
#local aa = 0;
#while (aa < 360 )
union {
cone {
<27, Z-0.3, 0>, 2
<27, Z+0.3, 0>, 2
}
box {
<27, Z-0.3, -2>
<28, Z+0.3, +2>
}
cone {
<28, Z-0.3, 0>, 2
<28, Z+0.3, 0>, 2
}
texture { T_arkonstahl }
rotate <0, aa, 0>
}
#local aa = aa + 30;
#end
#ifdef (SCHNITT_1) #ifdef (SCHNITT_1)
intersection { intersection {
torus { torus {
@ -106,6 +126,11 @@
// Ausschnitt f. Landestützen // Ausschnitt f. Landestützen
#local aa = 0; #local aa = 0;
#while (aa < 360 ) #while (aa < 360 )
#local ss = 1;
#if (SCHNITT_1 & (aa >= 120 & aa <= 150))
#local ss = 0;
#end
#if (ss)
difference { difference {
union { union {
cone { cone {
@ -139,12 +164,23 @@
texture { T_arkonstahl } texture { T_arkonstahl }
rotate <0, aa, 0> rotate <0, aa, 0>
} }
object {
landestuetze_neg
color Red
rotate <0, aa, 0>
} }
}
#end
#local aa = aa + 30; #local aa = aa + 30;
#end #end
#local ii = 0; #local ii = 0;
#while (ii < 12) #while (ii < 12)
#local ss = 1;
#if (SCHNITT_1 & (ii >= 3 & ii <= 6))
#local ss = 0;
#end
#if (ss)
object { object {
treibstofftank_block treibstofftank_block
rotate <0, ii*30, 0> rotate <0, ii*30, 0>
@ -154,6 +190,7 @@
scale <1, 1, -1> scale <1, 1, -1>
rotate <0, ii*30, 0> rotate <0, ii*30, 0>
} }
#end
#local ii = ii + 1; #local ii = ii + 1;
#end #end

View File

@ -4,6 +4,42 @@
#local Z = -35; #local Z = -35;
#local treibstofftank_block =
union {
#local rr = 15.5;
#local rr2 = sqrt(48*48 - Z*Z);
#while (rr < rr2)
#local da = degrees(asin(0.5/rr))*2;
#if (rr < 18 | rr > 31)
#local aa = degrees(asin(0.5/rr));
#else
#local aa = degrees(asin(2.6/rr));
#end
#local ae = 15 - degrees(asin(0.5/rr));
#local n = int((ae-aa)/da);
#local da = (ae-aa)/n;
#local i = 0;
#while (i <= n)
#local ss = 1;
#ifdef (SCHNITT_1)
#local pp = vrotate(<rr, 0, 0>, <0, aa, 0>);
#if (pp.x < 0 & pp.z < 0)
#local ss = 0;
#end
#end
#if (ss)
object {
treibstofftank
translate <rr, Z+0.2, 0>
rotate <0, aa, 0>
}
#end
#local aa = aa + da;
#local i = i + 1;
#end
#local rr = rr + 1.0;
#end
}
#declare deck_04 = #declare deck_04 =
union { union {
#if (1) #if (1)
@ -68,32 +104,25 @@
#end #end
} }
#if (1)
// Treibstofftanks #local ii = 0;
#local rr = 30.5; #while (ii < 12)
#while (rr < 38.0)
#local da = degrees(asin(0.5/rr))*2;
#local da = 360 / int(360 / da);
#local aa = 0;
#while (aa <= 360 - da)
#local ss = 1; #local ss = 1;
#if (SCHNITT_1) #if (SCHNITT_1 & (ii >= 3 & ii <= 6))
#local pp = vrotate(<rr, 0, 0>, <0, aa, 0>);
#if (pp.x < 0 & pp.z < 0)
#local ss = 0; #local ss = 0;
#end #end
#end
#if (ss) #if (ss)
object { object {
treibstofftank treibstofftank_block
translate <rr, (Z+0.2), 0> rotate <0, ii*30, 0>
rotate <0, aa, 0> }
object {
treibstofftank_block
scale <1, 1, -1>
rotate <0, ii*30, 0>
} }
#end #end
#local aa = aa + da; #local ii = ii + 1;
#end
#local rr = rr + 1.0;
#end
#end #end
} }

View File

@ -0,0 +1,105 @@
#include "treibstofftank.pov"
#include "andruckabsorber.pov"
#include "hufeisenpult.pov"
#local Z = -20;
#declare deck_07 =
union {
#if (1)
intersection {
union {
difference {
object { huelle }
// Ausschnitte
}
}
box {
<-50, Z+5, -50>
< 50, Z+0, 50>
}
}
#end
difference {
cone {
<0, Z+0.2, 0> sqrt(pow(49,2)-pow((Z+0.2),2)),
<0, Z-0.2, 0> sqrt(pow(49,2)-pow((Z-0.2),2))
texture { T_arkonstahl }
}
// AG
cylinder {
<0, -39, 0> <0, -41, 0> 2
}
// Ausschnitt für Kraftwerke (Deck 5)
difference {
cylinder {
<0, Z-0.3, 0> <0, Z+0.3, 0> 24+5
}
cylinder {
<0, Z-0.3, 0> <0, Z+0.3, 0> 24-5
}
}
#ifdef (SCHNITT_1)
box {
<0, -0.3, 0>
<-50, 0.3, -50>
translate <0, Z, 0>
}
#end
}
#local rr = 24+5.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(<rr, 0, 0>, <0, aa, 0>);
#if (pp.x < 0 & pp.z < 0)
#local ss = 0;
#end
#end
#if (ss)
object {
treibstofftank
translate <rr, Z+0.2, 0>
rotate <0, aa, 0>
}
#end
#local aa = aa + da;
#end
#local rr = rr + 1.0;
#end
object {
andruckabsorber
translate <0, Z+0.2, 0>
}
#local a = 10;
#while (a < 360)
union {
#local rr = sqrt(pow(49,2)-pow((Z+2.5),2));
sphere { <rr, Z+2.5, 0>, 2 }
difference {
cone {
<rr, Z+2.5, 0>, 0.3
<50.0, Z+1.0, 0>, 0.2
}
cone {
<rr, Z+2.5, 0>, 0.2
<50.1, Z+1.0, 0>, 0.15
}
}
object {
hufeisenpult
translate <rr-3.0, Z+0.2, 0>
}
texture { T_arkonstahl }
rotate <0, a, 0>
}
#local a = a + 60;
#end
}

View File

@ -1,6 +1,9 @@
#include "T_bodenbelag.pov" #include "T_bodenbelag.pov"
#include "feldschirm_projektor.pov" #include "feldschirm_projektor.pov"
#include "treibstofftank.pov" #include "treibstofftank.pov"
#include "transitionstriebwerk.pov"
#local Z = -15;
#declare deck_08 = #declare deck_08 =
union { union {
@ -29,7 +32,7 @@
texture { pigment { rgb < 1, 0, 0 > } } texture { pigment { rgb < 1, 0, 0 > } }
} }
torus { torus {
(15+6)/2, (15-6)/2 24, 5
translate <0, -15.0, 0> translate <0, -15.0, 0>
} }
#ifdef (SCHNITT_1) #ifdef (SCHNITT_1)
@ -59,7 +62,7 @@
// Treibstofftanks // Treibstofftanks
#local rr = 25.5; #local rr = 24+5.5;
#while (rr < 40.0) #while (rr < 40.0)
#local da = degrees(asin(0.5/rr))*2; #local da = degrees(asin(0.5/rr))*2;
#local da = 360 / int(360 / da); #local da = 360 / int(360 / da);
@ -96,5 +99,9 @@
#end #end
#local a = a + 20; #local a = a + 20;
#end #end
object {
transitionstriebwerk
translate <0, Z+0.2, 0>
}
} }

View File

@ -1,6 +1,6 @@
+Q9 +QR
+A +A
+MB5 +MB5
+HTN +HTN
+fp +w640 +h480 +d1 +fp +w800 +h600 +d1
display_gamma = 2.2 display_gamma = 2.2

View File

@ -14,8 +14,10 @@
#include "deck_11.pov" #include "deck_11.pov"
#include "ringwulst.pov" #include "ringwulst.pov"
#include "deck_08.pov" #include "deck_08.pov"
#include "deck_07.pov"
#include "deck_06.pov" #include "deck_06.pov"
#include "deck_05.pov" #include "deck_05.pov"
#include "deck_04.pov"
#include "deck_03.pov" #include "deck_03.pov"
#include "deck_02.pov" #include "deck_02.pov"
#include "deck_01.pov" #include "deck_01.pov"
@ -59,12 +61,18 @@
object { object {
deck_08 deck_08
} }
object {
deck_07
}
object { object {
deck_06 deck_06
} }
object { object {
deck_05 deck_05
} }
object {
deck_04
}
object { object {
deck_03 deck_03
} }
@ -89,10 +97,16 @@
#end #end
#local i = 0; #local i = 0;
#while (i < 12) #while (i < 12)
#local ss = 1;
#if (SCHNITT_1 & (i >= 4 & i <= 5))
#local ss = 0;
#end
#if (ss)
object { object {
landestuetze landestuetze
rotate <0, i * 30, 0> rotate <0, i * 30, 0>
} }
#end
#local i = i + 1; #local i = i + 1;
#end #end
} }

View File

@ -17,7 +17,7 @@ light_source {
color White color White
} }
#local CP = <25, 95, -0>; #local CP = <0, 20, -100>;
light_source { light_source {
CP CP
color White*0.5 color White*0.5
@ -25,7 +25,7 @@ light_source {
camera { camera {
orthographic orthographic
location CP location CP
look_at <25, 20.0, 0> look_at <0, 20.0, 0>
angle 20 angle 20
} }

View File

@ -0,0 +1,105 @@
#include "colors.inc"
#include "shapes.inc"
#include "textures.inc"
#include "metals.inc"
#include "stones.inc"
#declare SCHNITT_1 = 1; // Quadrant -/*/-
#local LANDESTUETZEN = 0;
global_settings {
assumed_gamma 1.0
ambient_light rgb<0.5, 0.5, 0.5>
}
background { color rgb<0.2, 0.4, 0.8> }
light_source {
<-200, 200, -200>
color White
}
#local CP = <40, 120, 0>;
light_source {
CP
color White*0.5
}
camera {
orthographic
location CP
look_at <40, 40.0, 0>
angle 20
}
#include "huelle.pov"
#include "deck_07.pov"
#include "deck_05.pov"
union {
object {
deck_07
}
object {
deck_05
}
cylinder {
<100, -43, -100>,
<100, -43, +100>,
0.2
pigment { color <1, 1, 1> }
}
cylinder {
<100, -44, -100>,
<100, -44, +100>,
0.2
pigment { color <1, 1, 0> }
}
cylinder {
<100, -45, -100>,
<100, -45, +100>,
0.2
pigment { color <1, 0, 0> }
}
cylinder {
<100, -40, 0>,
<100, -55, 0>,
0.2
pigment { color <1, 0, 0> }
}
translate <0, 55, 0>
}
cylinder {
<0, 0, 0>,
<0, -1, 0>, 1000
pigment {
radial
color_map{
[0.1 rgb 0.1 ]
[0.1 White]
}
frequency 16
}
}
/*
cone {
<0, 0, 0>, 0
<1000, 0, 0>, 10
pigment { color <1, 0, 0> }
}
cone {
<0, 0, 0>, 0
<0, 1000, 0>, 10
pigment { color <0, 1, 0> }
}
cone {
<0, 0, 0>, 0
<0, 0, 1000>, 10
pigment { color <0, 0, 1> }
}
*/

View File

@ -30,15 +30,19 @@ camera {
#include "huelle.pov" #include "huelle.pov"
#include "deck_08.pov" #include "deck_08.pov"
#include "deck_05.pov"
object { object {
deck_08 deck_08
} }
object {
deck_05
}
cylinder { cylinder {
<0, -15, 0>, <0, -30, 0>,
<0, -16, 0>, 1000 <0, -31, 0>, 1000
pigment { pigment {
radial radial
color_map{ color_map{

View File

@ -10,6 +10,9 @@
global_settings { global_settings {
assumed_gamma 1.0 assumed_gamma 1.0
ambient_light rgb<0.5, 0.5, 0.5> ambient_light rgb<0.5, 0.5, 0.5>
radiosity {
distance_maximum 10000
}
} }
background { color rgb<0.2, 0.4, 0.8> } background { color rgb<0.2, 0.4, 0.8> }
light_source { light_source {
@ -19,23 +22,40 @@ light_source {
/* /*
* von schräg oben * von schräg oben
*/
#local CP = <-250, 250, -200>; #local CP = <-250, 250, -200>;
camera {
location CP
look_at <-0, 55, -0>
angle 25
}
*/
/* /*
* untere decks * untere decks
*/
#local CP = <-150, 0, -100>;
light_source { #local CP = <-150, 0, -100>;
CP
color White*0.5
}
camera { camera {
location CP location CP
look_at <-0, 20, -0> look_at <-0, 20, -0>
angle 25 angle 25
} }
*/
/*
* von unten
*/
#local CP = <-250, 2, -200>;
camera {
location CP
look_at <-0, 55, -0>
angle 25
}
light_source {
CP
color White*0.5
}
#include "schneller_kreuzer.pov" #include "schneller_kreuzer.pov"
@ -64,11 +84,11 @@ cone {
pigment { color <1, 0, 0> } pigment { color <1, 0, 0> }
} }
# cone { // cone {
# <0, 0, 0>, 0 // <0, 0, 0>, 0
# <0, 1000, 0>, 10 // <0, 1000, 0>, 10
# pigment { color <0, 1, 0> } // pigment { color <0, 1, 0> }
# } // }
cone { cone {
<0, 0, 0>, 0 <0, 0, 0>, 0

View File

@ -20,7 +20,7 @@ light_source {
color White*0.5 color White*0.5
} }
camera { camera {
orthographic // orthographic
location <7, 1.8, 15> location <7, 1.8, 15>
look_at <0, 0.5, 5> look_at <0, 0.5, 5>
angle 40 angle 40

View File

@ -10,13 +10,18 @@ light_source { <16.5, 14, 16.5> colour C_OffWhite * 0.6 }
light_source { <-16.5, 14, 16.5> colour C_OffWhite * 0.6 } light_source { <-16.5, 14, 16.5> colour C_OffWhite * 0.6 }
light_source { <16.5, 14, -16.5> colour C_OffWhite * 0.6 } light_source { <16.5, 14, -16.5> colour C_OffWhite * 0.6 }
light_source { <-16.5, 14, -16.5> colour C_OffWhite * 0.6 } light_source { <-16.5, 14, -16.5> colour C_OffWhite * 0.6 }
light_source { <-23.5, 9.6, 0> colour White }
camera { camera {
location <20, 40, 20> location <-13, 10, -13>
look_at <0, 0, 0> look_at <-8.0, 5.4, -8.0>
} }
background { color rgb<0.2, 0.4, 0.8> }
plane {<0, 1, 0>, 0 texture {pigment {color White}}} plane {<0, 1, 0>, 0 texture {pigment {color White}}}
//plane {<0, -1, 0>, -15 texture {pigment {color White}}} //plane {<0, -1, 0>, -15 texture {pigment {color White}}}
#if (0)
difference { difference {
cone { cone {
<0, 0, 0> 25, <0, 0, 0> 25,
@ -26,6 +31,7 @@ difference {
<0, 0, 0> 24, <0, 0, 0> 24,
<0, 16, 0> 24 <0, 16, 0> 24
} }
// Schotts
box { box {
<-1.5, 0, -25> <-1.5, 0, -25>
<+1.5, 5, +25> <+1.5, 5, +25>
@ -36,6 +42,7 @@ difference {
} }
texture {pigment {color White}} texture {pigment {color White}}
} }
#end
#include "transitionstriebwerk.pov" #include "transitionstriebwerk.pov"

View File

@ -1,51 +1,54 @@
#include "metals.inc" #include "metals.inc"
#include "glass.inc" #include "glass.inc"
#local pos_turm = 8;
#declare turm = #declare turm =
lathe { lathe {
30, 30,
<0.0, 0.0>, < 0.0, 0.0>
<2.7, 0.0>, < 1.6, 0.0>
<2.7, 0.6>, < 1.6, 0.6>
<2.3, 1.8>, < 1.4, 1.7>
<2.3, 2.2>, < 1.4, 2.0>
<2.7, 3.2>, < 1.6, 3.0>
<3.2, 3.2>, < 1.9, 3.0>
<3.2, 3.4>, < 1.9, 3.1>
<2.7, 3.4>, < 1.6, 3.1>
<1.8, 5.6>, < 1.1, 5.2>
<2.7, 5.6>, < 1.6, 5.2>
<2.7, 6.2>, < 1.6, 5.7>
<2.1, 6.8>, < 1.3, 6.3>
<1.9, 7.6>, < 1.1, 7.0>
<0.9, 7.6>, < 0.5, 7.0>
<0.9, 8.2>, < 0.5, 7.6>
<2.1, 8.2>, < 1.3, 7.6>
<2.1, 8.4>, < 1.3, 7.7>
<0.9, 8.4>, < 0.5, 7.7>
<0.9, 8.6>, < 0.5, 7.9>
<2.1, 8.6>, < 1.3, 7.9>
<2.1, 8.8>, < 1.3, 8.1>
<0.9, 8.8>, < 0.5, 8.1>
<0.9, 9.0>, < 0.5, 8.3>
<2.1, 9.0>, < 1.3, 8.3>
<2.1, 9.2>, < 1.3, 8.5>
<2.1, 9.7>, < 1.3, 8.9>
<2.6, 9.7>, < 1.6, 8.9>
<2.6, 10.3>, < 1.6, 9.5>
<0.0, 10.3> < 0.0, 9.5>
texture { texture {
pigment { pigment {
image_map { image_map {
gif "turm-c.gif" png "turm-c.png" // XXX - rescale!
map_type 2 map_type 2
} }
scale <1, 10.3, 1> scale <1, 9.5, 1>
} }
} }
normal { normal {
bump_map { bump_map {
gif "turm-b.gif" png "turm-b.png"
map_type 2 map_type 2
bump_size 5 bump_size 5
} }
@ -112,18 +115,18 @@
lathe { lathe {
10, 10,
<0.0, 0.0>, <0.0, 0.0>,
<1.0, 0.0>, <0.6, 0.0>,
<1.0, 0.4>, <0.6, 0.4>,
<0.8, 0.5>, <0.5, 0.5>,
<0.8, 1.2>, <0.5, 1.2>,
<1.0, 1.4>, <0.6, 1.4>,
<1.0, 1.8>, <0.6, 1.8>,
<0.8, 1.8>, <0.5, 1.8>,
<0.7, 2.0>, <0.4, 2.0>,
<0.0, 2.0> <0.0, 2.0>
} }
sphere { sphere {
<0, 2, 0>, 0.7 <0, 2, 0>, 0.4
} }
texture { texture {
T_Copper_3D T_Copper_3D
@ -134,12 +137,12 @@
#declare hufeisen = #declare hufeisen =
union { union {
box { box {
<0.0, 8.2, 0.0>, <0.0, 7.6, 0.0>,
<0.8, 10.0, 2.5> <0.5, 9.2, 1.5>
} }
cone { cone {
<0.0, 9.1, 0.0>, 0.9, <0.0, 8.4, 0.0>, 0.8,
<0.8, 9.1, 0.0>, 0.9 <0.5, 8.4, 0.0>, 0.8
} }
texture { texture {
T_Copper_3D T_Copper_3D
@ -151,16 +154,16 @@
union { union {
cone { cone {
<0, 0, 0>, 0.3, <0, 0, 0>, 0.3,
<0, 2.9, 0>, 0.1 <0, 2.7, 0>, 0.1
} }
sphere { sphere {
<0, 2.85, 0>, 0.15 <0, 2.7, 0>, 0.15
} }
#declare i=0; #declare i=0;
#while (i < 6) #while (i < 6)
cone { cone {
<0, i * 0.33 + 0.5, 0>, 1.2 - 0.1 * i, <0, i * 0.25 + 0.5, 0>, 0.7 - 0.06 * i,
<0, i * 0.33 + 0.8, 0>, 1.2 - 0.1 * i <0, i * 0.25 + 0.7, 0>, 0.7 - 0.06 * i
texture { texture {
T_Ruby_Glass T_Ruby_Glass
} }
@ -184,73 +187,74 @@
linear_sweep linear_sweep
linear_spline linear_spline
0, 0,
9.6, 8.9,
6, 6,
<0, 0>, <6.8, 0>, <6.8, 3.6>, <4.4, 6.0>, <0, 6.0>, <0, 0> <0, 0>, <4.1, 0>, <4.1, 2.2>, <2.6, 3.6>, <0, 3.6>, <0, 0>
} }
box { box {
<0.4, 0.8, -0.1>, <6.4, 4, 2.4> <0.2, 0.7, -0.1>, <3.8, 3.7, 1.4>
} }
box { box {
<0.8, 6.4, -0.1>, <3.4, 9.7, 4.4> <0.5, 5.9, -0.1>, <2.0, 8.9, 2.6>
} }
} }
object { object {
console console
translate <0.8, 6.4, 0> translate <0.5, 5.9, 0>
} }
object { object {
baum baum
translate <2.1, 7.0, 2.5> translate <1.25, 6.5, 1.5>
} }
object { object {
zylinder zylinder
translate <1.4, 0.8, 1.2> translate <0.8, 0.7, 0.7>
} }
object { object {
zylinder zylinder
translate <3.4, 0.8, 1.2> translate <2.0, 0.7, 0.7>
} }
object { object {
zylinder zylinder
translate <5.4, 0.8, 1.2> translate <3.2, 0.7, 0.7>
} }
object { object {
hufeisen hufeisen
translate <3.8, 0.0, 0.0> translate <2.3, 0.0, 0.0>
} }
object { object {
hufeisen hufeisen
translate <5.0, 0.0, 0.0> translate <3.0, 0.0, 0.0>
} }
union { union {
#declare zet = 5.2; #declare zet = 3.1;
#declare top = 8.9;
cone { cone {
<4.0, 9.6, zet>, 0.4 <2.5, top, zet>, 0.2
<4.0, 9.8, zet>, 0.4 <2.5, (top+0.2), zet>, 0.2
} }
cone { cone {
<4.0, 9.6, zet>, 0.1 <2.5, top, zet>, 0.1
<4.0, 9.6, 2.5>, 0.1 <2.5, top, 1.5>, 0.1
} }
cone { cone {
<4.0, 9.6, zet>, 0.1 <2.5, top, zet>, 0.1
<5.2, 9.6, zet-1.2>, 0.1 <3.3, top, zet-1.2>, 0.1
} }
cone { cone {
<5.2, 9.6, zet-1.2>, 0.1 <3.3, top, zet-1.2>, 0.1
<5.2, 9.6, 2.5>, 0.1 <3.3, top, 1.5>, 0.1
} }
cone { cone {
<4.0, 9.6, zet>, 0.1 <2.5, top, zet>, 0.1
<1.0, 9.6, zet>, 0.1 <0.6, top, zet>, 0.1
} }
cone { cone {
<1.0, 9.6, zet>, 0.6 <0.6, top, zet>, 0.4
<1.0, 9.8, zet>, 0.6 <0.6, (top+0.2), zet>, 0.4
} }
sphere { sphere {
<1.0, 9.6, zet>, 0.5 <0.6, top, zet>, 0.3
} }
texture { texture {
@ -261,24 +265,24 @@
} }
union { union {
cone { cone {
<4.8, 9.3, 0>, 0.1 <2.9, 8.6, 0>, 0.1
<4.8, 5.0, 0>, 0.1 <2.9, 4.6, 0>, 0.1
} }
cone { cone {
<4.8, 5.0, 0.0>, 0.2 <2.9, 4.6, 0.0>, 0.2
<4.8, 5.0, -0.1>, 0.2 <2.9, 4.6, -0.1>, 0.2
} }
cone { cone {
<4.8, 5.1, 0.0>, 0.1 <2.9, 4.7, 0.0>, 0.1
<2.0, 5.1, 0.0>, 0.1 <1.2, 4.7, 0.0>, 0.1
} }
cone { cone {
<4.8, 4.9, 0.0>, 0.1 <2.9, 4.5, 0.0>, 0.1
<3.0, 4.9, 0.0>, 0.1 <1.8, 4.5, 0.0>, 0.1
} }
cone { cone {
<3.0, 4.9, 0.0>, 0.1 <1.8, 4.5, 0.0>, 0.1
<3.0, 4.0, 0.0>, 0.1 <1.8, 3.7, 0.0>, 0.1
} }
texture { texture {
@ -314,7 +318,7 @@
LightSteelBlue LightSteelBlue
} }
} }
translate <1, 5.1, 0> translate <0.6, 4.7, 0>
} }
texture { texture {
@ -329,11 +333,11 @@
union { union {
object { object {
block block
translate <+0.45, 0, -14.5> translate <+0.45, 0, -pos_turm-1.5>
} }
object { object {
block block
translate <+0.45, 0, -14.5> translate <+0.45, 0, -pos_turm-1.5>
scale <-1, 1, 1> scale <-1, 1, 1>
} }
} }
@ -342,55 +346,58 @@
union { union {
difference { difference {
cone { cone {
<0, 5.6, 0>, 2.7 + 0.8, <0, 5.2, 0>, 1.6 + 0.8,
<0, 5.8, 0>, 2.7 + 0.8 <0, 5.4, 0>, 1.6 + 0.8
} }
cone { cone {
<0, 5.5, 0>, 2.7, <0, 5.1, 0>, 1.6,
<0, 5.9, 0>, 2.7 <0, 5.5, 0>, 1.6
} }
} }
difference { difference {
torus { torus {
2.7 + 0.8, 0.02 1.6 + 0.8, 0.02
translate <0, 6.6, 0> translate <0, 6.2, 0>
} }
box { box {
<-0.4, 6.5, -(2.7 + 0.9)> <-0.4, 6.1, +(1.6 + 0.7)>
<+0.4, 6.7, +(2.7 + 0.9)> <+0.4, 6.3, +(1.6 + 0.9)>
rotate <0, -45, 0> rotate <0, 135, 0>
} }
box { box {
<-0.4, 6.5, -(2.7 + 0.9)> <-0.4, 6.1, +(1.6 + 0.7)>
<+0.4, 6.7, +(2.7 + 0.9)> <+0.4, 6.3, +(1.6 + 0.9)>
rotate <0, 90 - 32.03, 0> rotate <0, 240, 0>
} }
box { box {
<-0.4, 6.5, -(2.7 + 0.9)> <-0.4, 6.1, +(1.6 + 0.7)>
<+0.4, 6.7, +(2.7 + 0.9)> <+0.4, 6.3, +(1.6 + 0.9)>
rotate <0, 180 + 32.03, 0> rotate <0, 30, 0>
} }
} }
#declare i=0; #declare i=0;
#while (i < 360) #while (i < 360)
#if (i != 30 & i != 240)
cone { cone {
<0, 5.6, -(2.7 + 0.8)>, 0.02, <0, 5.2, (1.6 + 0.8)>, 0.02,
<0, 6.6, -(2.7 + 0.8)>, 0.02 <0, 6.2, (1.6 + 0.8)>, 0.02
rotate <0, i, 0> rotate <0, i, 0>
} }
#end
#declare i = i + 30; #declare i = i + 30;
#end #end
union { union {
cone { cone {
<-0.4, 0, 0>, 0.02, <-0.4, 0, 0>, 0.02,
<-0.4, 6.6, 0>, 0.02 <-0.4, 6.2, 0>, 0.02
} }
cone { cone {
<+0.4, 0, 0>, 0.02, <+0.4, 0, 0>, 0.02,
<+0.4, 6.6, 0>, 0.02 <+0.4, 6.2, 0>, 0.02
} }
#declare i=0.3; #declare i=0.3;
#while (i < 5.6) #while (i < 5.2)
box { box {
<-0.4, i, 0.1>, <-0.4, i, 0.1>,
<+0.4, i + 0.02, -0.1> <+0.4, i + 0.02, -0.1>
@ -405,7 +412,7 @@
plane { plane {
<0, 0, -1>, 0 <0, 0, -1>, 0
} }
translate <-0.4, 6.1, 0> translate <-0.4, 5.7, 0>
} }
difference { difference {
torus { torus {
@ -415,49 +422,70 @@
plane { plane {
<0, 0, -1>, 0 <0, 0, -1>, 0
} }
translate <+0.4, 6.1, 0> translate <+0.4, 5.7, 0>
} }
translate <0, 0, -(2.7 + 0.8)> translate <0, 0, -(1.6 + 0.8)>
rotate <0, -45, 0> rotate <0, -45, 0>
} }
} }
#declare steg_verbindung = #declare steg_verbindung =
union { union {
#local z1 = 0.4 * cos(radians(30));
box { box {
<2.7 + 0.4, 5.6, -0.4>, <1.6 + 0.4, 5.2, -0.4>,
<5.582 , 5.8, 0.4> <(1.5+0.8-z1)*2, 5.4, 0.4>
}
cone {
<1.6 + 0.8, 5.2, -0.4>, 0.02
<1.6 + 0.8, 6.2, -0.4>, 0.02
} }
cone { cone {
<2.7 + 0.8, 6.6, -0.4>, 0.02 <1.6 + 0.8, 6.2, -0.4>, 0.02
<5.353 , 6.6, -0.4>, 0.02 <(1.5+z1)*2, 6.2, -0.4>, 0.02
} }
cone { cone {
<2.7 + 0.8, 6.6, +0.4>, 0.02 <(1.5+z1)*2, 5.2, -0.4>, 0.02
<5.582 , 6.6, +0.4>, 0.02 <(1.5+z1)*2, 6.2, -0.4>, 0.02
}
cone {
<1.6 + 0.8, 5.2, +0.4>, 0.02
<1.6 + 0.8, 6.2, +0.4>, 0.02
}
cone {
<1.6 + 0.8, 6.2, +0.4>, 0.02
<(1.5+0.8-z1)*2, 6.2, +0.4>, 0.02
}
cone {
<(1.5+0.8-z1)*2, 5.2, +0.4>, 0.02
<(1.5+0.8-z1)*2, 6.2, +0.4>, 0.02
} }
//plane { //plane {
// <0, 0, -1>, 3.3 // <0, 0, -1>, 3.3
//} //}
rotate <0, 180 - 32.03, 0> //rotate <0, 180 - 32.03, 0>
translate <12, 0, 0> rotate <0, 180 - 30.00, 0>
translate <pos_turm, 0, 0>
} }
#declare steg_seite = #declare steg_seite =
union { union {
#local x1 = pos_turm - (1.5+0.8-z1)*2*cos(radians(30)) + 0.4*sin(radians(30));
box { box {
<-(12 - 4.52), 5.6, -3.3>, <-x1, 5.2, -2.3>,
<+(12 - 4.52), 5.8, -2.5> <+x1, 5.4, -1.5>
} }
cone { cone {
<-(12 - 4.52), 6.6, -3.3>, 0.02, <-x1, 6.2, -2.3>, 0.02,
<+(12 - 4.52), 6.6, -3.3>, 0.02 <+x1, 6.2, -2.3>, 0.02
} }
#declare i=-6; #declare i=-4;
#while (i <= 6) #while (i <= 4)
cone { cone {
<i, 5.6, -(2.5 + 0.8)>, 0.02, <i, 5.2, -(1.5 + 0.8)>, 0.02,
<i, 6.6, -(2.5 + 0.8)>, 0.02 <i, 6.2, -(1.5 + 0.8)>, 0.02
} }
#declare i = i + 2; #declare i = i + 2;
#end #end
@ -474,37 +502,44 @@
union { union {
object { object {
steg_turm steg_turm
translate <12, 0, 0> translate <pos_turm, 0, 0>
} }
object { object {
steg_seite steg_seite
translate <0, 0, 0> translate <0, 0, 0>
} }
/*
texture { texture {
T_Chrome_5E T_Chrome_5E
} }
*/
texture {
pigment {
Yellow
}
}
} }
#declare steg = #declare steg =
union { union {
object { object {
steg1 steg1
translate <0, 0, -12> translate <0, 0, -pos_turm>
} }
object { object {
steg1 steg1
translate <0, 0, -12> translate <0, 0, -pos_turm>
rotate <0, 90, 0> rotate <0, 90, 0>
} }
object { object {
steg1 steg1
translate <0, 0, -12> translate <0, 0, -pos_turm>
rotate <0, 180, 0> rotate <0, 180, 0>
} }
object { object {
steg1 steg1
translate <0, 0, -12> translate <0, 0, -pos_turm>
rotate <0, 270, 0> rotate <0, 270, 0>
} }
} }
@ -522,83 +557,84 @@
} }
cone { cone {
<0, 0, 0>, 3.2 <0, 0, 0>, 3.2
<0, 0.4, 0>, 3.2 <0, 0.3, 0>, 3.2
} }
cone { cone {
<0, 0.4, 0>, 2.8 <0, 0.3, 0>, 2.8
<0, 3, 0>, 3.2 <0, 2.5, 0>, 3.2
} }
cone { cone {
<0, 3, 0>, 2.5 <0, 2.5, 0>, 2.5
<0, 4.4, 0>, 2.5 <0, 3.6, 0>, 2.5
texture { texture {
pigment { pigment {
image_map { image_map {
gif "zentral1.gif" gif "zentral1.gif"
map_type 2 map_type 2
} }
scale <1, 1.4, 1> scale <1, 1.1, 1>
} }
} }
} }
intersection { intersection {
sphere { sphere {
<0, 6.6, 0>, 3.9 <0, 5.5, 0>, 3.9
} }
box { box {
<-3.9, 4.4, -3.9> <-3.9, 3.6, -3.9>
<+3.9, 8.8, +3.9> <+3.9, 7.4, +3.9>
} }
} }
union { union {
difference { difference {
cone { cone {
<0, 8.8, 0>, 2.7 <0, 7.4, 0>, 2.7
<0, 10.2, 0>, 2.3 <0, 8.4, 0>, 2.3
} }
box { box {
<0.2, 9.0, -0.2> <0.2, 7.5, -0.2>
<2.7, 10.0, -2.7> <2.7, 8.3, -2.7>
} }
box { box {
<0.2, 9.0, +0.2> <0.2, 7.5, +0.2>
<2.7, 10.0, +2.7> <2.7, 8.3, +2.7>
} }
box { box {
<-0.2, 9.0, +0.2> <-0.2, 7.5, +0.2>
<-2.7, 10.0, +2.7> <-2.7, 8.3, +2.7>
} }
box { box {
<-0.2, 9.0, -0.2> <-0.2, 7.5, -0.2>
<-2.7, 10.0, -2.7> <-2.7, 8.3, -2.7>
} }
} }
cone { cone {
<0, 8.8, 0>, 2.1 <0, 7.4, 0>, 2.1
<0, 10.2, 0>, 2.1 <0, 8.4, 0>, 2.1
} }
} }
cone { cone {
<0, 10.2, 0>, 1.7 <0, 8.4, 0>, 1.7
<0, 10.8, 0>, 1.4 <0, 8.9, 0>, 1.4
texture { texture {
pigment { pigment {
image_map { image_map {
gif "zentral2.gif" gif "zentral2.gif"
map_type 2 map_type 2
} }
scale <1, 0.6, 1> scale <1, 0.5, 1>
translate <0, -0.1, 0>
} }
} }
} }
cone { cone {
<0, 10.8, 0>, 0.7 <0, 8.9, 0>, 0.7
<0, 10.9, 0>, 0.7 <0, 9.0, 0>, 0.7
} }
sphere { sphere {
<0, 10.9, 0>, 0.6 <0, 9.0, 0>, 0.5
} }
texture { texture {
pigment { White } pigment { White }
@ -610,58 +646,57 @@
union { union {
difference { difference {
box { box {
<9, 8.2, -1> <6, 7.6, -0.5>
<15, 9.7, +1> <10, 8.9, +0.5>
} }
cone { cone {
<0, 0, -1.1>, 2 <0, 0, -1.1>, 1
<0, 0, +1.1>, 2 <0, 0, +1.1>, 1
scale <1, 0.5, 1> translate <7.3, 7.6, 0>
translate <11, 8.2, 0>
} }
box { box {
<8.9, 8.2, -1.1> <5.9, 7.6, -1.1>
<11, 9.2, +1.1> <7.3, 8.5, +1.1>
} }
} }
cone { cone {
<9, 9.7, 0>, 0.1 < 6, 8.9, 0>, 0.1
<15, 9.7, 0>, 0.1 <10, 8.9, 0>, 0.1
texture { pigment { Orange } } texture { pigment { Orange } }
} }
cone { cone {
<11, 9.7, 0>, 0.5 <7.3, 8.9, 0>, 0.3
<11, 9.9, 0>, 0.5 <7.3, 9.1, 0>, 0.3
texture { pigment { Orange } } texture { pigment { Orange } }
} }
box { box {
< 6.5, 8.8, -1> < 6.0, 8.1, -1>
<13, 9.0, +1> <11, 8.3, +1>
} }
intersection { intersection {
torus { torus {
5.7, 1.0 5.2, 1.0
translate <0, 8.0, 0> translate <0, 7.4, 0>
} }
box { box {
<4.7, 7.0, -1.0> <4.2, 6.4, -1.0>
<6.7, 8.0, +1.0> <6.2, 7.4, +1.0>
} }
} }
intersection { intersection {
difference { difference {
cone { cone {
<0, 8.0, 0>, 6.7 <0, 7.4, 0>, 6.2
<0, 9.0, 0>, 6.7 <0, 8.3, 0>, 6.2
} }
cone { cone {
<0, 7.9, 0>, 6.5 <0, 7.3, 0>, 6.0
<0, 9.1, 0>, 6.5 <0, 8.4, 0>, 6.0
} }
} }
box { box {
<4.7, 8.0, -1.0> <4.7, 7.4, -1.0>
<6.7, 9.0, +1.0> <6.7, 8.3, +1.0>
} }
} }
prism { prism {
@ -669,8 +704,8 @@
linear_sweep linear_sweep
-0.8, 0.8, -0.8, 0.8,
8, 8,
<5.0, 8.8>, <6.0, 8.8>, <6.5, 9.0>, <8, 9.0>, <4.5, 8.1>, <5.5, 8.1>, <6.0, 8.3>, <7.5, 8.3>,
<8, 9.2>, <6.5, 9.5>, <4.5, 9.5>, <5.0, 8.8> <7.5, 8.5>, <6.0, 8.8>, <4.0, 8.8>, <4.5, 8.1>
rotate <-90, 0, 0> rotate <-90, 0, 0>
texture { texture {
pigment { White } pigment { White }
@ -684,8 +719,8 @@
#declare ring = #declare ring =
union { union {
torus { torus {
5.7, 0.8 5.2, 0.8
translate <0, 8.0, 0> translate <0, 7.4, 0>
texture { texture {
pigment { DarkSlateGray } pigment { DarkSlateGray }
} }
@ -714,19 +749,19 @@
union { union {
object { object {
turm turm
translate <-12, 0, -12> translate <-pos_turm, 0, -pos_turm>
} }
object { object {
turm turm
translate <-12, 0, +12> translate <-pos_turm, 0, +pos_turm>
} }
object { object {
turm turm
translate <+12, 0, +12> translate <+pos_turm, 0, +pos_turm>
} }
object { object {
turm turm
translate <+12, 0, -12> translate <+pos_turm, 0, -pos_turm>
} }
object { object {
block_paar block_paar
@ -752,4 +787,13 @@
object { object {
ring ring
} }
cone {
<0, 0, 0>, 15.0
<0, 0.005, 0>, 15.0
texture {
pigment {
Blue
}
}
}
} }

Binary file not shown.

After

Width:  |  Height:  |  Size: 65 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 249 B