File: torus1.pov

package info (click to toggle)
povray 1%3A3.7.0.10-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 147,232 kB
  • sloc: cpp: 845,011; ansic: 122,118; sh: 34,204; pascal: 6,420; asm: 3,355; ada: 1,681; makefile: 1,389; cs: 879; awk: 590; perl: 245; xml: 95
file content (185 lines) | stat: -rw-r--r-- 4,963 bytes parent folder | download | duplicates (7)
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
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
// This work is licensed under the Creative Commons Attribution 3.0 Unported License.
// To view a copy of this license, visit http://creativecommons.org/licenses/by/3.0/
// or send a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View,
// California, 94041, USA.

// Persistence Of Vision raytracer version 3.5 sample file.
// Demo showing several torii ... Dieter Bayer, June 1994
//
// -w320 -h240
// -w800 -h600 +a0.3
#version  3.7;
global_settings { 
  assumed_gamma 1.8
  max_trace_level 5
}

#include "colors.inc"
#include "textures.inc"


camera {
  location <0, 80, -200>
  right     x*image_width/image_height
  angle 42 
  look_at <0, 15, 0>
}

light_source { <50, 200, -100> colour Gray70 }
light_source { <-20, 40, -20> colour Gray70 }
light_source { <100, 80, -200> colour Gray70 }

background { color MidnightBlue }

plane { y, 0
   pigment {
      checker colour Blue colour Green
      scale 20
   }
   finish {
      ambient 0.2
      diffuse 0.8
   }
}

plane { z, 250
   hollow on
   pigment { colour White }
   finish {
     ambient 0
     diffuse 0.1
     specular 1
     roughness 0.00001
     reflection 0.8
   }
}

#declare Torus1 = torus { 10, 1.5 rotate 90*x }
#declare Torus2 = torus { 15, 5 }
#declare Torus3 = torus { 10, 3 rotate 90*x }

#declare Ring = union {
  object { Torus1 translate 35*x rotate  0*y }
  object { Torus1 translate 35*x rotate  15*y }
  object { Torus1 translate 35*x rotate  30*y }
  object { Torus1 translate 35*x rotate  45*y }
  object { Torus1 translate 35*x rotate  60*y }
  object { Torus1 translate 35*x rotate  75*y }
  object { Torus1 translate 35*x rotate  90*y }
  object { Torus1 translate 35*x rotate 105*y }
  object { Torus1 translate 35*x rotate 120*y }
  object { Torus1 translate 35*x rotate 135*y }
  object { Torus1 translate 35*x rotate 150*y }
  object { Torus1 translate 35*x rotate 165*y }
  object { Torus1 translate 35*x rotate 180*y }
  object { Torus1 translate 35*x rotate 195*y }
  object { Torus1 translate 35*x rotate 210*y }
  object { Torus1 translate 35*x rotate 225*y }
  object { Torus1 translate 35*x rotate 240*y }
  object { Torus1 translate 35*x rotate 255*y }
  object { Torus1 translate 35*x rotate 270*y }
  object { Torus1 translate 35*x rotate 285*y }
  object { Torus1 translate 35*x rotate 300*y }
  object { Torus1 translate 35*x rotate 315*y }
  object { Torus1 translate 35*x rotate 330*y }
  object { Torus1 translate 35*x rotate 345*y }
}

#declare Stack = union {
  object { Torus2 translate  0*y scale <0.5, 1, 0.5> }
  object { Torus2 translate  5*y scale <0.5, 1, 0.5> }
  object { Torus2 translate 10*y scale <0.5, 1, 0.5> }
  object { Torus2 translate 15*y scale <1, 1, 0.5> }
  object { Torus2 translate 20*y scale <1, 1, 0.75> }
  object { Torus2 translate 25*y scale <1, 1, 1> }
  object { Torus2 translate 30*y scale <0.75, 1, 1> }
  object { Torus2 translate 35*y scale <0.5, 1, 1> }
}

#declare Queue = union {
  object { Torus3 translate  200*z }
  object { Torus3 translate  180*z }
  object { Torus3 translate  160*z }
  object { Torus3 translate  140*z }
  object { Torus3 translate  120*z }
  object { Torus3 translate  100*z }
  object { Torus3 translate   80*z }
  object { Torus3 translate   60*z }
  object { Torus3 translate   40*z }
  object { Torus3 translate   20*z }
  object { Torus3 translate    0*z }
  object { Torus3 translate  -20*z }
  object { Torus3 translate  -40*z }
  object { Torus3 translate  -60*z }
  object { Torus3 translate  -80*z }
  object { Torus3 translate -100*z }
  object { Torus3 translate -120*z }
  object { Torus3 translate -140*z }
  object { Torus3 translate -160*z }
  object { Torus3 translate -180*z }
  object { Torus3 translate -200*z }
  object { Torus3 translate -220*z }
  object { Torus3 translate -240*z }
  object { Torus3 translate -260*z }
  object { Torus3 translate -280*z }
  object { Torus3 translate -300*z }
  object { Torus3 translate -320*z }
  object { Torus3 translate -340*z }
  object { Torus3 translate -360*z }
  object { Torus3 translate -380*z }
  object { Torus3 translate -400*z }
  object { Torus3 translate -420*z }
  object { Torus3 translate -440*z }
  object { Torus3 translate -460*z }
  object { Torus3 translate -480*z }
  object { Torus3 translate -500*z }
  object { Torus3 translate -520*z }
  object { Torus3 translate -540*z }
  object { Torus3 translate -560*z }
  object { Torus3 translate -580*z }
  object { Torus3 translate -600*z }
}

object {
  Queue

  texture { Copper_Metal }

  rotate -20*y
  translate <40, 15, 40>
}

object {
  Stack

  texture { pigment { White_Marble } scale <2, 2, 2> }

  translate <-70, 5, 80>
}

object {
  Ring

  pigment {
    color Red
  }
  finish {
    ambient 0.1
    diffuse 0.6
    phong 0.6
    phong_size 7
  }

  translate <-20, 15, -20>
}

torus { 35, 5 translate <-20, 15, -20>
  pigment { color Green }
  finish {
    ambient 0.1
    diffuse 0.6
    phong 0.6
    phong_size 7
  }
}