1hypertorus(6x) XScreenSaver manual hypertorus(6x)
2
3
4
6 hypertorus - Draws a hypertorus that rotates in 4d
7
9 hypertorus [--display host:display.screen] [--install] [--visual vis‐
10 ual] [--window] [--root] [--window-id number] [--delay usecs] [--fps]
11 [--wireframe] [--surface] [--transparent] [--solid] [--bands] [--spi‐
12 rals-{1,2,4,8,16}] [--onesided] [--twosided] [--colorwheel] [--change-
13 colors] [--perspective-3d] [--orthographic-3d] [--perspective-4d]
14 [--orthographic-4d] [--speed-wx float] [--speed-wy float] [--speed-wz
15 float] [--speed-xy float] [--speed-xz float] [--speed-yz float]
16
18 The hypertorus program shows the Clifford torus as it rotates in 4d.
19 The Clifford torus is a torus lies on the "surface" of the hypersphere
20 in 4d. The program projects the 4d torus to 3d using either a perspec‐
21 tive or an orthographic projection. Of the two alternatives, the per‐
22 spective projection looks much more appealing. In orthographic projec‐
23 tions the torus degenerates into a doubly covered cylinder for some an‐
24 gles. The projected 3d torus can then be projected to the screen ei‐
25 ther perspectively or orthographically.
26
27 There are three display modes for the torus: mesh (wireframe), solid,
28 or transparent. Furthermore, the appearance of the torus can be as a
29 solid object or as a set of see-through bands or see-through spirals.
30 Finally, the colors with with the torus is drawn can be set to one-
31 sided, two-sided, or to a color wheel. The colors can be static or
32 changing dynamically. In one-sided color mode, the torus is drawn with
33 the same color on the inside and the outside. In two-sided color mode,
34 the torus is drawn with red on the outside and green on the inside if
35 static colors are used. If changing colors are used, dynamically vary‐
36 ing complementary colors are used for the two sides. This mode enables
37 you to see that the 3d projection of the torus turns inside-out as it
38 rotates in 4d. The color wheel mode draws the torus with a fully satu‐
39 rated color wheel. If changing colors are used, the colors of the
40 color wheel are varying dynamically. The color wheel mode gives a very
41 nice effect when combined with the see-through bands or see-through
42 spirals mode.
43
44 Finally, the rotation speed for each of the six planes around which the
45 torus rotates can be chosen.
46
47 This program is inspired by Thomas Banchoff's book "Beyond the Third
48 Dimension: Geometry, Computer Graphics, and Higher Dimensions", Scien‐
49 tific American Library, 1990.
50
52 hypertorus accepts the following options:
53
54 --window
55 Draw on a newly-created window. This is the default.
56
57 --root Draw on the root window.
58
59 --window-id number
60 Draw on the specified window.
61
62 --install
63 Install a private colormap for the window.
64
65 --visual visual
66 Specify which visual to use. Legal values are the name of a
67 visual class, or the id number (decimal or hex) of a specific
68 visual.
69
70 --delay microseconds
71 How much of a delay should be introduced between steps of the
72 animation. Default 25000, or 1/40th second.
73
74 The following three options are mutually exclusive. They determine how
75 the torus is displayed.
76
77 --wireframe
78 Display the torus as a wireframe mesh.
79
80 --surface
81 Display the torus as a solid surface (default).
82
83 --transparent
84 Display the torus as a transparent surface.
85
86 The following seven options are mutually exclusive. They determine the
87 appearance of the torus.
88
89 --solid Display the torus as a solid object.
90
91 --bands Display the torus as see-through bands (default).
92
93 --spirals-1, --spirals-2, --spirals-4, --spirals-8, --spirals-16
94 Display the torus as see-through spirals with the indicated
95 number of spirals.
96
97 The following three options are mutually exclusive. They determine how
98 to color the torus.
99
100 --onesided
101 Display the torus with a single color.
102
103 --twosided
104 Display the torus with two colors: one color on the outside and
105 the complementary on the inside. For static colors, the colors
106 are red and green.
107
108 --colorwheel
109 Display the torus with a fully saturated color wheel (default).
110 If the torus is displayed as see-through bands, each band will
111 be displayed with a different color. Likewise, if the torus is
112 displayed as see-through spirals, each spiral will receive a
113 different color.
114
115 The following options determine whether the colors with which the torus
116 is displayed are static or are changing dynamically.
117
118 --change-colors
119 Change the colors with which the torus is displayed dynami‐
120 cally.
121
122 --no-change-colors
123 Use static colors to display the torus (default).
124
125 The following two options are mutually exclusive. They determine how
126 the torus is projected from 3d to 2d (i.e., to the screen).
127
128 --perspective-3d
129 Project the torus from 3d to 2d using a perspective projection
130 (default).
131
132 --orthographic-3d
133 Project the torus from 3d to 2d using an orthographic projec‐
134 tion.
135
136 The following two options are mutually exclusive. They determine how
137 the torus is projected from 4d to 3d.
138
139 --perspective-4d
140 Project the torus from 4d to 3d using a perspective projection
141 (default).
142
143 --orthographic-4d
144 Project the torus from 4d to 3d using an orthographic projec‐
145 tion.
146
147 The following six options determine the rotation speed of the torus
148 around the six possible hyperplanes. The rotation speed is measured in
149 degrees per frame. The speeds should be set to relatively small val‐
150 ues, e.g., less than 4 in magnitude.
151
152 --speed-wx float
153 Rotation speed around the wx plane (default: 1.1).
154
155 --speed-wy float
156 Rotation speed around the wy plane (default: 1.3).
157
158 --speed-wz float
159 Rotation speed around the wz plane (default: 1.5).
160
161 --speed-xy float
162 Rotation speed around the xy plane (default: 1.7).
163
164 --speed-xz float
165 Rotation speed around the xz plane (default: 1.9).
166
167 --speed-yz float
168 Rotation speed around the yz plane (default: 2.1).
169
170 --fps Display the current frame rate, CPU load, and polygon count.
171
173 If you run this program in standalone mode you can rotate the hyper‐
174 torus by dragging the mouse while pressing the left mouse button. This
175 rotates the hypertorus in 3d, i.e., around the wx, wy, and wz planes.
176 If you press the shift key while dragging the mouse with the left but‐
177 ton pressed the hypertorus is rotated in 4d, i.e., around the xy, xz,
178 and yz planes. To examine the hypertorus at your leisure, it is best
179 to set all speeds to 0. Otherwise, the hypertorus will rotate while
180 the left mouse button is not pressed.
181
183 DISPLAY to get the default host and display number.
184
185 XENVIRONMENT
186 to get the name of a resource file that overrides the global
187 resources stored in the RESOURCE_MANAGER property.
188
189 XSCREENSAVER_WINDOW
190 The window ID to use with --root.
191
193 X(1), xscreensaver(1)
194
196 Copyright © 2003-2020 by Carsten Steger. Permission to use, copy, mod‐
197 ify, distribute, and sell this software and its documentation for any
198 purpose is hereby granted without fee, provided that the above copy‐
199 right notice appear in all copies and that both that copyright notice
200 and this permission notice appear in supporting documentation. No rep‐
201 resentations are made about the suitability of this software for any
202 purpose. It is provided "as is" without express or implied warranty.
203
205 Carsten Steger <carsten@mirsanmir.org>, 11-jan-2020.
206
207
208
209X Version 11 6.08-1.fc39 (17-Oct-2023) hypertorus(6x)