756 lines
10 KiB
POVRay
756 lines
10 KiB
POVRay
#include "metals.inc"
|
|
#include "glass.inc"
|
|
|
|
#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>
|
|
texture {
|
|
pigment {
|
|
image_map {
|
|
gif "turm-c.gif"
|
|
map_type 2
|
|
}
|
|
scale <1, 10.3, 1>
|
|
}
|
|
}
|
|
normal {
|
|
bump_map {
|
|
gif "turm-b.gif"
|
|
map_type 2
|
|
bump_size 5
|
|
}
|
|
scale <1, 10.3, 1>
|
|
}
|
|
|
|
}
|
|
|
|
#declare console =
|
|
union {
|
|
prism {
|
|
linear_sweep
|
|
linear_spline
|
|
0,
|
|
2.6,
|
|
5,
|
|
<0, 0>, <4.4, 0>, <4.4, 0.6>, <0.6, 0.6>, <0, 0>
|
|
rotate <0, -90, 0>
|
|
rotate <0, 0, -90>
|
|
texture {
|
|
pigment {White}
|
|
}
|
|
}
|
|
union {
|
|
box {
|
|
<0, 0, 0>, <1.4, 0.6*sqrt(2), -0.01>
|
|
texture {
|
|
pigment {Black}
|
|
}
|
|
}
|
|
box {
|
|
<0.4, 0.5, 0.01>, <1.3, 0.8, -0.02>
|
|
texture {
|
|
pigment {Green}
|
|
}
|
|
}
|
|
sphere {
|
|
<0.55, 0.35, 0.01>, 0.13
|
|
scale <1, 1, 0.1>
|
|
texture {
|
|
pigment {Green}
|
|
}
|
|
}
|
|
sphere {
|
|
<0.85, 0.35, 0.01>, 0.13
|
|
scale <1, 1, 0.1>
|
|
texture {
|
|
pigment {Yellow}
|
|
}
|
|
}
|
|
sphere {
|
|
<1.15, 0.35, 0.01>, 0.13
|
|
scale <1, 1, 0.1>
|
|
texture {
|
|
pigment {Red}
|
|
}
|
|
}
|
|
rotate <45, 0, 0>
|
|
}
|
|
}
|
|
|
|
#declare zylinder =
|
|
union {
|
|
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.0, 2.0>
|
|
}
|
|
sphere {
|
|
<0, 2, 0>, 0.7
|
|
}
|
|
texture {
|
|
T_Copper_3D
|
|
}
|
|
|
|
}
|
|
|
|
#declare hufeisen =
|
|
union {
|
|
box {
|
|
<0.0, 8.2, 0.0>,
|
|
<0.8, 10.0, 2.5>
|
|
}
|
|
cone {
|
|
<0.0, 9.1, 0.0>, 0.9,
|
|
<0.8, 9.1, 0.0>, 0.9
|
|
}
|
|
texture {
|
|
T_Copper_3D
|
|
}
|
|
|
|
}
|
|
|
|
#declare baum =
|
|
union {
|
|
cone {
|
|
<0, 0, 0>, 0.3,
|
|
<0, 2.9, 0>, 0.1
|
|
}
|
|
sphere {
|
|
<0, 2.85, 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
|
|
texture {
|
|
T_Ruby_Glass
|
|
}
|
|
}
|
|
#declare i = i + 1
|
|
#end
|
|
cone {
|
|
<0, 0, 0>, 0.5,
|
|
<0, 0.4, 0>, 0.4
|
|
}
|
|
texture {
|
|
T_Chrome_5E
|
|
}
|
|
}
|
|
|
|
|
|
#declare block =
|
|
union {
|
|
difference {
|
|
prism {
|
|
linear_sweep
|
|
linear_spline
|
|
0,
|
|
9.6,
|
|
6,
|
|
<0, 0>, <6.8, 0>, <6.8, 3.6>, <4.4, 6.0>, <0, 6.0>, <0, 0>
|
|
}
|
|
box {
|
|
<0.4, 0.8, -0.1>, <6.4, 4, 2.4>
|
|
}
|
|
box {
|
|
<0.8, 6.4, -0.1>, <3.4, 9.7, 4.4>
|
|
}
|
|
}
|
|
object {
|
|
console
|
|
translate <0.8, 6.4, 0>
|
|
}
|
|
object {
|
|
baum
|
|
translate <2.1, 7.0, 2.5>
|
|
}
|
|
object {
|
|
zylinder
|
|
translate <1.4, 0.8, 1.2>
|
|
}
|
|
object {
|
|
zylinder
|
|
translate <3.4, 0.8, 1.2>
|
|
}
|
|
object {
|
|
zylinder
|
|
translate <5.4, 0.8, 1.2>
|
|
}
|
|
object {
|
|
hufeisen
|
|
translate <3.8, 0.0, 0.0>
|
|
}
|
|
object {
|
|
hufeisen
|
|
translate <5.0, 0.0, 0.0>
|
|
}
|
|
union {
|
|
#declare zet = 5.2
|
|
cone {
|
|
<4.0, 9.6, zet>, 0.4
|
|
<4.0, 9.8, zet>, 0.4
|
|
}
|
|
cone {
|
|
<4.0, 9.6, zet>, 0.1
|
|
<4.0, 9.6, 2.5>, 0.1
|
|
}
|
|
cone {
|
|
<4.0, 9.6, zet>, 0.1
|
|
<5.2, 9.6, zet-1.2>, 0.1
|
|
}
|
|
cone {
|
|
<5.2, 9.6, zet-1.2>, 0.1
|
|
<5.2, 9.6, 2.5>, 0.1
|
|
}
|
|
cone {
|
|
<4.0, 9.6, zet>, 0.1
|
|
<1.0, 9.6, zet>, 0.1
|
|
}
|
|
cone {
|
|
<1.0, 9.6, zet>, 0.6
|
|
<1.0, 9.8, zet>, 0.6
|
|
}
|
|
sphere {
|
|
<1.0, 9.6, zet>, 0.5
|
|
}
|
|
|
|
texture {
|
|
pigment {
|
|
Orange
|
|
}
|
|
}
|
|
}
|
|
union {
|
|
cone {
|
|
<4.8, 9.3, 0>, 0.1
|
|
<4.8, 5.0, 0>, 0.1
|
|
}
|
|
cone {
|
|
<4.8, 5.0, 0.0>, 0.2
|
|
<4.8, 5.0, -0.1>, 0.2
|
|
}
|
|
cone {
|
|
<4.8, 5.1, 0.0>, 0.1
|
|
<2.0, 5.1, 0.0>, 0.1
|
|
}
|
|
cone {
|
|
<4.8, 4.9, 0.0>, 0.1
|
|
<3.0, 4.9, 0.0>, 0.1
|
|
}
|
|
cone {
|
|
<3.0, 4.9, 0.0>, 0.1
|
|
<3.0, 4.0, 0.0>, 0.1
|
|
}
|
|
|
|
texture {
|
|
pigment {
|
|
Orange
|
|
}
|
|
}
|
|
}
|
|
union {
|
|
box {
|
|
<0, 0.1, -0.2>, <1, 0.3, 0>
|
|
}
|
|
box {
|
|
<0, -0.3, -0.2>, <1, -0.1, 0>
|
|
}
|
|
box {
|
|
<0, -0.7, -0.2>, <1, -0.5, 0>
|
|
}
|
|
cone {
|
|
<0.2, -0.7, -0.1>, 0.1,
|
|
<0.2, 0.3, -0.1>, 0.1
|
|
}
|
|
cone {
|
|
<0.5, -0.7, -0.1>, 0.1,
|
|
<0.5, 0.3, -0.1>, 0.1
|
|
}
|
|
cone {
|
|
<0.8, -0.7, -0.1>, 0.1,
|
|
<0.8, 0.3, -0.1>, 0.1
|
|
}
|
|
texture {
|
|
pigment {
|
|
LightSteelBlue
|
|
}
|
|
}
|
|
translate <1, 5.1, 0>
|
|
}
|
|
|
|
texture {
|
|
pigment {
|
|
White
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
#declare block_paar =
|
|
union {
|
|
object {
|
|
block
|
|
translate <+0.45, 0, -14.5>
|
|
}
|
|
object {
|
|
block
|
|
translate <+0.45, 0, -14.5>
|
|
scale <-1, 1, 1>
|
|
}
|
|
}
|
|
|
|
#declare steg_turm =
|
|
union {
|
|
difference {
|
|
cone {
|
|
<0, 5.6, 0>, 2.7 + 0.8,
|
|
<0, 5.8, 0>, 2.7 + 0.8
|
|
}
|
|
cone {
|
|
<0, 5.5, 0>, 2.7,
|
|
<0, 5.9, 0>, 2.7
|
|
}
|
|
}
|
|
difference {
|
|
torus {
|
|
2.7 + 0.8, 0.02
|
|
translate <0, 6.6, 0>
|
|
}
|
|
box {
|
|
<-0.4, 6.5, -(2.7 + 0.9)>
|
|
<+0.4, 6.7, +(2.7 + 0.9)>
|
|
rotate <0, -45, 0>
|
|
}
|
|
box {
|
|
<-0.4, 6.5, -(2.7 + 0.9)>
|
|
<+0.4, 6.7, +(2.7 + 0.9)>
|
|
rotate <0, 90 - 32.03, 0>
|
|
}
|
|
box {
|
|
<-0.4, 6.5, -(2.7 + 0.9)>
|
|
<+0.4, 6.7, +(2.7 + 0.9)>
|
|
rotate <0, 180 + 32.03, 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>
|
|
}
|
|
#declare i = i + 30
|
|
#end
|
|
union {
|
|
cone {
|
|
<-0.4, 0, 0>, 0.02,
|
|
<-0.4, 6.6, 0>, 0.02
|
|
}
|
|
cone {
|
|
<+0.4, 0, 0>, 0.02,
|
|
<+0.4, 6.6, 0>, 0.02
|
|
}
|
|
#declare i=0.3
|
|
#while (i < 5.6)
|
|
box {
|
|
<-0.4, i, 0.1>,
|
|
<+0.4, i + 0.02, -0.1>
|
|
}
|
|
#declare i = i + 0.3
|
|
#end
|
|
difference {
|
|
torus {
|
|
0.5, 0.02
|
|
rotate <0, 0, 90>
|
|
}
|
|
plane {
|
|
<0, 0, -1>, 0
|
|
}
|
|
translate <-0.4, 6.1, 0>
|
|
}
|
|
difference {
|
|
torus {
|
|
0.5, 0.02
|
|
rotate <0, 0, 90>
|
|
}
|
|
plane {
|
|
<0, 0, -1>, 0
|
|
}
|
|
translate <+0.4, 6.1, 0>
|
|
}
|
|
translate <0, 0, -(2.7 + 0.8)>
|
|
rotate <0, -45, 0>
|
|
}
|
|
}
|
|
|
|
#declare steg_verbindung =
|
|
union {
|
|
box {
|
|
<2.7 + 0.4, 5.6, -0.4>,
|
|
<5.582 , 5.8, 0.4>
|
|
}
|
|
cone {
|
|
<2.7 + 0.8, 6.6, -0.4>, 0.02
|
|
<5.353 , 6.6, -0.4>, 0.02
|
|
}
|
|
cone {
|
|
<2.7 + 0.8, 6.6, +0.4>, 0.02
|
|
<5.582 , 6.6, +0.4>, 0.02
|
|
}
|
|
//plane {
|
|
// <0, 0, -1>, 3.3
|
|
//}
|
|
rotate <0, 180 - 32.03, 0>
|
|
translate <12, 0, 0>
|
|
}
|
|
|
|
#declare steg_seite =
|
|
union {
|
|
box {
|
|
<-(12 - 4.52), 5.6, -3.3>,
|
|
<+(12 - 4.52), 5.8, -2.5>
|
|
}
|
|
cone {
|
|
<-(12 - 4.52), 6.6, -3.3>, 0.02,
|
|
<+(12 - 4.52), 6.6, -3.3>, 0.02
|
|
}
|
|
#declare i=-6
|
|
#while (i <= 6)
|
|
cone {
|
|
<i, 5.6, -(2.5 + 0.8)>, 0.02,
|
|
<i, 6.6, -(2.5 + 0.8)>, 0.02
|
|
}
|
|
#declare i = i + 2
|
|
#end
|
|
object {
|
|
steg_verbindung
|
|
}
|
|
object {
|
|
steg_verbindung
|
|
scale <-1, 1, 1>
|
|
}
|
|
}
|
|
|
|
#declare steg1 =
|
|
union {
|
|
object {
|
|
steg_turm
|
|
translate <12, 0, 0>
|
|
}
|
|
object {
|
|
steg_seite
|
|
translate <0, 0, 0>
|
|
}
|
|
|
|
texture {
|
|
T_Chrome_5E
|
|
}
|
|
}
|
|
|
|
#declare steg =
|
|
union {
|
|
object {
|
|
steg1
|
|
translate <0, 0, -12>
|
|
}
|
|
object {
|
|
steg1
|
|
translate <0, 0, -12>
|
|
rotate <0, 90, 0>
|
|
}
|
|
object {
|
|
steg1
|
|
translate <0, 0, -12>
|
|
rotate <0, 180, 0>
|
|
}
|
|
object {
|
|
steg1
|
|
translate <0, 0, -12>
|
|
rotate <0, 270, 0>
|
|
}
|
|
}
|
|
|
|
#declare zentralturm =
|
|
union {
|
|
cone {
|
|
<0, 0, 0>, 7.0
|
|
<0, 0.01, 0>, 7.0
|
|
texture {
|
|
pigment {
|
|
Yellow
|
|
}
|
|
}
|
|
}
|
|
cone {
|
|
<0, 0, 0>, 3.2
|
|
<0, 0.4, 0>, 3.2
|
|
}
|
|
cone {
|
|
<0, 0.4, 0>, 2.8
|
|
<0, 3, 0>, 3.2
|
|
}
|
|
cone {
|
|
<0, 3, 0>, 2.5
|
|
<0, 4.4, 0>, 2.5
|
|
texture {
|
|
pigment {
|
|
image_map {
|
|
gif "zentral1.gif"
|
|
map_type 2
|
|
}
|
|
scale <1, 1.4, 1>
|
|
}
|
|
}
|
|
}
|
|
intersection {
|
|
sphere {
|
|
<0, 6.6, 0>, 3.9
|
|
}
|
|
box {
|
|
<-3.9, 4.4, -3.9>
|
|
<+3.9, 8.8, +3.9>
|
|
}
|
|
}
|
|
union {
|
|
difference {
|
|
cone {
|
|
<0, 8.8, 0>, 2.7
|
|
<0, 10.2, 0>, 2.3
|
|
}
|
|
box {
|
|
<0.2, 9.0, -0.2>
|
|
<2.7, 10.0, -2.7>
|
|
}
|
|
box {
|
|
<0.2, 9.0, +0.2>
|
|
<2.7, 10.0, +2.7>
|
|
}
|
|
box {
|
|
<-0.2, 9.0, +0.2>
|
|
<-2.7, 10.0, +2.7>
|
|
}
|
|
box {
|
|
<-0.2, 9.0, -0.2>
|
|
<-2.7, 10.0, -2.7>
|
|
}
|
|
|
|
}
|
|
cone {
|
|
<0, 8.8, 0>, 2.1
|
|
<0, 10.2, 0>, 2.1
|
|
}
|
|
|
|
}
|
|
cone {
|
|
<0, 10.2, 0>, 1.7
|
|
<0, 10.8, 0>, 1.4
|
|
texture {
|
|
pigment {
|
|
image_map {
|
|
gif "zentral2.gif"
|
|
map_type 2
|
|
}
|
|
scale <1, 0.6, 1>
|
|
}
|
|
}
|
|
}
|
|
cone {
|
|
<0, 10.8, 0>, 0.7
|
|
<0, 10.9, 0>, 0.7
|
|
}
|
|
sphere {
|
|
<0, 10.9, 0>, 0.6
|
|
}
|
|
texture {
|
|
pigment { White }
|
|
}
|
|
|
|
}
|
|
|
|
#declare klammer =
|
|
union {
|
|
difference {
|
|
box {
|
|
<9, 8.2, -1>
|
|
<15, 9.7, +1>
|
|
}
|
|
cone {
|
|
<0, 0, -1.1>, 2
|
|
<0, 0, +1.1>, 2
|
|
scale <1, 0.5, 1>
|
|
translate <11, 8.2, 0>
|
|
}
|
|
box {
|
|
<8.9, 8.2, -1.1>
|
|
<11, 9.2, +1.1>
|
|
}
|
|
}
|
|
cone {
|
|
<9, 9.7, 0>, 0.1
|
|
<15, 9.7, 0>, 0.1
|
|
texture { pigment { Orange } }
|
|
}
|
|
cone {
|
|
<11, 9.7, 0>, 0.5
|
|
<11, 9.9, 0>, 0.5
|
|
texture { pigment { Orange } }
|
|
}
|
|
box {
|
|
< 6.5, 8.8, -1>
|
|
<13, 9.0, +1>
|
|
}
|
|
intersection {
|
|
torus {
|
|
5.7, 1.0
|
|
translate <0, 8.0, 0>
|
|
}
|
|
box {
|
|
<4.7, 7.0, -1.0>
|
|
<6.7, 8.0, +1.0>
|
|
}
|
|
}
|
|
intersection {
|
|
difference {
|
|
cone {
|
|
<0, 8.0, 0>, 6.7
|
|
<0, 9.0, 0>, 6.7
|
|
}
|
|
cone {
|
|
<0, 7.9, 0>, 6.5
|
|
<0, 9.1, 0>, 6.5
|
|
}
|
|
}
|
|
box {
|
|
<4.7, 8.0, -1.0>
|
|
<6.7, 9.0, +1.0>
|
|
}
|
|
}
|
|
prism {
|
|
linear_spline
|
|
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>
|
|
rotate <-90, 0, 0>
|
|
texture {
|
|
pigment { White }
|
|
}
|
|
}
|
|
texture {
|
|
pigment { White }
|
|
}
|
|
}
|
|
|
|
#declare ring =
|
|
union {
|
|
torus {
|
|
5.7, 0.8
|
|
translate <0, 8.0, 0>
|
|
texture {
|
|
pigment { DarkSlateGray }
|
|
}
|
|
}
|
|
object {
|
|
klammer
|
|
rotate <0, 45, 0>
|
|
}
|
|
object {
|
|
klammer
|
|
rotate <0, 135, 0>
|
|
}
|
|
object {
|
|
klammer
|
|
rotate <0, -45, 0>
|
|
}
|
|
object {
|
|
klammer
|
|
rotate <0, -135, 0>
|
|
}
|
|
}
|
|
|
|
|
|
|
|
#declare transitionstriebwerk =
|
|
union {
|
|
object {
|
|
turm
|
|
translate <-12, 0, -12>
|
|
}
|
|
object {
|
|
turm
|
|
translate <-12, 0, +12>
|
|
}
|
|
object {
|
|
turm
|
|
translate <+12, 0, +12>
|
|
}
|
|
object {
|
|
turm
|
|
translate <+12, 0, -12>
|
|
}
|
|
object {
|
|
block_paar
|
|
}
|
|
object {
|
|
block_paar
|
|
rotate <0, 90, 0>
|
|
}
|
|
object {
|
|
block_paar
|
|
rotate <0, 180, 0>
|
|
}
|
|
object {
|
|
block_paar
|
|
rotate <0, 270, 0>
|
|
}
|
|
object {
|
|
steg
|
|
}
|
|
object {
|
|
zentralturm
|
|
}
|
|
object {
|
|
ring
|
|
}
|
|
}
|