diff --git a/pr/schneller_kreuzer/GNUmakefile b/pr/schneller_kreuzer/GNUmakefile index 883670e..6fc499f 100644 --- a/pr/schneller_kreuzer/GNUmakefile +++ b/pr/schneller_kreuzer/GNUmakefile @@ -3,6 +3,7 @@ include GNUmakevars all: \ + test-deck_06.png \ test-deck_05.png \ test-deck_08.png \ test-feldschirm_projektor.png \ @@ -177,5 +178,8 @@ test-deck_08.png: test-deck_08.pov deck_08.pov \ test-deck_05.png: test-deck_05.pov deck_05.pov \ speicherbank.pov +test-deck_06.png: test-deck_06.pov deck_05.pov deck_06.pov \ + speicherbank.pov + %.gif: %.ppm ppmquant 256 $< | ppmtogif > $@ diff --git a/pr/schneller_kreuzer/deck_06.pov b/pr/schneller_kreuzer/deck_06.pov new file mode 100644 index 0000000..75b3b46 --- /dev/null +++ b/pr/schneller_kreuzer/deck_06.pov @@ -0,0 +1,105 @@ +#include "treibstofftank.pov" +#include "speicherbank.pov" +#include "kraftwerk.pov" + +#local Z = -25; + +#declare deck_06 = + union { + #if (1) + intersection { + union { + difference { + object { huelle } + // Ausschnitte + } + } + box { + <-50, Z+5, -50> + < 50, Z, 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 } + } + + + #if (SCHNITT_1) + intersection { + torus { + 23, 23 + } + plane { + <0, 0, -1> 0 + rotate <0, 45, 0> + } + plane { + <0, 0, +1> 0 + rotate <0, -45, 0> + } + rotate <0, 135, 0> + translate <0, Z, 0> + } + #end + + // Ausschnitt für Speicherbänke + torus { + 10, 5 + translate <0, Z, 0> + } + // Ausschnitte für Kraftwerke + #local rr = 24; + #local da = 30; + #local aa = da/2; + #while (aa <= 360 - da) + #local ss = 1; + #if (ss) + object { + cone { + <0, -1, 0>, 2.5 + <0, +1, 0>, 2.5 + } + + translate + rotate <0, aa, 0> + } + #end + #local aa = aa + da; + #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(, <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 + #end + + + } + diff --git a/pr/schneller_kreuzer/schneller_kreuzer.pov b/pr/schneller_kreuzer/schneller_kreuzer.pov index 9c8bb0f..5bac70a 100644 --- a/pr/schneller_kreuzer/schneller_kreuzer.pov +++ b/pr/schneller_kreuzer/schneller_kreuzer.pov @@ -14,6 +14,7 @@ #include "deck_11.pov" #include "ringwulst.pov" #include "deck_08.pov" +#include "deck_06.pov" #include "deck_05.pov" #include "deck_03.pov" #include "deck_02.pov" @@ -58,6 +59,9 @@ object { deck_08 } + object { + deck_06 + } object { deck_05 } diff --git a/pr/schneller_kreuzer/test-deck_01.pov b/pr/schneller_kreuzer/test-deck_01.pov index e72f6c6..febd601 100644 --- a/pr/schneller_kreuzer/test-deck_01.pov +++ b/pr/schneller_kreuzer/test-deck_01.pov @@ -4,7 +4,7 @@ #include "metals.inc" #include "stones.inc" -#declare SCHNITT_1 = 1; // Quadrant -/*/- +// #declare SCHNITT_1 = 1; // Quadrant -/*/- global_settings { assumed_gamma 1.0 diff --git a/pr/schneller_kreuzer/test-deck_05.pov b/pr/schneller_kreuzer/test-deck_05.pov index 9d2726b..3a04f8a 100644 --- a/pr/schneller_kreuzer/test-deck_05.pov +++ b/pr/schneller_kreuzer/test-deck_05.pov @@ -6,6 +6,7 @@ #include "landestuetze.pov" #declare SCHNITT_1 = 1; // Quadrant -/*/- +#declare XZ_GRID = 0; global_settings { assumed_gamma 1.0 @@ -17,7 +18,7 @@ light_source { color White } -#local CP = <-100, 60, -100>; +#local CP = <-90, 60, -90>; light_source { CP color White*0.5 @@ -25,7 +26,7 @@ light_source { camera { orthographic location CP - look_at <-0, 20, 0> + look_at <-0, 30, -0> angle 20 } @@ -44,30 +45,30 @@ union { } #local i = i + 1; #end - 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> } - } + #if (XZ_GRID) + #local xx = -40; + #while (xx <= 40) + + cylinder { + , + , + 0.1 + 0.1 * (mod(xx, 10) = 0) + pigment { color <1, 0, 0> } + } + #local xx = xx + 1; + #end + #local zz = -40; + #while (zz <= 40) + + cylinder { + <-100, 0, zz>, + <+100, 0, zz>, + 0.1 + 0.1 * (mod(zz, 10) = 0) + pigment { color <0, 0, 1> } + } + #local zz = zz + 1; + #end + #end translate <0, 55, 0> } @@ -86,24 +87,5 @@ cylinder { } -/* -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> } -} -*/ diff --git a/pr/schneller_kreuzer/test-deck_06.pov b/pr/schneller_kreuzer/test-deck_06.pov new file mode 100644 index 0000000..45f042b --- /dev/null +++ b/pr/schneller_kreuzer/test-deck_06.pov @@ -0,0 +1,95 @@ +#include "colors.inc" +#include "shapes.inc" +#include "textures.inc" +#include "metals.inc" +#include "stones.inc" +#include "landestuetze.pov" + +#declare SCHNITT_1 = 1; // Quadrant -/*/- +#declare XZ_GRID = 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 = <-90, 60, -90>; +light_source { + CP + color White*0.5 +} +camera { + orthographic + location CP + look_at <-0, 30, -0> + angle 20 +} + +#include "huelle.pov" +#include "deck_05.pov" +#include "deck_06.pov" + +union { + object { + deck_05 + } + object { + deck_06 + } + #local i = 0; + #while (i < 12) + object { + landestuetze + rotate <0, i * 30, 0> + } + #local i = i + 1; + #end + #if (XZ_GRID) + #local xx = -40; + #while (xx <= 40) + + cylinder { + , + , + 0.1 + 0.1 * (mod(xx, 10) = 0) + pigment { color <1, 0, 0> } + } + #local xx = xx + 1; + #end + #local zz = -40; + #while (zz <= 40) + + cylinder { + <-100, 0, zz>, + <+100, 0, zz>, + 0.1 + 0.1 * (mod(zz, 10) = 0) + pigment { color <0, 0, 1> } + } + #local zz = zz + 1; + #end + #end + 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 + } +} + + + +