From 256c18df0537d3471016aecf5e5b5203d0aa19ce Mon Sep 17 00:00:00 2001 From: hjp Date: Sun, 23 Jan 2000 20:05:04 +0000 Subject: [PATCH] Metagrav (Rohfassung) --- pr/entdecker/.vimrc | 5 + pr/entdecker/GNUmakefile | 12 +- pr/entdecker/entdecker.pov | 48 ++++---- pr/entdecker/kombiblock.pov | 11 ++ pr/entdecker/metagrav.pov | 182 ++++++++++++++++++++++++++++ pr/entdecker/polansicht.pov | 66 ++++++++++ pr/entdecker/povray.ini | 2 +- pr/entdecker/test-entdecker.pov | 17 ++- pr/entdecker/test-metagrav.pov | 91 ++++++++++++++ pr/entdecker/ynkelonium_texture.pov | 2 +- 10 files changed, 409 insertions(+), 27 deletions(-) create mode 100644 pr/entdecker/metagrav.pov create mode 100644 pr/entdecker/polansicht.pov create mode 100644 pr/entdecker/test-metagrav.pov diff --git a/pr/entdecker/.vimrc b/pr/entdecker/.vimrc index 16dff2a..630f9b2 100644 --- a/pr/entdecker/.vimrc +++ b/pr/entdecker/.vimrc @@ -25,3 +25,8 @@ map let &cpo=cpo_save unlet cpo_save set autoindent +set exrc +set number +set shiftwidth=4 +set showmatch +set nowrap diff --git a/pr/entdecker/GNUmakefile b/pr/entdecker/GNUmakefile index 540b0ac..4d30494 100644 --- a/pr/entdecker/GNUmakefile +++ b/pr/entdecker/GNUmakefile @@ -3,12 +3,14 @@ include GNUmakevars all: \ + entdecker1.ppm \ + polansicht.ppm \ test-antigrav.ppm \ test-aussenstromgravojet.ppm \ test-entdecker.ppm \ test-impulstriebwerk.ppm \ test-kombiblock.ppm \ - entdecker1.ppm \ + test-metagrav.ppm \ @@ -18,11 +20,19 @@ all: \ %.pov: make% $< > $@ +polansicht.ppm: test-entdecker.pov entdecker.pov test-antigrav.ppm: test-antigrav.pov antigrav.pov test-aussenstromgravojet.ppm: test-aussenstromgravojet.pov aussenstromgravojet.pov test-entdecker.ppm: test-entdecker.pov entdecker.pov test-impulstriebwerk.ppm: test-impulstriebwerk.pov impulstriebwerk.pov test-kombiblock.ppm: test-kombiblock.pov kombiblock.pov +test-metagrav.ppm: test-metagrav.pov metagrav.pov %.gif: %.ppm ppmquant 256 $< | ppmtogif > $@ + +%.jpg: %.ppm + cjpeg $< > $@ + +www/%: % + cp $< $@ diff --git a/pr/entdecker/entdecker.pov b/pr/entdecker/entdecker.pov index ded13d8..74cd5d9 100644 --- a/pr/entdecker/entdecker.pov +++ b/pr/entdecker/entdecker.pov @@ -14,15 +14,18 @@ #declare triebwerk_neg = difference { cone { - <0, 600, 0>, 900, - <0, 500, 0>, 900 + <0, 599, 0>, 900, + <0, 501, 0>, 900 } cone { - <0, 600, 0>, 600, - <0, 500, 0>, 600 + <0, 599, 0>, 600, + <0, 501, 0>, 600 } } +#include "kombiblock.pov" +#include "metagrav.pov" + #declare entdecker = union { difference { @@ -44,26 +47,29 @@ triebwerk_neg scale <1, -1, 1> } - texture { pigment { color Red } } + texture {Ynkelonium_Texture } } -#if (0) - intersection { - sphere { - <0, 0, 0>, 901 - } - union { - cone { - <0, 500, 0>, 900, - <0, 600, 0>, 900 - } - cone { - <0, -500, 0>, 900, - <0, -600, 0>, 900 + + #declare i = 0; + #while (i < 360) + #declare j = -1; + #while (j <= +1) + object { + kombiblock_oben + rotate <0, i + 20*j, 0> + translate <0, 500, 0> } + #declare j = j + 1; + #end + + object { + metagrav + translate <-740, 501, 0> + rotate <0, i + 45, 0> } - texture { pigment { color Yellow } } - } -#end + + #declare i = i + 90; + #end } diff --git a/pr/entdecker/kombiblock.pov b/pr/entdecker/kombiblock.pov index 04cc4f0..377f8fa 100644 --- a/pr/entdecker/kombiblock.pov +++ b/pr/entdecker/kombiblock.pov @@ -1,6 +1,17 @@ #include "aussenstromgravojet.pov" #include "antigrav.pov" #include "impulstriebwerk.pov" +/* + * Ein Kombiaggregat aus Außenstromgravojet, Antigrav und Impulstriebwerk. + * + * Verwendung: + * Davon gibt es 12 Stück, die aber nicht ganz gleichmäßig verteilt sein + * können, da dazwischen ja noch die 4 Metagravtriebwerke sitzen. Am + * besten jeweils 3 mit 20° Abstand, und dann eine 30° Lücke für das MG? + * + * Der Nullpunkt liegt im Zentrum des Triebwerksrings, so daß der Block + * leicht rotiert werden kann. + */ #declare kombiblock_oben = union { object { diff --git a/pr/entdecker/metagrav.pov b/pr/entdecker/metagrav.pov new file mode 100644 index 0000000..2408dc8 --- /dev/null +++ b/pr/entdecker/metagrav.pov @@ -0,0 +1,182 @@ +#declare pk_x = 30; +#declare pk_z = 40; +#declare pk_r = 8; +#declare projektorkopf = + union { + #if (1) + prism { + conic_sweep + bezier_spline + 1, + 44/60, + 32 + <-(pk_x), -(pk_z-pk_r)>, <-(pk_x), 0>, <-(pk_x), 0>, <-(pk_x), +(pk_z-pk_r)>, // kl + <-(pk_x), +(pk_z-pk_r)>, <-(pk_x), +(pk_z)>, <-(pk_x), +(pk_z)>, <-(pk_x-pk_r), +(pk_z)>, // rlo + <-(pk_x-pk_r), +(pk_z)>, <0, +(pk_z)>, <0, +(pk_z)>, <+(pk_x-pk_r), +(pk_z)>, // ko + <+(pk_x-pk_r), +(pk_z)>, <+(pk_x), +(pk_z)>, <+(pk_x), +(pk_z)>, <+(pk_x), +(pk_z-pk_r)>, // rro + <+(pk_x), +(pk_z-pk_r)>, <+(pk_x), 0>, <+(pk_x), 0>, <+(pk_x), -(pk_z-pk_r)>, // kr + <+(pk_x), -(pk_z-pk_r)>, <+(pk_x), -(pk_z)>, <+(pk_x), -(pk_z)>, <+(pk_x-pk_r), -(pk_z)>, // rru + <+(pk_x-pk_r), -(pk_z)>, <0, -(pk_z)>, <0, -(pk_z)>, <-(pk_x-pk_r), -(pk_z)>, // ku + <-(pk_x-pk_r), -(pk_z)>, <-(pk_x), -(pk_z)>, <-(pk_x), -(pk_z)>, <-(pk_x), -(pk_z-pk_r)> // rlu + + scale <1, 22/(1-44/60), 1> + translate <30, 102-22/(1-44/60), 0> + } + difference { + prism { + linear_sweep + bezier_spline + 0, + 6 + 32 + <-(pk_x), -(pk_z-pk_r)>, <-(pk_x), 0>, <-(pk_x), 0>, <-(pk_x), +(pk_z-pk_r)>, // kl + <-(pk_x), +(pk_z-pk_r)>, <-(pk_x), +(pk_z)>, <-(pk_x), +(pk_z)>, <-(pk_x-pk_r), +(pk_z)>, // rlo + <-(pk_x-pk_r), +(pk_z)>, <0, +(pk_z)>, <0, +(pk_z)>, <+(pk_x-pk_r), +(pk_z)>, // ko + <+(pk_x-pk_r), +(pk_z)>, <+(pk_x), +(pk_z)>, <+(pk_x), +(pk_z)>, <+(pk_x), +(pk_z-pk_r)>, // rro + <+(pk_x), +(pk_z-pk_r)>, <+(pk_x), 0>, <+(pk_x), 0>, <+(pk_x), -(pk_z-pk_r)>, // kr + <+(pk_x), -(pk_z-pk_r)>, <+(pk_x), -(pk_z)>, <+(pk_x), -(pk_z)>, <+(pk_x-pk_r), -(pk_z)>, // rru + <+(pk_x-pk_r), -(pk_z)>, <0, -(pk_z)>, <0, -(pk_z)>, <-(pk_x-pk_r), -(pk_z)>, // ku + <-(pk_x-pk_r), -(pk_z)>, <-(pk_x), -(pk_z)>, <-(pk_x), -(pk_z)>, <-(pk_x), -(pk_z-pk_r)> // rlu + + } + prism { + linear_sweep + bezier_spline + 0, + 6 + 32 + <-(pk_x), -(pk_z-pk_r)>, <-(pk_x), 0>, <-(pk_x), 0>, <-(pk_x), +(pk_z-pk_r)>, // kl + <-(pk_x), +(pk_z-pk_r)>, <-(pk_x), +(pk_z)>, <-(pk_x), +(pk_z)>, <-(pk_x-pk_r), +(pk_z)>, // rlo + <-(pk_x-pk_r), +(pk_z)>, <0, +(pk_z)>, <0, +(pk_z)>, <+(pk_x-pk_r), +(pk_z)>, // ko + <+(pk_x-pk_r), +(pk_z)>, <+(pk_x), +(pk_z)>, <+(pk_x), +(pk_z)>, <+(pk_x), +(pk_z-pk_r)>, // rro + <+(pk_x), +(pk_z-pk_r)>, <+(pk_x), 0>, <+(pk_x), 0>, <+(pk_x), -(pk_z-pk_r)>, // kr + <+(pk_x), -(pk_z-pk_r)>, <+(pk_x), -(pk_z)>, <+(pk_x), -(pk_z)>, <+(pk_x-pk_r), -(pk_z)>, // rru + <+(pk_x-pk_r), -(pk_z)>, <0, -(pk_z)>, <0, -(pk_z)>, <-(pk_x-pk_r), -(pk_z)>, // ku + <-(pk_x-pk_r), -(pk_z)>, <-(pk_x), -(pk_z)>, <-(pk_x), -(pk_z)>, <-(pk_x), -(pk_z-pk_r)> // rlu + + scale <0.9, 1.01, 0.9> + + } + translate <30, 102, 0> + } + #end + #if (0) + cone { + <80, 0, 0>, 5 + <80, 110, 0>, 5 + pigment { color Red } + } + #end + intersection { + torus { + 40, 20 + rotate <90, 0, 0> + scale <1, 1, pk_z/pk_x> + } + box { + <-60, -60, -60> + < 0, 0, 60> + } + translate <70, 80, 0> + pigment { color Yellow } + } + cone { + <0, 0, 0>, 20, + <10, 0, 0>, 20 + scale < 1, 1, pk_z/pk_x> + translate <70, 40, 0> + pigment { color Yellow } + } + #if (1) + cone { + <0, 0, 0>, 24, + <10, 0, 0>, 24 + scale < 1, 1, 50/24> + translate <80, 40, 0> + } + #end + box { + <80, 0, -50> + <90, 40, 50> + } + cone { + <90, 40, 0>, 14, + <122, 40, 0>, 14 + translate <0, 0, -16> + } + + cone { + <90, 40, 0>, 14, + <122, 40, 0>, 14 + translate <0, 0, +16> + } + + } + +#declare metagrav = + union { + //bodenplatte + prism { + linear_sweep + linear_spline + -100, 100, + 5, + <0, 0>, <10, 20>, <206, 20>, <206, 0>, <0, 0> + rotate <-90, 0, 0> + } + + object { + projektorkopf + translate <0, 0, 50> + } + + object { + projektorkopf + translate <0, 0, 50> + scale <1, 1, -1> + } + + // Hauptaggregateblock + box { + <122, 20, -100> + <178, 48, 100> + } + box { + <118, 20, -100> + <122, 40, 100> + } + cone { + <0, 0, -1>, 1 + <0, 0, 1>, 1 + scale <4, 8, 100> + translate <122, 40, 0> + } + + prism { + linear_sweep + linear_spline + -90, 90 + 5 + <122, 48>, <122, 80>, <128, 80>, <148, 48>, <122, 48> + rotate <-90, 0, 0> + } + + prism { + linear_sweep + linear_spline + -80, 80 + 6 + <128, 80>, <148, 48>, <160, 48>, <180, 90>, <128, 90>, <128, 80> + rotate <-90, 0, 0> + } + box { + <148, 0, -60> + <280, 80, 60> + } + + pigment { + checker color White*0.7, color White*0.5 + scale 10 + } + + } diff --git a/pr/entdecker/polansicht.pov b/pr/entdecker/polansicht.pov new file mode 100644 index 0000000..26ce9bb --- /dev/null +++ b/pr/entdecker/polansicht.pov @@ -0,0 +1,66 @@ +#include "colors.inc" +#include "shapes.inc" +#include "textures.inc" +#include "metals.inc" +#include "stones.inc" + +global_settings { + assumed_gamma 1.0 + ambient_light rgb<0.5, 0.5, 0.5> +} + +light_source { + <2000, 2000, 2000> + color White +} + +light_source { + <2000, 2000, -2000> + color rgb <0.8, 0.8, 1> +} + +//#declare Camera_Totale = 1; +//#declare Camera_Triebwerk = 1; +#declare Camera_Pol = 1; + +#ifdef (Camera_Pol) +camera { + location <1, 4700, 0> + look_at <0, 1800, 0> + angle 40 +} +#end + +#ifdef (Camera_Triebwerk) +camera { + location <1650, 1700, 0> + look_at <650, 1500, 0> +} +#end + +#ifdef (Camera_Totale) +camera { + location <4000, 1800, 0> + look_at <0, 800, 0> + angle 40 + +} +#end + +#include "entdecker.pov" + +object { + entdecker + translate <0, 930, 0> +} + + +#if (1) +background { color rgb<0.2, 0.4, 0.8> } +plane { + <0, 1, 0>, 0 + pigment { + checker color White*0.7, color White*0.5 + } +} +#end diff --git a/pr/entdecker/povray.ini b/pr/entdecker/povray.ini index 08acba5..c25f31a 100644 --- a/pr/entdecker/povray.ini +++ b/pr/entdecker/povray.ini @@ -1,4 +1,4 @@ --A ++A +QR +HTP +fp +w400 +h300 diff --git a/pr/entdecker/test-entdecker.pov b/pr/entdecker/test-entdecker.pov index af12aa0..0681ffc 100644 --- a/pr/entdecker/test-entdecker.pov +++ b/pr/entdecker/test-entdecker.pov @@ -8,7 +8,7 @@ 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 { <2000, 2000, 2000> color White @@ -20,11 +20,21 @@ light_source { } #declare Camera_Totale = 1; +//#declare Camera_Triebwerk = 1; +//#declare Camera_Pol = 1; + +#ifdef (Camera_Pol) +camera { + location <1, 4700, 0> + look_at <0, 1800, 0> + angle 40 +} +#end #ifdef (Camera_Triebwerk) camera { location <1650, 1700, 0> - look_at <1250, 1300, 0> + look_at <650, 1500, 0> } #end @@ -45,7 +55,8 @@ object { } -#if (0) +#if (1) +background { color rgb<0.2, 0.4, 0.8> } plane { <0, 1, 0>, 0 pigment { diff --git a/pr/entdecker/test-metagrav.pov b/pr/entdecker/test-metagrav.pov new file mode 100644 index 0000000..4e3008a --- /dev/null +++ b/pr/entdecker/test-metagrav.pov @@ -0,0 +1,91 @@ +#include "colors.inc" +#include "shapes.inc" +#include "textures.inc" +#include "metals.inc" +#include "stones.inc" + +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 { + <2000, 2000, -2000> + color <1.0, 0.5, 0.5> +} + +light_source { + <-2000, 2000, -2000> + color <0.5, 0.5, 1.0> +} + +//#declare Camera_Ortho_z = 1; +//#declare Camera_Ortho_x = 1; +#declare Camera_Triebwerk = 1; + +#ifdef (Camera_Triebwerk) +camera { + location <-800, 400, 300> + look_at <30, 100, 0> + angle 20 +} +#end + +#ifdef (Camera_Ortho_z) +camera { + location <140, 50, -250> + look_at <140, 50, 0> + orthographic +} +#end + +#ifdef (Camera_Ortho_x) +camera { + location <700, 50, 0> + look_at <670, 50, 0> + orthographic +} +#end + +#ifdef (Camera_Totale) +camera { + location <2650, 1800, 0> + look_at <0, 800, 0> +} +#end + +#include "metagrav.pov" + +object { + metagrav + translate <0, 0, 0> +} + +#if (0) +plane { + <0, 0, 1>, 0 + pigment { + checker color White*0.7, color White*0.5 + } + scale 10 + translate <0, 0, -200> +} + +plane { + <0, 1, 0>, 0 + pigment { + checker color White*0.7, color White*0.5 + } + scale 10 + translate <0, 0, 0> +} + +plane { + <1, 0, 0>, 0 + pigment { + checker color White*0.7, color White*0.5 + } + scale 10 + translate <600, 0, 0> +} +#end diff --git a/pr/entdecker/ynkelonium_texture.pov b/pr/entdecker/ynkelonium_texture.pov index 0788a0a..cf09d7d 100644 --- a/pr/entdecker/ynkelonium_texture.pov +++ b/pr/entdecker/ynkelonium_texture.pov @@ -1,3 +1,3 @@ #include "metals.inc" #declare Ynkelonium_Texture = - texture {pigment {color <1, 0.2, 0.6>} finish {F_MetalB}} + texture {pigment {color <1, 0.2, 0.6>} finish {F_MetalC}}