diff --git a/pr/ritterschiff/.vimrc b/pr/ritterschiff/.vimrc new file mode 100644 index 0000000..a2bc1c9 --- /dev/null +++ b/pr/ritterschiff/.vimrc @@ -0,0 +1,29 @@ +version 5.0 +set nocompatible +let cpo_save=&cpo +set cpo=B +map! +map! +map! +map! +map! +map! +map! +map! +map! +map! +map +map +map +map +map +map +map +map +map +map +let &cpo=cpo_save +unlet cpo_save +set autoindent +set exrc +set shiftwidth=4 diff --git a/pr/ritterschiff/GNUmakefile b/pr/ritterschiff/GNUmakefile new file mode 100644 index 0000000..3f1439b --- /dev/null +++ b/pr/ritterschiff/GNUmakefile @@ -0,0 +1,31 @@ +# what's where? +include GNUmakevars + + +all: \ + test-sporenschiff.png \ + test-mittelteil.png \ + test-ritterschiff.png \ + + +%.ppm: %.pov + $(POVRAY) +W$(WIDTH) +H$(HEIGHT) +V -I$< +L$(POVINC) +D +FP + +%.png: %.pov + $(POVRAY) +V -I$< +L$(POVINC) +D +FN + +%.pov: make% + $< > $@ + +test-ritterschiff.png: test-ritterschiff.pov \ + ritterschiff.pov sporenschiff.pov mittelteil.pov + $(POVRAY) +W800 +H400 +V -I$< +L$(POVINC) +D + +test-sporenschiff.png: test-sporenschiff.pov \ + sporenschiff.pov + +test-mittelteil.png: test-mittelteil.pov \ + mittelteil.pov + +%.gif: %.ppm + ppmquant 256 $< | ppmtogif > $@ diff --git a/pr/ritterschiff/mittelteil.pov b/pr/ritterschiff/mittelteil.pov new file mode 100644 index 0000000..cae6af2 --- /dev/null +++ b/pr/ritterschiff/mittelteil.pov @@ -0,0 +1,88 @@ +#local R = 1750/2 * M; +#local R1 = 50 * M; +#local L = 3000 * M; +#local W = 500; + +#debug concat("M = ", str(M, 0, 0), "\n") + +#ifdef (muelltonne) + #declare mittelteil = + union { + lathe { + bezier_spline + 12 + <0, -30*L/60> + + + + + + + + + + + + + <0, +30*L/60> + texture { pigment { color <0.3, 0.3, 0.3> } } + } + torus { + R, R1 + texture { pigment { color <0.6, 0.6, 0.6> } } + translate <0, L/3, 0> + } + torus { + R, R1 + texture { pigment { color <0.6, 0.6, 0.6> } } + translate <0, 0, 0> + } + torus { + R, R1 + texture { pigment { color <0.6, 0.6, 0.6> } } + translate <0, -L/3, 0> + } + } +#end + +#declare mittelteil = + union { + lathe { + bezier_spline + 12 + <0, -30*L/60> + <16*R/35, -25*L/60> + + + + + + + + + + + <16*R/35, +25*L/60> + <0, +30*L/60> + + texture { pigment { color <0.3, 0.3, 0.3> } } + } + torus { + 22*R/35, R1 + texture { pigment { color <0.6, 0.6, 0.6> } } + translate <0, L/3, 0> + } + torus { + R, R1 + texture { pigment { color <0.6, 0.6, 0.6> } } + translate <0, 0, 0> + } + #if (1) + torus { + 45*R/70, R1 + texture { pigment { color <0.6, 0.6, 0.6> } } + translate <0, -L/3, 0> + } + #end + rotate <0, 0, 90> + } diff --git a/pr/ritterschiff/povray.ini b/pr/ritterschiff/povray.ini new file mode 100644 index 0000000..49be253 --- /dev/null +++ b/pr/ritterschiff/povray.ini @@ -0,0 +1,6 @@ ++MB5 ++QR ++A ++HTN ++fp +w640 +h480 +d1 +display_gamma = 2.2 diff --git a/pr/ritterschiff/ritterschiff.pov b/pr/ritterschiff/ritterschiff.pov new file mode 100644 index 0000000..5c31a7e --- /dev/null +++ b/pr/ritterschiff/ritterschiff.pov @@ -0,0 +1,17 @@ +#include "mittelteil.pov" +#include "sporenschiff.pov" + +#declare ritterschiff = + union { + object { + mittelteil + } + object { + sporenschiff + translate <(3000+1750)/2 * M, 0, 0> + } + object { + sporenschiff + translate <-(3000+1750)/2 * M, 0, 0> + } + } diff --git a/pr/ritterschiff/sporenschiff.pov b/pr/ritterschiff/sporenschiff.pov new file mode 100644 index 0000000..52c2042 --- /dev/null +++ b/pr/ritterschiff/sporenschiff.pov @@ -0,0 +1,42 @@ +#local R = 1300/2 * M; +#local H = 225 * M; +#local RS = 20 * M; + +#declare stachel = + cone { + <0, 0, 0>, RS, + <0, H, 0>, 0 + } + +#declare sporenschiff = + union { + sphere { + <0, 0, 0>, R + } + #local I = 0; + #while (I < 32) + object { + stachel + translate <0, R, 0> + rotate <0, 0, 90> + rotate <0, I * 360 / 32, 0> + } + #local J = 0; + #while (J < 32) + object { + stachel + translate <0, R, 0> + rotate <0, 0, I * 360 / 32> + rotate <0, J * 180 / 4, 0> + } + #local J = J + 1; + #end + #local I = I + 1; + #end + texture { + pigment { + color <0.3, 0.3, 0.3> + } + } + } + diff --git a/pr/ritterschiff/test-mittelteil.pov b/pr/ritterschiff/test-mittelteil.pov new file mode 100644 index 0000000..031ae5b --- /dev/null +++ b/pr/ritterschiff/test-mittelteil.pov @@ -0,0 +1,72 @@ +#include "colors.inc" +#include "shapes.inc" +#include "textures.inc" +#include "metals.inc" +#include "stones.inc" + +#declare SCHNITT_1 = 1; // Quadrant -/*/- + +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 { + <-20000, 20000, -20000> + color White +} + +#local CP = <0, -1000, -5000>; +light_source { + CP + color White*0.5 +} +camera { + location CP + look_at <-0, -1000, -0> + angle 32 + orthographic +} + +#include "mittelteil.pov" + + object { + mittelteil + } + +#declare gatter = + union { + #local I = -50; + #while (I <= 50) + #switch (mod(I, 10) ) + #case (0) + #local Color = color <0, 1, 0>; + #local R = 0.2; + #break; + #case (5) + #case (-5) + #local Color = color <1, 0, 0>; + #local R = 0.15; + #break; + #else + #local Color = color <0, 0, 1>; + #local R = 0.1; + #end + + cylinder { + , R + texture {pigment { color Color } } + } + cylinder { + <-50, I, 0>, <+50, I, 0> R + texture {pigment { color Color } } + } + #local I = I + 1; + #end + + } + +object { + gatter + scale 100 +} diff --git a/pr/ritterschiff/test-ritterschiff.pov b/pr/ritterschiff/test-ritterschiff.pov new file mode 100644 index 0000000..bbbcb9e --- /dev/null +++ b/pr/ritterschiff/test-ritterschiff.pov @@ -0,0 +1,74 @@ +#include "colors.inc" +#include "shapes.inc" +#include "textures.inc" +#include "metals.inc" +#include "stones.inc" + +#declare SCHNITT_1 = 1; // Quadrant -/*/- + +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 { + <-20000, 20000, -20000> + color White +} + +#local CP = <0, -0, -10000>; +light_source { + CP + color White*0.5 +} +camera { + location CP + look_at <-0, -0, -0> + orthographic + up <0, 4000, 0> + right <8000, 0, 0> +} + +#include "ritterschiff.pov" + + object { + ritterschiff + } + +#declare gatter = + union { + #local I = -50; + #while (I <= 50) + #switch (mod(I, 10) ) + #case (0) + #local Color = color <0, 1, 0>; + #local R = 0.2; + #break; + #case (5) + #case (-5) + #local Color = color <1, 0, 0>; + #local R = 0.15; + #break; + #else + #local Color = color <0, 0, 1>; + #local R = 0.1; + #end + + cylinder { + , R + texture {pigment { color Color } } + } + cylinder { + <-50, I, 0>, <+50, I, 0> R + texture {pigment { color Color } } + } + #local I = I + 1; + #end + + } + +object { + gatter + scale 100 +} + diff --git a/pr/ritterschiff/test-sporenschiff.pov b/pr/ritterschiff/test-sporenschiff.pov new file mode 100644 index 0000000..6276f18 --- /dev/null +++ b/pr/ritterschiff/test-sporenschiff.pov @@ -0,0 +1,37 @@ +#include "colors.inc" +#include "shapes.inc" +#include "textures.inc" +#include "metals.inc" +#include "stones.inc" + +#declare SCHNITT_1 = 1; // Quadrant -/*/- + +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 { + <-20000, 20000, -20000> + color White +} + +#local CP = <-2500, 2000, -1500>; +light_source { + CP + color White*0.5 +} +camera { + location CP + look_at <-0, 60, -0> + angle 32 +} + +#include "sporenschiff.pov" + + object { + sporenschiff + } + + +