1klein(6x) XScreenSaver manual klein(6x)
2
3
4
6 klein - Draws a 4d Klein bottle.
7
9 klein [-display host:display.screen] [-install] [-visual visual] [-win‐
10 dow] [-root] [-delay usecs] [-fps] [-klein-bottle bottle-name] [-fig‐
11 ure-8] [-pinched-torus] [-lawson] [-mode display-mode] [-wireframe]
12 [-surface] [-transparent] [-appearance appearance] [-solid] [-bands]
13 [-colors color-scheme] [-onesided] [-twosided] [-rainbow] [-depth]
14 [-change-colors] [-view-mode view-mode] [-walk] [-turn] [-walk-turn]
15 [-orientation-marks] [-projection-3d mode] [-perspective-3d] [-ortho‐
16 graphic-3d] [-projection-4d mode] [-perspective-4d] [-orthographic-4d]
17 [-speed-wx float] [-speed-wy float] [-speed-wz float] [-speed-xy float]
18 [-speed-xz float] [-speed-yz float] [-walk-direction float] [-walk-
19 speed float]
20
22 The klein program shows three different Klein bottles in 4d: the fig‐
23 ure-8 Klein bottle, the pinched torus Klein bottle, or the Lawson Klein
24 bottle. You can walk on the Klein bottle, see it turn in 4d, or walk
25 on it while it turns in 4d. The figure-8 Klein bottle is well known in
26 its 3d form. The 4d form used in this program is an extension of the
27 3d form to 4d that does not intersect itself in 4d (which can be seen
28 in the depth colors mode when using static colors). The pinched torus
29 Klein bottle also does not intersect itself in 4d (which can be seen in
30 the depth colors mode when using static colors). The Lawson Klein bot‐
31 tle, on the other hand, does intersect itself in 4d. Its primary use
32 is that it has a nice appearance for walking and for turning in 3d.
33
34 The Klein bottle is a non-orientable surface. To make this apparent,
35 the two-sided color mode can be used. Alternatively, orientation mark‐
36 ers (curling arrows) can be drawn as a texture map on the surface of
37 the Klein bottle. While walking on the Klein bottle, you will notice
38 that the orientation of the curling arrows changes (which it must
39 because the Klein bottle is non-orientable).
40
41 The program projects the 4d Klein bottle to 3d using either a perspec‐
42 tive or an orthographic projection. Which of the two alternatives
43 looks more appealing depends on the viewing mode and the Klein bottle.
44 For example, the Lawson Klein bottle looks nicest when projected per‐
45 spectively. The figure-8 Klein bottle, on the other hand, looks nicer
46 while walking when projected orthographically from 4d. For the pinched
47 torus Klein bottle, both projection modes give equally acceptable pro‐
48 jections.
49
50 The projected Klein bottle can then be projected to the screen either
51 perspectively or orthographically. When using the walking modes, per‐
52 spective projection to the screen should be used.
53
54 There are three display modes for the Klein bottle: mesh (wireframe),
55 solid, or transparent. Furthermore, the appearance of the Klein bottle
56 can be as a solid object or as a set of see-through bands. Finally,
57 the colors with with the Klein bottle is drawn can be set to one-sided,
58 two-sided, rainbow, or depth. In one-sided mode, the Klein bottle is
59 drawn with the same color on both "sides." In two-sided mode (using
60 static colors), the Klein bottle is drawn with red on one "side" and
61 green on the "other side." Of course, the Klein bottle only has one
62 side, so the color jumps from red to green along a curve on the surface
63 of the Klein bottle. This mode enables you to see that the Klein bot‐
64 tle is non-orientable. If changing colors are used in two-sided mode,
65 changing complementary colors are used on the respective "sides." The
66 rainbow color mode (using static colors) draws the Klein bottle with a
67 color wheel of fully saturated rainbow colors. If changing colors are
68 used, the color wheel's colors change dynamically. The rainbow color
69 mode gives a very nice effect when combined with the see-through bands
70 mode or with the orientation markers drawn. The depth color mode draws
71 the Klein bottle with colors that are chosen according to the 4d
72 "depth" of the points. If static colors are used, this mode enables
73 you to see that the figure-8 and pinched torus Klein bottles do not
74 intersect themselves in 4d, while the Lawson Klein bottle does inter‐
75 sect itself.
76
77 The rotation speed for each of the six planes around which the Klein
78 bottle rotates can be chosen. For the walk-and-turn mode, only the
79 rotation speeds around the true 4d planes are used (the xy, xz, and yz
80 planes).
81
82 Furthermore, in the walking modes the walking direction in the 2d base
83 square of the Klein bottle and the walking speed can be chosen.
84
85 This program is somewhat inspired by Thomas Banchoff's book "Beyond the
86 Third Dimension: Geometry, Computer Graphics, and Higher Dimensions",
87 Scientific American Library, 1990.
88
90 klein accepts the following options:
91
92 -window Draw on a newly-created window. This is the default.
93
94 -root Draw on the root window.
95
96 -install
97 Install a private colormap for the window.
98
99 -visual visual
100 Specify which visual to use. Legal values are the name of a
101 visual class, or the id number (decimal or hex) of a specific
102 visual.
103
104 -delay microseconds
105 How much of a delay should be introduced between steps of the
106 animation. Default 10000, or 1/100th second.
107
108 -fps Display the current frame rate, CPU load, and polygon count.
109
110 The following three options are mutually exclusive. They determine
111 which Klein bottle is displayed.
112
113 -klein-bottle random
114 Display a random Klein bottle (default).
115
116 -klein-bottle figure-8 (Shortcut: -figure-8)
117 Display the figure-8 Klein bottle.
118
119 -klein-bottle pinched-torus (Shortcut: -pinched-torus)
120 Display the pinched torus Klein bottle.
121
122 -klein-bottle lawson (Shortcut: -lawson)
123 Display the Lawson Klein bottle.
124
125 The following four options are mutually exclusive. They determine how
126 the Klein bottle is displayed.
127
128 -mode random
129 Display the Klein bottle in a random display mode (default).
130
131 -mode wireframe (Shortcut: -wireframe)
132 Display the Klein bottle as a wireframe mesh.
133
134 -mode surface (Shortcut: -surface)
135 Display the Klein bottle as a solid surface.
136
137 -mode transparent (Shortcut: -transparent)
138 Display the Klein bottle as a transparent surface.
139
140 The following three options are mutually exclusive. They determine the
141 appearance of the Klein bottle.
142
143 -appearance random
144 Display the Klein bottle with a random appearance (default).
145
146 -appearance solid (Shortcut: -solid)
147 Display the Klein bottle as a solid object.
148
149 -appearance bands (Shortcut: -bands)
150 Display the Klein bottle as see-through bands.
151
152 The following five options are mutually exclusive. They determine how
153 to color the Klein bottle.
154
155 -colors random
156 Display the Klein bottle with a random color scheme (default).
157
158 -colors one-sided (Shortcut: -onesided)
159 Display the Klein bottle with a single color.
160
161 -colors two-sided (Shortcut: -twosided)
162 Display the Klein bottle with two colors: one color one "side"
163 and the complementary color on the "other side." For static
164 colors, the colors are red and green.
165
166 -colors rainbow (Shortcut: -rainbow)
167 Display the Klein bottle with fully saturated rainbow colors.
168 If the Klein bottle is displayed as see-through bands, each
169 band will be displayed with a different color.
170
171 -colors depth (Shortcut: -depth)
172 Display the Klein bottle with colors chosen depending on the 4d
173 "depth" of the points.
174
175 The following options determine whether the colors with which the Klein
176 bottle is displayed are static or are changing dynamically.
177
178 -change-colors
179 Change the colors with which the Klein bottle is displayed
180 dynamically.
181
182 -no-change-colors
183 Use static colors to display the Klein bottle (default).
184
185 The following four options are mutually exclusive. They determine how
186 to view the Klein bottle.
187
188 -view-mode random
189 View the Klein bottle in a random view mode (default).
190
191 -view-mode walk (Shortcut: -walk)
192 View the Klein bottle as if walking on its surface.
193
194 -view-mode turn (Shortcut: -turn)
195 View the Klein bottle while it turns in 4d.
196
197 -view-mode walk-turn (Shortcut: -walk-turn)
198 View the Klein bottle as if walking on its surface. Addition‐
199 ally, the Klein bottle turns around the true 4d planes (the xy,
200 xz, and yz planes).
201
202 The following options determine whether orientation marks are shown on
203 the Klein bottle.
204
205 -orientation-marks
206 Display orientation marks on the Klein bottle.
207
208 -no-orientation-marks
209 Don't display orientation marks on the Klein bottle (default).
210
211 The following three options are mutually exclusive. They determine how
212 the Klein bottle is projected from 3d to 2d (i.e., to the screen).
213
214 -projection-3d random
215 Project the Klein bottle from 3d to 2d using a random projec‐
216 tion mode (default).
217
218 -projection-3d perspective (Shortcut: -perspective-3d)
219 Project the Klein bottle from 3d to 2d using a perspective pro‐
220 jection.
221
222 -projection-3d orthographic (Shortcut: -orthographic-3d)
223 Project the Klein bottle from 3d to 2d using an orthographic
224 projection.
225
226 The following three options are mutually exclusive. They determine how
227 the Klein bottle is projected from 4d to 3d.
228
229 -projection-4d random
230 Project the Klein bottle from 4d to 3d using a random projec‐
231 tion mode (default).
232
233 -projection-4d perspective (Shortcut: -perspective-4d)
234 Project the Klein bottle from 4d to 3d using a perspective pro‐
235 jection.
236
237 -projection-4d orthographic (Shortcut: -orthographic-4d)
238 Project the Klein bottle from 4d to 3d using an orthographic
239 projection.
240
241 The following six options determine the rotation speed of the Klein
242 bottle around the six possible hyperplanes. The rotation speed is mea‐
243 sured in degrees per frame. The speeds should be set to relatively
244 small values, e.g., less than 4 in magnitude. In walk mode, all speeds
245 are ignored. In walk-and-turn mode, the 3d rotation speeds are ignored
246 (i.e., the wx, wy, and wz speeds). In walk-and-turn mode, smaller
247 speeds must be used than in the turn mode to achieve a nice visualiza‐
248 tion. Therefore, in walk-and-turn mode the speeds you have selected
249 are divided by 5 internally.
250
251 -speed-wx float
252 Rotation speed around the wx plane (default: 1.1).
253
254 -speed-wy float
255 Rotation speed around the wy plane (default: 1.3).
256
257 -speed-wz float
258 Rotation speed around the wz plane (default: 1.5).
259
260 -speed-xy float
261 Rotation speed around the xy plane (default: 1.7).
262
263 -speed-xz float
264 Rotation speed around the xz plane (default: 1.9).
265
266 -speed-yz float
267 Rotation speed around the yz plane (default: 2.1).
268
269 The following two options determine the walking speed and direction.
270
271 -walk-direction float
272 The walking direction is measured as an angle in degrees in the
273 2d square that forms the coordinate system of the surface of
274 the Klein bottle (default: 7.0).
275
276 -walk-speed float
277 The walking speed is measured in percent of some sensible maxi‐
278 mum speed (default: 20.0).
279
281 If you run this program in standalone mode in its turn mode, you can
282 rotate the Klein bottle by dragging the mouse while pressing the left
283 mouse button. This rotates the Klein bottle in 3D, i.e., around the
284 wx, wy, and wz planes. If you press the shift key while dragging the
285 mouse with the left button pressed the Klein bottle is rotated in 4D,
286 i.e., around the xy, xz, and yz planes. To examine the Klein bottle at
287 your leisure, it is best to set all speeds to 0. Otherwise, the Klein
288 bottle will rotate while the left mouse button is not pressed. This
289 kind of interaction is not available in the two walk modes.
290
292 DISPLAY to get the default host and display number.
293
294 XENVIRONMENT
295 to get the name of a resource file that overrides the global
296 resources stored in the RESOURCE_MANAGER property.
297
299 X(1), xscreensaver(1)
300
302 Copyright © 2005-2020 by Carsten Steger. Permission to use, copy, mod‐
303 ify, distribute, and sell this software and its documentation for any
304 purpose is hereby granted without fee, provided that the above copy‐
305 right notice appear in all copies and that both that copyright notice
306 and this permission notice appear in supporting documentation. No rep‐
307 resentations are made about the suitability of this software for any
308 purpose. It is provided "as is" without express or implied warranty.
309
311 Carsten Steger <carsten@mirsanmir.org>, 11-jan-2020.
312
313
314
315X Version 11 5.44-2.fc32 (16-Apr-2020) klein(6x)