1etruscanvenus(6x) XScreenSaver manual etruscanvenus(6x)
2
3
4
6 etruscanvenus - Draws a 3d immersion of a Klein bottle that smoothly
7 deforms between the Etruscan Venus surface, the Roman surface, the Boy
8 surface surface, and the Ida surface.
9
11 etruscanvenus [-display host:display.screen] [-install] [-visual vis‐
12 ual] [-window] [-root] [-delay usecs] [-fps] [-mode display-mode]
13 [-wireframe] [-surface] [-transparent] [-appearance appearance]
14 [-solid] [-distance-bands] [-direction-bands] [-colors color-scheme]
15 [-onesided-colors] [-twosided-colors] [-distance-colors] [-direction-
16 colors] [-no-change-colors] [-view-mode view-mode] [-walk] [-turn]
17 [-no-deform] [-deformation-speed float] [-initial-deformation float]
18 [-etruscan-venus] [-roman] [-boy] [-ida] [-orientation-marks] [-projec‐
19 tion mode] [-perspective] [-orthographic] [-speed-x float] [-speed-y
20 float] [-speed-z float] [-walk-direction float] [-walk-speed float]
21
23 The etruscanvenus program shows a 3d immersion of a Klein bottle that
24 smoothly deforms between the Etruscan Venus surface, the Roman surface,
25 the Boy surface, and the Ida surface. You can walk on the Klein bottle
26 or turn it in 3d. Topologically, all surfaces are Klein bottles, even
27 the Roman and Boy surfaces, which are doubly covered and therefore ap‐
28 pear to be an immersed real projective plane. The smooth deformation
29 between these surfaces was constructed by George K. Francis.
30
31 The Klein bottle is a non-orientable surface. To make this apparent,
32 the two-sided color mode can be used. Alternatively, orientation mark‐
33 ers (curling arrows) can be drawn as a texture map on the surface of
34 the Klein bottle. While walking on the Klein bottle, you will notice
35 that the orientation of the curling arrows changes (which it must be‐
36 cause the Klein bottle is non-orientable). Since all the surfaces ex‐
37 cept the Ida surface have points where the surface normal is not well
38 defined for some points, walking is only performed on the Ida surface.
39
40 As mentioned above, the Roman and Boy surfaces are doubly covered and
41 therefore appear to be an immersed real projective plane. Since some
42 of the parameter names are based on this interpretation of the surface,
43 the geometry of the real projective plane will be briefly disussed.
44 The real projective plane is a model for the projective geometry in 2d
45 space. One point can be singled out as the origin. A line can be sin‐
46 gled out as the line at infinity, i.e., a line that lies at an infinite
47 distance to the origin. The line at infinity is topologically a cir‐
48 cle. Points on the line at infinity are also used to model directions
49 in projective geometry. Direction and distance bands refer to this in‐
50 terpretation of the surface. If direction bands are used, the bands
51 extend from the origin of the projective plane in different directions
52 to the line at infinity and back to the origin. If distance bands are
53 used, the bands lie at constant distances to the origin. The same in‐
54 terpretation is used for distance and direction colors. Although there
55 is no conceptually equivalent geometric interpretation for the two
56 Klein bottle surfaces (the Etruscan Venus and Ida surfaces), the smooth
57 deformation between the surfaces results in a natural extension of
58 these concepts to the Klein bottle surfaces.
59
60 The immersed surfaces can be projected to the screen either perspec‐
61 tively or orthographically. When using the walking mode, perspective
62 projection to the screen will be used.
63
64 There are three display modes for the Klein bottle: mesh (wireframe),
65 solid, or transparent. Furthermore, the appearance of the surface can
66 be as a solid object or as a set of see-through bands. The bands can
67 be distance bands or direction bands, as explained above.
68
69 The colors with with the surface is drawn can be set to one-sided, two-
70 sided, distance, or direction. In one-sided mode, the surface is drawn
71 with the same color on both sides of the underlying triangles. In two-
72 sided mode, the surface is drawn with one color on one side of the un‐
73 derlying triangles and the complementary color on the other side.
74 Since the surface actually only has one side, the color jumps from red
75 to green along a line on the surface. This mode enables you to see
76 that the surface is non-orientable. In distance mode, the surface is
77 displayed with fully saturated colors that depend on the distance of
78 the points on the projective plane to the origin, as described above.
79 If the surface is displayed as distance bands, each band will be dis‐
80 played with a different color. In direction mode, the surface is dis‐
81 played with fully saturated colors that depend on the angle of the
82 points on the projective plane with respect to the origin (see above
83 for an explanation). If the surface is displayed as direction bands,
84 each band will be displayed with a different color. The colors used to
85 color the surface can either be static or can be changed dynamically.
86
87 The rotation speed for each of the three coordinate axes around which
88 the Klein bottle rotates can be chosen.
89
90 Furthermore, in the walking mode the walking direction in the 2d base
91 square of the surface and the walking speed can be chosen. The walking
92 direction is measured as an angle in degrees in the 2d square that
93 forms the coordinate system of the surface. A value of 0 or 180 means
94 that the walk is along a circle at a randomly chosen distance from the
95 origin (parallel to a distance band). A value of 90 or 270 means that
96 the walk is directly along a direction band. Any other value results
97 in a curved path along the surface. As noted above, walking is per‐
98 formed only on the Ida surface.
99
100 By default, the immersion of the Klein bottle smoothly deforms between
101 the Etruscan Venus surface, the Roman surface, the Boy surface, and the
102 Ida surface. It is possible to choose the speed of the deformation.
103 Furthermore, it is possible to switch the deformation off. It is also
104 possible to determine the initial deformation of the immersion. This
105 is mostly useful if the deformation is switched off, in which case it
106 will determine the appearance of the surface. A value of 0 corresponds
107 to the Etruscan Venus surface, a value of 1000 to the Roman surface, a
108 value of 2000 to the Boy surface, and a value of 3000 to the Ida sur‐
109 face.
110
111 This program is inspired by George K. Francis's book "A Topological
112 Picturebook", Springer, 1987, by George K. Francis's paper "The Etr‐
113 uscan Venus" in P. Concus, R. Finn, and D. A. Hoffman: "Geometric
114 Analysis and Computer Graphics", Springer, 1991, and by a video enti‐
115 tled "The Etruscan Venus" by Donna J. Cox, George K. Francis, and Ray‐
116 mond L. Idaszak, presented at SIGGRAPH 1989.
117
119 etruscanvenus accepts the following options:
120
121 -window Draw on a newly-created window. This is the default.
122
123 -root Draw on the root window.
124
125 -install
126 Install a private colormap for the window.
127
128 -visual visual
129 Specify which visual to use. Legal values are the name of a
130 visual class, or the id number (decimal or hex) of a specific
131 visual.
132
133 -delay microseconds
134 How much of a delay should be introduced between steps of the
135 animation. Default 10000, or 1/100th second.
136
137 -fps Display the current frame rate, CPU load, and polygon count.
138
139 The following four options are mutually exclusive. They determine how
140 the Klein bottle is displayed.
141
142 -mode random
143 Display the Klein bottle in a random display mode (default).
144
145 -mode wireframe (Shortcut: -wireframe)
146 Display the Klein bottle as a wireframe mesh.
147
148 -mode surface (Shortcut: -surface)
149 Display the Klein bottle as a solid surface.
150
151 -mode transparent (Shortcut: -transparent)
152 Display the Klein bottle as a transparent surface.
153
154 The following four options are mutually exclusive. They determine the
155 appearance of the Klein bottle.
156
157 -appearance random
158 Display the Klein bottle with a random appearance (default).
159
160 -appearance solid (Shortcut: -solid)
161 Display the Klein bottle as a solid object.
162
163 -appearance distance-bands (Shortcut: -distance-bands)
164 Display the Klein bottle as see-through bands that lie at in‐
165 creasing distances from the origin (see above for an explana‐
166 tion).
167
168 -appearance direction-bands (Shortcut: -direction-bands)
169 Display the Klein bottle as see-through bands that lie at in‐
170 creasing angles with respect to the origin (see above for an
171 explanation).
172
173 The following five options are mutually exclusive. They determine how
174 to color the Klein bottle.
175
176 -colors random
177 Display the Klein bottle with a random color scheme (default).
178
179 -colors onesided (Shortcut: -onesided-colors)
180 Display the Klein bottle with a single color.
181
182 -colors twosided (Shortcut: -twosided-colors)
183 Display the Klein bottle with two colors: one color on one
184 "side" and the complementary color on the "other side."
185
186 -colors distance (Shortcut: -distance-colors)
187 Display the Klein bottle with fully saturated colors that de‐
188 pend on the distance of the points on the projective plane to
189 the origin (see above for an explanation). If the Klein bottle
190 is displayed as distance bands, each band will be displayed
191 with a different color.
192
193 -colors direction (Shortcut: -direction-colors)
194 Display the Klein bottle with fully saturated colors that de‐
195 pend on the angle of the points on the projective plane with
196 respect to the origin (see above for an explanation). If the
197 Klein bottle is displayed as direction bands, each band will be
198 displayed with a different color.
199
200 The following options determine whether the colors with which the Klein
201 bottle are displayed are static or are changing dynamically.
202
203 -change-colors
204 Change the colors with which the Klein bottle is displayed dy‐
205 namically (default).
206
207 -no-change-colors
208 Use static colors to display the Klein bottle.
209
210 The following three options are mutually exclusive. They determine how
211 to view the Klein bottle.
212
213 -view-mode random
214 View the Klein bottle in a random view mode (default). The
215 walking mode will be randomly selected in approximately 10% of
216 the cases.
217
218 -view-mode turn (Shortcut: -turn)
219 View the Klein bottle while it turns in 3d.
220
221 -view-mode walk (Shortcut: -walk)
222 View the Klein bottle as if walking on its surface.
223
224 The following options determine whether the surface is being deformed.
225
226 -deform Deform the surface smoothly between the Etruscan Venus surface,
227 the Roman surface, the Boy surface surface, and the Ida surface
228 (default).
229
230 -no-deform
231 Don't deform the surface.
232
233 The following option determines the deformation speed.
234
235 -deformation-speed float
236 The deformation speed is measured in percent of some sensible
237 maximum speed (default: 10.0).
238
239 The following options determine the initial deformation of the surface.
240 As described above, this is mostly useful if -no-deform is specified.
241
242 -initial-deformation float
243 The initial deformation is specified as a number between 0 and
244 4000. A value of 0 corresponds to the Etruscan Venus surface,
245 a value of 1000 to the Roman surface, a value of 2000 to the
246 Boy surface, and a value of 3000 to the Ida surface. The de‐
247 fault value is 0.
248
249 -etruscan-venus
250 This is a shortcut for -initial-deformation 0.
251
252 -roman This is a shortcut for -initial-deformation 1000.
253
254 -boy This is a shortcut for -initial-deformation 2000.
255
256 -ida This is a shortcut for -initial-deformation 3000.
257
258 The following options determine whether orientation marks are shown on
259 the Klein bottle.
260
261 -orientation-marks
262 Display orientation marks on the Klein bottle.
263
264 -no-orientation-marks
265 Don't display orientation marks on the Klein bottle (default).
266
267 The following three options are mutually exclusive. They determine how
268 the Klain bottle is projected from 3d to 2d (i.e., to the screen).
269
270 -projection random
271 Project the Klein bottle from 3d to 2d using a random projec‐
272 tion mode (default).
273
274 -projection perspective (Shortcut: -perspective)
275 Project the Klein bottle from 3d to 2d using a perspective pro‐
276 jection.
277
278 -projection orthographic (Shortcut: -orthographic)
279 Project the Klein bottle from 3d to 2d using an orthographic
280 projection.
281
282 The following three options determine the rotation speed of the Klein
283 bottle around the three possible axes. The rotation speed is measured
284 in degrees per frame. The speeds should be set to relatively small
285 values, e.g., less than 4 in magnitude. In walk mode, all speeds are
286 ignored.
287
288 -speed-x float
289 Rotation speed around the x axis (default: 1.1).
290
291 -speed-y float
292 Rotation speed around the y axis (default: 1.3).
293
294 -speed-z float
295 Rotation speed around the z axis (default: 1.5).
296
297 The following two options determine the walking speed and direction.
298
299 -walk-direction float
300 The walking direction is measured as an angle in degrees in the
301 2d square that forms the coordinate system of the surface of
302 the Klein bottle (default: 83.0). A value of 0 or 180 means
303 that the walk is along a circle at a randomly chosen distance
304 from the origin (parallel to a distance band). A value of 90
305 or 270 means that the walk is directly along a direction band.
306 Any other value results in a curved path along the surface. As
307 noted above, walking is performed only on the Ida surface.
308
309 -walk-speed float
310 The walking speed is measured in percent of some sensible maxi‐
311 mum speed (default: 20.0).
312
314 If you run this program in standalone mode in its turn mode, you can
315 rotate the Klein bottle by dragging the mouse while pressing the left
316 mouse button. This rotates the Klein bottle in 3d. To examine the
317 Klein bottle at your leisure, it is best to set all speeds to 0. Oth‐
318 erwise, the Klein bottle will rotate while the left mouse button is not
319 pressed. This kind of interaction is not available in the walk mode.
320
322 DISPLAY to get the default host and display number.
323
324 XENVIRONMENT
325 to get the name of a resource file that overrides the global
326 resources stored in the RESOURCE_MANAGER property.
327
329 X(1), xscreensaver(1)
330
332 Copyright © 2019-2020 by Carsten Steger. Permission to use, copy, mod‐
333 ify, distribute, and sell this software and its documentation for any
334 purpose is hereby granted without fee, provided that the above copy‐
335 right notice appear in all copies and that both that copyright notice
336 and this permission notice appear in supporting documentation. No rep‐
337 resentations are made about the suitability of this software for any
338 purpose. It is provided "as is" without express or implied warranty.
339
341 Carsten Steger <carsten@mirsanmir.org>, 05-jan-2020.
342
343
344
345X Version 11 6.02-4.fc35 (09-Nov-2021) etruscanvenus(6x)