This commit is contained in:
hjp 2006-12-04 00:01:58 +00:00
parent 5f85830e64
commit 816336c999
4 changed files with 381 additions and 0 deletions

View File

@ -23,6 +23,7 @@ all: \
test-hufeisenpult.png \
test-konturensitz.png \
test-polgeschuetz.png \
test-shift.png \
test-schneller_kreuzer.png \
@ -98,6 +99,7 @@ test-zentrale.png: test-zentrale.pov \
test-rounded_box.png: test-rounded_box.pov \
rounded_box.pov \
test-shift.png: test-shift.pov shift.pov
%.gif: %.ppm

View File

@ -0,0 +1,332 @@
/*
Shift.
Inspiriert von Rudolf Zengerles Risszeichnung.
Länge: 9m [0..9] in z-Achse, Bug bei z=9.
Spurweite: 3.8m
Flügelspannweite: 7m [-3.5 .. +3.5] in x-Achse
Höhe: 3m [0..3] in y-Achse
*/
#include "glass.inc"
#include "textures.inc"
#include "T_arkonstahl.pov"
#declare shift_tf_r =
union {
intersection {
difference {
cylinder {
<0, 0, 6.5> <0, 0, 2> 1
scale <0.6, 0.3, 1>
translate <1.5, 1.5, 0>
}
cylinder {
<0, 0, 6.51> <0, 0, 6.00> 1
scale <0.45, 0.25, 1>
translate <1.5, 1.5, 0>
}
cylinder {
<0, 0, 2.50> <0, 0, 1.99> 1
scale <0.45, 0.25, 1>
translate <1.5, 1.5, 0>
}
}
union {
cylinder {
<0, 0, 5.5> <0, 0, 3> 1
}
sphere {
<0, 0, 5.5> 1
}
sphere {
<0, 0, 3> 1
}
scale <0.61, 0.31, 1>
translate <1.5, 1.5, 0>
}
}
intersection {
cone {
<0, 0, 0>, 1,
<1, 0, 0>, 0
}
box {
<0, -1, 0>, <1, 1, 1>
}
matrix < 2.0, 0.00, 0.0,
0.0, 0.05, 0.0,
-0.4, 0.00, 0.15,
1.5, 1.50, 5.00>
}
intersection {
cone {
<0, 0, 0>, 1,
<1, 0, 0>, 0
}
box {
<0, -1, 0>, <1, 1, -1>
}
matrix < 2.0, 0.00, 0.0,
0.0, 0.05, 0.0,
-0.4, 0.00, 2.00,
1.5, 1.50, 5.00>
}
}
#declare shift_laufrad_r =
union {
cylinder {
<0, 0, 0>, <0.5, 0, 0>, 0.20
}
cone {
<0.1, 0, 0>, 0.1, <-0.5, 0.6, -0.3>, 0.2
}
cone {
<0.1, 0, 0>, 0.1, <-0.5, 0.6, +0.3>, 0.2
}
translate <0, 0.25, 0>
}
#declare shift_kette_r =
union {
union {
cylinder {
<0, 0, 0>, <0.5, 0, 0>, 0.20
}
cone {
<0.1, 0, 0>, 0.1, <-0.5, 0.3, 0>, 0.2
}
translate <0, 0.5, 2.5>
}
object {
shift_laufrad_r
translate <0, 0, 3>
}
object {
shift_laufrad_r
translate <0, 0, 4>
}
object {
shift_laufrad_r
translate <0, 0, 5>
}
object {
shift_laufrad_r
translate <0, 0, 6>
}
object {
shift_laufrad_r
translate <0, 0, 7>
}
object {
shift_laufrad_r
translate <0, 0, 8>
}
union {
cylinder {
<0, 0, 0>, <0.5, 0, 0>, 0.20
}
cone {
<0.1, 0, 0>, 0.1, <-0.5, 0.3, 0>, 0.2
}
translate <0, 0.5, 8.5>
}
#local i = 3;
#while (i <= 8)
box {
<0, 0, -0.045>, <0.5, 0.05, 0.045>
translate <0, 0, i>
pigment {
color <0.3, 0.3, 0.0>
}
}
#local i = i + 0.1;
#end
#local i = 0;
#while (i <= 0.55)
box {
<0, 0, -0.045>, <0.5, 0.05, 0.045>
translate <0, -0.25, i>
rotate <-26.56, 0, 0>
translate <0, +0.25, 0>
translate <0, 0, 8>
pigment {
color <0.3, 0.3, 0.0>
}
}
#local i = i + 0.1;
#end
#local i = -40;
#while (i >= -180)
box {
<0, 0, -0.045>, <0.5, 0.05, 0.045>
translate <0, -0.25, 0>
rotate <i, 0, 0>
translate <0, 0.5, 8.5>
pigment {
color <0.3, 0.3, 0.0>
}
}
#local i = i - 28;
#end
#local i = 8.4;
#while (i >= 2.5)
box {
<0, -0.20, -0.045>, <0.5, -0.25, 0.045>
rotate <180, 0, 0>
translate <0, 0.5, i>
pigment {
color <0.3, 0.3, 0.0>
}
}
#local i = i - 0.1;
#end
#local i = 152;
#while (i >= 25)
box {
<0, -0.20, -0.045>, <0.5, -0.25, 0.045>
rotate <i, 0, 0>
translate <0, 0.5, 2.5>
pigment {
color <0.3, 0.3, 0.0>
}
}
#local i = i - 28;
#end
#local i = 0.05;
#while (i <= 0.55)
box {
<0, -0.20, -0.045>, <0.5, -0.25, 0.045>
translate <0, 0, i>
rotate <26.56, 0, 0>
translate <0, 0.5, 2.5>
pigment {
color <0.3, 0.3, 0.0>
}
}
#local i = i + 0.1;
#end
translate <1.4, 0, 0>
}
#declare shift_triebwerk =
union {
difference {
cone {
<0, 0, 0> 0.25, <0, 0, 0.5>, 0.20
}
cone {
<0, 0, -0.01> 0.24, <0, 0, 0.5>, 0.14
}
}
cone {
<0, 0, 0.5>, 0.20
<0, 0, 1.0> 0.28
}
translate <0, 0, 1>
texture {
pigment {color 0.1}
}
}
#declare shift_strahler =
union {
difference {
cone {
<0, 0, 0> 0.10, <0, 0, 0.5>, 0.05
}
cone {
<0, 0, 0> 0.08, <0, 0, 0.51>, 0.04
}
}
sphere {
<0, 0, 0>, 0.15
}
}
#declare shift =
union {
cylinder {
<0, 0, 8> <0, 0, 2> 1
scale <0.5, 1, 1>
translate <1, 1.5, 0>
}
cylinder {
<0, 0, 8> <0, 0, 2> 1
scale <0.5, 1, 1>
translate <-1, 1.5, 0>
}
box {
<-1, 0.5, 2> <1, 2.5, 8>
}
sphere {
<0, 0, 0> 1
scale <0.5, 1, 1.5>
translate <-1, 1.5, 8>
}
sphere {
<0, 0, 0> 1
scale <0.5, 1, 1.5>
translate <+1, 1.5, 8>
}
cylinder {
<-1, 0, 0> <1, 0, 0> 1
scale <1, 1, 1.5>
translate <0, 1.5, 8>
}
object {
shift_tf_r
}
object {
shift_tf_r
scale <-1, 1, 1>
}
sphere {
<0, 0, 0> 1
scale <1, 0.5, 1.5>
translate <0, 2.5, 5>
texture {
pigment { color red 0.3 green 0.3 blue 0.1}
finish {
ambient 0.0
diffuse 0.1
brilliance 1
reflection 0.2
specular 0.5
roughness 0.001
}
}
}
object {
shift_kette_r
}
object {
shift_kette_r
scale <-1, 1, 1>
}
#local i = 0;
#while (i < 360)
object {
shift_triebwerk
translate <0, 0.6, 0>
rotate <0, 0, i>
translate <0, 1.5, 0>
}
#local i = i + 60;
#end
object {
shift_strahler
translate <-0.8, 1.5, 9.5>
}
object {
shift_strahler
translate <+0.8, 1.5, 9.5>
}
object {
shift_strahler
translate <0, 2.2, 9.05>
}
texture { T_arkonstahl }
translate <0, 0, -1>
}

View File

@ -0,0 +1,47 @@
#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 {
<200, 200, -00>
color White
}
light_source {
<200, 120, -171>
color White*0.5
}
camera {
orthographic
location <7, 1.8, 15>
look_at <0, 0.5, 5>
angle 40
}
#include "shift.pov"
object {
shift
}
cylinder {
<0, 0, 0>,
<0, -1, 0>, 1000
pigment {
radial
color_map{
[0.1 rgb 0.1 ]
[0.1 White]
}
frequency 16
}
}