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: \
test-transitionstriebwerk.png \
test-deck_07.png \
test-deck_04.png \
test-feldschirm_projektor_v.png \
test-deck_06.png \
@ -69,7 +71,10 @@ test-schneller_kreuzer.png: test-schneller_kreuzer.pov \
ringwulst.pov triebwerk.pov \
landestuetze.pov \
deck_08.pov \
deck_07.pov \
deck_06.pov \
deck_05.pov \
deck_04.pov \
deck_03.pov \
feldschirm_projektor_v.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_07.png: test-deck_07.pov deck_07.pov \
test-transitionstriebwerk.png: test-transitionstriebwerk.pov transitionstriebwerk.pov \
%.gif: %.ppm
ppmquant 256 $< | ppmtogif > $@

View File

@ -75,6 +75,26 @@
cylinder {
<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)
intersection {
torus {
@ -106,54 +126,71 @@
// Ausschnitt f. Landestützen
#local aa = 0;
#while (aa < 360 )
difference {
union {
cone {
<23, Z+0.2, 0>, 2.1
<23, Z+4.8, 0>, 2.1
#local ss = 1;
#if (SCHNITT_1 & (aa >= 120 & aa <= 150))
#local ss = 0;
#end
#if (ss)
difference {
union {
cone {
<23, Z+0.2, 0>, 2.1
<23, Z+4.8, 0>, 2.1
}
box {
<23, Z+0.2, -2.1>
<28, Z+4.8, +2.1>
}
cone {
<28, Z+0.2, 0>, 2.1
<28, Z+4.8, 0>, 2.1
}
texture { T_arkonstahl }
rotate <0, aa, 0>
}
box {
<23, Z+0.2, -2.1>
<28, Z+4.8, +2.1>
union {
cone {
<23, Z+0.1, 0>, 2
<23, Z+4.9, 0>, 2
}
box {
<23, Z+0.1, -2>
<28, Z+4.9, +2>
}
cone {
<28, Z+0.1, 0>, 2
<28, Z+4.9, 0>, 2
}
texture { T_arkonstahl }
rotate <0, aa, 0>
}
cone {
<28, Z+0.2, 0>, 2.1
<28, Z+4.8, 0>, 2.1
object {
landestuetze_neg
color Red
rotate <0, aa, 0>
}
texture { T_arkonstahl }
rotate <0, aa, 0>
}
union {
cone {
<23, Z+0.1, 0>, 2
<23, Z+4.9, 0>, 2
}
box {
<23, Z+0.1, -2>
<28, Z+4.9, +2>
}
cone {
<28, Z+0.1, 0>, 2
<28, Z+4.9, 0>, 2
}
texture { T_arkonstahl }
rotate <0, aa, 0>
}
}
#end
#local aa = aa + 30;
#end
#local ii = 0;
#while (ii < 12)
object {
treibstofftank_block
rotate <0, ii*30, 0>
}
object {
treibstofftank_block
scale <1, 1, -1>
rotate <0, ii*30, 0>
}
#local ss = 1;
#if (SCHNITT_1 & (ii >= 3 & ii <= 6))
#local ss = 0;
#end
#if (ss)
object {
treibstofftank_block
rotate <0, ii*30, 0>
}
object {
treibstofftank_block
scale <1, 1, -1>
rotate <0, ii*30, 0>
}
#end
#local ii = ii + 1;
#end

View File

@ -4,6 +4,42 @@
#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 =
union {
#if (1)
@ -68,32 +104,25 @@
#end
}
#if (1)
// Treibstofftanks
#local rr = 30.5;
#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;
#if (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 ii = 0;
#while (ii < 12)
#local ss = 1;
#if (SCHNITT_1 & (ii >= 3 & ii <= 6))
#local ss = 0;
#end
#local rr = rr + 1.0;
#end
#if (ss)
object {
treibstofftank_block
rotate <0, ii*30, 0>
}
object {
treibstofftank_block
scale <1, 1, -1>
rotate <0, ii*30, 0>
}
#end
#local ii = ii + 1;
#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 "feldschirm_projektor.pov"
#include "treibstofftank.pov"
#include "transitionstriebwerk.pov"
#local Z = -15;
#declare deck_08 =
union {
@ -29,7 +32,7 @@
texture { pigment { rgb < 1, 0, 0 > } }
}
torus {
(15+6)/2, (15-6)/2
24, 5
translate <0, -15.0, 0>
}
#ifdef (SCHNITT_1)
@ -59,7 +62,7 @@
// Treibstofftanks
#local rr = 25.5;
#local rr = 24+5.5;
#while (rr < 40.0)
#local da = degrees(asin(0.5/rr))*2;
#local da = 360 / int(360 / da);
@ -96,5 +99,9 @@
#end
#local a = a + 20;
#end
object {
transitionstriebwerk
translate <0, Z+0.2, 0>
}
}

View File

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

View File

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

View File

@ -17,7 +17,7 @@ light_source {
color White
}
#local CP = <25, 95, -0>;
#local CP = <0, 20, -100>;
light_source {
CP
color White*0.5
@ -25,7 +25,7 @@ light_source {
camera {
orthographic
location CP
look_at <25, 20.0, 0>
look_at <0, 20.0, 0>
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 "deck_08.pov"
#include "deck_05.pov"
object {
deck_08
}
object {
deck_05
}
cylinder {
<0, -15, 0>,
<0, -16, 0>, 1000
<0, -30, 0>,
<0, -31, 0>, 1000
pigment {
radial
color_map{

View File

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

View File

@ -20,7 +20,7 @@ light_source {
color White*0.5
}
camera {
orthographic
// orthographic
location <7, 1.8, 15>
look_at <0, 0.5, 5>
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 { <-23.5, 9.6, 0> colour White }
camera {
location <20, 40, 20>
look_at <0, 0, 0>
location <-13, 10, -13>
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>, -15 texture {pigment {color White}}}
#if (0)
difference {
cone {
<0, 0, 0> 25,
@ -26,6 +31,7 @@ difference {
<0, 0, 0> 24,
<0, 16, 0> 24
}
// Schotts
box {
<-1.5, 0, -25>
<+1.5, 5, +25>
@ -36,6 +42,7 @@ difference {
}
texture {pigment {color White}}
}
#end
#include "transitionstriebwerk.pov"

View File

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