1hypertorus(6x)                XScreenSaver manual               hypertorus(6x)
2
3
4

NAME

6       hypertorus - Draws a hypertorus that rotates in 4d
7

SYNOPSIS

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

DESCRIPTION

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

OPTIONS

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

INTERACTION

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

ENVIRONMENT

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

SEE ALSO

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

AUTHOR

205       Carsten Steger <carsten@mirsanmir.org>, 11-jan-2020.
206
207
208
209X Version 11               6.08-1.fc38 (17-Oct-2023)            hypertorus(6x)
Impressum