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

NAME

6       romanboy  -  Draws  a  3d  immersion  of the real projective plane that
7       smoothly deforms between the Roman surface and the Boy surface.
8

SYNOPSIS

10       romanboy [-display  host:display.screen]  [-install]  [-visual  visual]
11       [-window]  [-root]  [-delay  usecs] [-fps] [-mode display-mode] [-wire‐
12       frame]  [-surface]  [-transparent]  [-appearance  appearance]  [-solid]
13       [-distance-bands] [-direction-bands] [-colors color-scheme] [-twosided-
14       colors] [-distance-colors] [-direction-colors]  [-view-mode  view-mode]
15       [-walk]  [-turn]  [-no-deform]  [-deformation-speed  float]  [-initial-
16       deformation float] [-roman] [-boy] [-surface-order  number]  [-orienta‐
17       tion-marks] [-projection mode] [-perspective] [-orthographic] [-speed-x
18       float]  [-speed-y  float]  [-speed-z  float]  [-walk-direction   float]
19       [-walk-speed float]
20

DESCRIPTION

22       The  romanboy program shows a 3d immersion of the real projective plane
23       that smoothly deforms between the Roman surface and  the  Boy  surface.
24       You  can walk on the projective plane or turn in 3d.  The smooth defor‐
25       mation (homotopy) between these two famous immersions of the real  pro‐
26       jective plane was constructed by Fran�ois Ap�ry.
27
28       The  real  projective  plane is a non-orientable surface.  To make this
29       apparent, the two-sided color mode can be used.  Alternatively,  orien‐
30       tation  markers  (curling  arrows) can be drawn as a texture map on the
31       surface of the projective  plane.   While  walking  on  the  projective
32       plane,  you  will  notice  that  the  orientation of the curling arrows
33       changes (which it must because the projective plane is non-orientable).
34
35       The real projective plane is a model for the projective geometry in  2d
36       space.  One point can be singled out as the origin.  A line can be sin‐
37       gled out as the line at infinity, i.e., a line that lies at an infinite
38       distance  to  the origin.  The line at infinity is topologically a cir‐
39       cle.  Points on the line at infinity are also used to model  directions
40       in projective geometry.  The origin can be visualized in different man‐
41       ners.  When using distance colors, the origin is the point that is dis‐
42       played  as fully saturated red, which is easier to see as the center of
43       the reddish area on the projective plane.   Alternatively,  when  using
44       distance bands, the origin is the center of the only band that projects
45       to a disk.  When using direction bands, the origin is the  point  where
46       all  direction  bands  collapse  to a point.  Finally, when orientation
47       markers are being displayed, the origin the the point where all  orien‐
48       tation  markers  are  compressed  to a point.  The line at infinity can
49       also be visualized in different ways.  When using distance colors,  the
50       line  at  infinity  is  the  line  that is displayed as fully saturated
51       magenta.  When two-sided colors are used, the line at infinity lies  at
52       the points where the red and green "sides" of the projective plane meet
53       (of course, the real projective plane only has one side, so this  is  a
54       design  choice  of the visualization).  Alternatively, when orientation
55       markers are being displayed, the line at infinity is  the  place  where
56       the orientation markers change their orientation.
57
58       Note that when the projective plane is displayed with bands, the orien‐
59       tation markers are placed in the middle of  the  bands.   For  distance
60       bands,  the  bands are chosen in such a way that the band at the origin
61       is only half as wide as the remaining bands, which results  in  a  disk
62       being displayed at the origin that has the same diameter as the remain‐
63       ing bands.  This choice, however, also implies that the band at  infin‐
64       ity  is half as wide as the other bands.  Since the projective plane is
65       attached to itself (in a complicated fashion) at the line at  infinity,
66       effectively  the  band  at  infinity  is again as wide as the remaining
67       bands.  However, since the orientation markers  are  displayed  in  the
68       middle  of  the bands, this means that only one half of the orientation
69       markers will be displayed twice at the line  at  infinity  if  distance
70       bands are used.  If direction bands are used or if the projective plane
71       is displayed as a solid surface, the orientation markers are  displayed
72       fully at the respective sides of the line at infinity.
73
74       The  immersed  projective  plane  can be projected to the screen either
75       perspectively or orthographically.  When using the walking modes,  per‐
76       spective projection to the screen will be used.
77
78       There  are  three  display  modes for the projective plane: mesh (wire‐
79       frame), solid, or transparent.  Furthermore, the appearance of the pro‐
80       jective  plane  can  be  as  a  solid object or as a set of see-through
81       bands.  The bands can be  distance  bands,  i.e.,  bands  that  lie  at
82       increasing  distances  from the origin, or direction bands, i.e., bands
83       that lie at increasing angles with respect to the origin.
84
85       When the projective plane is displayed with direction bands,  you  will
86       be  able  to see that each direction band (modulo the "pinching" at the
87       origin) is a Moebius strip, which also shows that the projective  plane
88       is non-orientable.
89
90       Finally,  the colors with with the projective plane is drawn can be set
91       to two-sided, distance, or direction.  In two-sided mode,  the  projec‐
92       tive  plane  is  drawn  with  red on one "side" and green on the "other
93       side".  As described above, the projective plane only has one side,  so
94       the  color  jumps  from  red to green along the line at infinity.  This
95       mode enables you to see that the projective  plane  is  non-orientable.
96       In  distance  mode,  the projective plane is displayed with fully satu‐
97       rated colors that depend on the distance of the points on  the  projec‐
98       tive  plane to the origin.  The origin is displayed in red, the line at
99       infinity is displayed in magenta.  If the projective plane is displayed
100       as  distance bands, each band will be displayed with a different color.
101       In direction mode, the projective plane is displayed with  fully  satu‐
102       rated  colors  that depend on the angle of the points on the projective
103       plane with respect to the origin.  Angles in opposite directions to the
104       origin (e.g., 15 and 205 degrees) are displayed in the same color since
105       they are projectively equivalent.  If the projective plane is displayed
106       as direction bands, each band will be displayed with a different color.
107
108       The  rotation  speed for each of the three coordinate axes around which
109       the projective plane rotates can be chosen.
110
111       Furthermore, in the walking mode the walking direction in the  2d  base
112       square  of  the  projective  plane and the walking speed can be chosen.
113       The walking direction is measured as an angle  in  degrees  in  the  2d
114       square  that  forms the coordinate system of the surface of the projec‐
115       tive plane.  A value of 0 or 180 means that the walk is along a  circle
116       at  a  randomly chosen distance from the origin (parallel to a distance
117       band).  A value of 90 or 270 means that the walk is directly  from  the
118       origin  to  the  line  at  infinity  and back (analogous to a direction
119       band).  Any other value results in a curved path from the origin to the
120       line at infinity and back.
121
122       By default, the immersion of the real projective plane smoothly deforms
123       between the Roman and Boy surfaces.  It is possible to choose the speed
124       of the deformation.  Furthermore, it is possible to switch the deforma‐
125       tion off.  It is also possible to determine the initial deformation  of
126       the  immersion.   This  is mostly useful if the deformation is switched
127       off, in which case it will determine the appearance of the surface.
128
129       As a final option, it is possible to display  generalized  versions  of
130       the  immersion  discussed above by specifying the order of the surface.
131       The default surface order of 3 results in the  immersion  of  the  real
132       projective  described above.  The surface order can be chosen between 2
133       and 9.  Odd surface orders result in generalized immersions of the real
134       projective  plane,  while even numbers result in a immersion of a topo‐
135       logical sphere (which is orientable).  The most interesting  even  case
136       is  a  surface order of 2, which results in an immersion of the halfway
137       model of Morin's sphere eversion (if the deformation is switched off).
138
139       This program is inspired by Fran�ois Ap�ry's book "Models of  the  Real
140       Projective Plane", Vieweg, 1987.
141

OPTIONS

143       romanboy accepts the following options:
144
145       -window Draw on a newly-created window.  This is the default.
146
147       -root   Draw on the root window.
148
149       -install
150               Install a private colormap for the window.
151
152       -visual visual
153               Specify  which  visual  to use.  Legal values are the name of a
154               visual class, or the id number (decimal or hex) of  a  specific
155               visual.
156
157       -delay microseconds
158               How  much  of a delay should be introduced between steps of the
159               animation.  Default 10000, or 1/100th second.
160
161       -fps    Display the current frame rate, CPU load, and polygon count.
162
163       The following four options are mutually exclusive.  They determine  how
164       the projective plane is displayed.
165
166       -mode random
167               Display   the   projective  plane  in  a  random  display  mode
168               (default).
169
170       -mode wireframe (Shortcut: -wireframe)
171               Display the projective plane as a wireframe mesh.
172
173       -mode surface (Shortcut: -surface)
174               Display the projective plane as a solid surface.
175
176       -mode transparent (Shortcut: -transparent)
177               Display the projective plane as a transparent surface.
178
179       The following four options are mutually exclusive.  They determine  the
180       appearance of the projective plane.
181
182       -appearance random
183               Display   the   projective   plane  with  a  random  appearance
184               (default).
185
186       -appearance solid (Shortcut: -solid)
187               Display the projective plane as a solid object.
188
189       -appearance distance-bands (Shortcut: -distance-bands)
190               Display the projective plane as see-through bands that  lie  at
191               increasing distances from the origin.
192
193       -appearance direction-bands (Shortcut: -direction-bands)
194               Display  the  projective plane as see-through bands that lie at
195               increasing angles with respect to the origin.
196
197       The following four options are mutually exclusive.  They determine  how
198       to color the projective plane.
199
200       -colors random
201               Display  the  projective  plane  with  a  random  color  scheme
202               (default).
203
204       -colors twosided (Shortcut: -twosided-colors)
205               Display the projective plane with two colors: red on one "side"
206               and  green on the "other side."  Note that the line at infinity
207               lies at the points where the red and green "sides" of the  pro‐
208               jective  plane meet, i.e., where the orientation of the projec‐
209               tive plane reverses.
210
211       -colors distance (Shortcut: -distance-colors)
212               Display the projective plane with fully saturated  colors  that
213               depend on the distance of the points on the projective plane to
214               the origin.  The origin is displayed in red, the line at infin‐
215               ity  is  displayed in magenta.  If the projective plane is dis‐
216               played as distance bands, each band will be  displayed  with  a
217               different color.
218
219       -colors direction (Shortcut: -direction-colors)
220               Display  the  projective plane with fully saturated colors that
221               depend on the angle of the points on the projective plane  with
222               respect  to  the  origin.  Angles in opposite directions to the
223               origin (e.g., 15 and 205 degrees) are  displayed  in  the  same
224               color  since  they are projectively equivalent.  If the projec‐
225               tive plane is displayed as direction bands, each band  will  be
226               displayed with a different color.
227
228       The following three options are mutually exclusive.  They determine how
229       to view the projective plane.
230
231       -view-mode random
232               View the projective plane in a random view mode (default).
233
234       -view-mode turn (Shortcut: -turn)
235               View the projective plane while it turns in 3d.
236
237       -view-mode walk (Shortcut: -walk)
238               View the projective plane as if walking on its surface.
239
240       The following options determine whether the surface is being deformed.
241
242       -deform Deform the surface smoothly between the Roman and Boy  surfaces
243               (default).
244
245       -no-deform
246               Don't deform the surface.
247
248       The following option determines the deformation speed.
249
250       -deformation-speed float
251               The  deformation  speed is measured in percent of some sensible
252               maximum speed (default: 10.0).
253
254       The following options determine the initial deformation of the surface.
255       As described above, this is mostly useful if -no-deform is specified.
256
257       -initial-deformation float
258               The  initial deformation is specified as a number between 0 and
259               1000.  A value of 0 corresponds to the Roman surface,  while  a
260               value  of  1000  corresponds  to  the Boy surface.  The default
261               value is 1000.
262
263       -roman  This is a shortcut for -initial-deformation 0.
264
265       -boy    This is a shortcut for -initial-deformation 1000.
266
267       The following option determines the order of the  surface  to  be  dis‐
268       played.
269
270       -surface-order number
271               The  surface  order  can  be  set  to  values  between  2 and 9
272               (default: 3).  As described above, odd surface orders result in
273               generalized immersions of the real projective plane, while even
274               numbers result in a immersion of a topological sphere.
275
276       The following options determine whether orientation marks are shown  on
277       the projective plane.
278
279       -orientation-marks
280               Display orientation marks on the projective plane.
281
282       -no-orientation-marks
283               Don't   display  orientation  marks  on  the  projective  plane
284               (default).
285
286       The following three options are mutually exclusive.  They determine how
287       the projective plane is projected from 3d to 2d (i.e., to the screen).
288
289       -projection random
290               Project  the projective plane from 3d to 2d using a random pro‐
291               jection mode (default).
292
293       -projection perspective (Shortcut: -perspective)
294               Project the projective plane from 3d to 2d using a  perspective
295               projection.
296
297       -projection orthographic (Shortcut: -orthographic)
298               Project  the  projective  plane  from  3d to 2d using an ortho‐
299               graphic projection.
300
301       The following three options determine the rotation speed of the projec‐
302       tive  plane around the three possible axes.  The rotation speed is mea‐
303       sured in degrees per frame.  The speeds should  be  set  to  relatively
304       small values, e.g., less than 4 in magnitude.  In walk mode, all speeds
305       are ignored.
306
307       -speed-x float
308               Rotation speed around the x axis (default: 1.1).
309
310       -speed-y float
311               Rotation speed around the y axis (default: 1.3).
312
313       -speed-z float
314               Rotation speed around the z axis (default: 1.5).
315
316       The following two options determine the walking speed and direction.
317
318       -walk-direction float
319               The walking direction is measured as an angle in degrees in the
320               2d  square  that  forms the coordinate system of the surface of
321               the projective plane (default: 83.0).  A  value  of  0  or  180
322               means that the walk is along a circle at a randomly chosen dis‐
323               tance from the origin (parallel to a distance band).   A  value
324               of 90 or 270 means that the walk is directly from the origin to
325               the line at infinity and back (analogous to a direction  band).
326               Any other value results in a curved path from the origin to the
327               line at infinity and back.
328
329       -walk-speed float
330               The walking speed is measured in percent of some sensible maxi‐
331               mum speed (default: 20.0).
332

INTERACTION

334       If  you  run  this program in standalone mode in its turn mode, you can
335       rotate the projective plane by dragging the mouse  while  pressing  the
336       left  mouse button.  This rotates the projective plane in 3d.  To exam‐
337       ine the projective plane at your leisure, it is best to set all  speeds
338       to 0.  Otherwise, the projective plane will rotate while the left mouse
339       button is not pressed.  This kind of interaction is  not  available  in
340       the walk mode.
341

ENVIRONMENT

343       DISPLAY to get the default host and display number.
344
345       XENVIRONMENT
346               to  get  the  name of a resource file that overrides the global
347               resources stored in the RESOURCE_MANAGER property.
348

SEE ALSO

350       X(1), xscreensaver(1)
351
353       Copyright © 2013-2014 by Carsten Steger.  Permission to use, copy, mod‐
354       ify,  distribute,  and sell this software and its documentation for any
355       purpose is hereby granted without fee, provided that  the  above  copy‐
356       right  notice  appear in all copies and that both that copyright notice
357       and this permission notice appear in supporting documentation.  No rep‐
358       resentations  are  made  about the suitability of this software for any
359       purpose.  It is provided "as is" without express or implied warranty.
360

AUTHOR

362       Carsten Steger <carsten@mirsanmir.org>, 03-oct-2014.
363
364
365
366X Version 11               5.43-2.fc31 (27-Aug-2019)              romanboy(6x)
Impressum