aboutsummaryrefslogtreecommitdiffstats
path: root/buch/chapters/80-wahrscheinlichkeit/images/diffusion.pov
blob: 9b385da0120147668cb1dd3ea3f83e12903e847d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
//
// diffusion.pov
//
// (c) 2021 Prof Dr Andreas Müller, OST Ostscheizer Fachhochschule
//
#version 3.7;
#include "colors.inc"

global_settings {
	assumed_gamma 1
}

#declare imagescale = 0.270;
#declare N = 30;
#declare vscale = 10;
#declare r = 0.08;

camera {
        location <43, 20, -50>
        look_at <N/2+2, vscale*0.49, 3>
        right 16/9 * x * imagescale
        up y * imagescale
}

light_source {
        <-4, 20, -50> color White
        area_light <1,0,0> <0,0,1>, 10, 10
        adaptive 1
        jitter
}

sky_sphere {
        pigment {
                color rgb<1,1,1>
        }
}

#macro saeule(xx,yy,h)
box { <xx+0.1,0,yy+0.1>, <xx+0.9,vscale*h,yy+0.9> }
#end

#macro vektor(xx,a,b,c,d,e,f)
	saeule(xx,5,a)
	saeule(xx,4,b)
	saeule(xx,3,c)
	saeule(xx,2,d)
	saeule(xx,1,e)
	saeule(xx,0,f)
#end

union {
#include "vektoren.inc"
	pigment {
		color rgb<0.8,1,1>*0.6
	}
	finish {
		specular 0.9
		metallic
	}
}

union {
#declare xx = 1;
#while (xx <= N+1)
	cylinder { <xx, 0, 0>, <xx, 0, 6>, r }
	#declare xx = xx + 1;
#end
#declare yy = 0;
#while (yy <= 6)
	cylinder { <1, 0, yy>, <N+1, 0, yy>, r }
	#declare yy = yy + 1;
#end
	sphere { <1,0,0>, r }
	sphere { <1,0,6>, r }
	sphere { <N+1,0,0>, r }
	sphere { <N+1,0,6>, r }
	cylinder { <1,0,6>, <1,1.1*vscale,6>, r }
	cylinder { <1,vscale-r/2,6>, <1,vscale+r/2,6>, 2*r }
	cone { <1,1.1*vscale,6>, 2*r, <1,1.15*vscale,6>, 0 }
	pigment {
		color rgb<1,0.6,1>*0.6
	}
	finish {
		specular 0.9
		metallic
	}
}