dwww Home | Manual pages | Find package

etruscanvenus(6x)             XScreenSaver manual            etruscanvenus(6x)

NAME
       etruscanvenus  -  Draws  a 3d immersion of a Klein bottle that smoothly
       deforms between the Etruscan Venus surface, the Roman surface, the  Boy
       surface surface, and the Ida surface.

SYNOPSIS
       etruscanvenus  [-display  host:display.screen] [-install] [-visual vis-
       ual] [-window]  [-root]  [-delay  usecs]  [-fps]  [-mode  display-mode]
       [-wireframe]   [-surface]   [-transparent]   [-appearance   appearance]
       [-solid] [-distance-bands]  [-direction-bands]  [-colors  color-scheme]
       [-onesided-colors]  [-twosided-colors]  [-distance-colors] [-direction-
       colors]  [-no-change-colors]  [-view-mode  view-mode]  [-walk]  [-turn]
       [-no-deform]  [-deformation-speed  float]  [-initial-deformation float]
       [-etruscan-venus] [-roman] [-boy] [-ida] [-orientation-marks] [-projec-
       tion  mode]  [-perspective]  [-orthographic] [-speed-x float] [-speed-y
       float] [-speed-z float] [-walk-direction float] [-walk-speed float]

DESCRIPTION
       The etruscanvenus program shows a 3d immersion of a Klein  bottle  that
       smoothly deforms between the Etruscan Venus surface, the Roman surface,
       the Boy surface, and the Ida surface.  You can walk on the Klein bottle
       or  turn it in 3d.  Topologically, all surfaces are Klein bottles, even
       the Roman and Boy surfaces, which are doubly covered and therefore  ap-
       pear  to  be an immersed real projective plane.  The smooth deformation
       between these surfaces was constructed by George K. Francis.

       The Klein bottle is a non-orientable surface.  To make  this  apparent,
       the two-sided color mode can be used.  Alternatively, orientation mark-
       ers (curling arrows) can be drawn as a texture map on  the  surface  of
       the  Klein  bottle.  While walking on the Klein bottle, you will notice
       that the orientation of the curling arrows changes (which it  must  be-
       cause  the Klein bottle is non-orientable).  Since all the surfaces ex-
       cept the Ida surface have points where the surface normal is  not  well
       defined for some points, walking is only performed on the Ida surface.

       As  mentioned  above, the Roman and Boy surfaces are doubly covered and
       therefore appear to be an immersed real projective plane.   Since  some
       of the parameter names are based on this interpretation of the surface,
       the geometry of the real projective plane  will  be  briefly  disussed.
       The  real projective plane is a model for the projective geometry in 2d
       space.  One point can be singled out as the origin.  A line can be sin-
       gled out as the line at infinity, i.e., a line that lies at an infinite
       distance to the origin.  The line at infinity is topologically  a  cir-
       cle.   Points on the line at infinity are also used to model directions
       in projective geometry.  Direction and distance bands refer to this in-
       terpretation  of  the  surface.  If direction bands are used, the bands
       extend from the origin of the projective plane in different  directions
       to  the line at infinity and back to the origin.  If distance bands are
       used, the bands lie at constant distances to the origin.  The same  in-
       terpretation is used for distance and direction colors.  Although there
       is no conceptually equivalent  geometric  interpretation  for  the  two
       Klein bottle surfaces (the Etruscan Venus and Ida surfaces), the smooth
       deformation between the surfaces results  in  a  natural  extension  of
       these concepts to the Klein bottle surfaces.

       The  immersed  surfaces  can be projected to the screen either perspec-
       tively or orthographically.  When using the walking  mode,  perspective
       projection to the screen will be used.

       There  are  three display modes for the Klein bottle: mesh (wireframe),
       solid, or transparent.  Furthermore, the appearance of the surface  can
       be  as  a solid object or as a set of see-through bands.  The bands can
       be distance bands or direction bands, as explained above.

       The colors with with the surface is drawn can be set to one-sided, two-
       sided, distance, or direction.  In one-sided mode, the surface is drawn
       with the same color on both sides of the underlying triangles.  In two-
       sided  mode, the surface is drawn with one color on one side of the un-
       derlying triangles and the  complementary  color  on  the  other  side.
       Since  the surface actually only has one side, the color jumps from red
       to green along a line on the surface.  This mode  enables  you  to  see
       that  the  surface is non-orientable.  In distance mode, the surface is
       displayed with fully saturated colors that depend on  the  distance  of
       the  points  on the projective plane to the origin, as described above.
       If the surface is displayed as distance bands, each band will  be  dis-
       played  with a different color.  In direction mode, the surface is dis-
       played with fully saturated colors that depend  on  the  angle  of  the
       points  on  the  projective plane with respect to the origin (see above
       for an explanation).  If the surface is displayed as  direction  bands,
       each band will be displayed with a different color.  The colors used to
       color the surface can either be static or can be changed dynamically.

       The rotation speed for each of the three coordinate axes  around  which
       the Klein bottle rotates can be chosen.

       Furthermore,  in  the walking mode the walking direction in the 2d base
       square of the surface and the walking speed can be chosen.  The walking
       direction  is  measured  as  an  angle in degrees in the 2d square that
       forms the coordinate system of the surface.  A value of 0 or 180  means
       that  the walk is along a circle at a randomly chosen distance from the
       origin (parallel to a distance band).  A value of 90 or 270 means  that
       the  walk  is directly along a direction band.  Any other value results
       in a curved path along the surface.  As noted above,  walking  is  per-
       formed only on the Ida surface.

       By  default, the immersion of the Klein bottle smoothly deforms between
       the Etruscan Venus surface, the Roman surface, the Boy surface, and the
       Ida  surface.   It  is possible to choose the speed of the deformation.
       Furthermore, it is possible to switch the deformation off.  It is  also
       possible  to  determine the initial deformation of the immersion.  This
       is mostly useful if the deformation is switched off, in which  case  it
       will determine the appearance of the surface.  A value of 0 corresponds
       to the Etruscan Venus surface, a value of 1000 to the Roman surface,  a
       value  of  2000 to the Boy surface, and a value of 3000 to the Ida sur-
       face.

       This program is inspired by George K.  Francis's  book  "A  Topological
       Picturebook",  Springer,  1987,  by George K. Francis's paper "The Etr-
       uscan Venus" in P. Concus, R.  Finn,  and  D.  A.  Hoffman:  "Geometric
       Analysis  and  Computer Graphics", Springer, 1991, and by a video enti-
       tled "The Etruscan Venus" by Donna J. Cox, George K. Francis, and  Ray-
       mond L. Idaszak, presented at SIGGRAPH 1989.

OPTIONS
       etruscanvenus accepts the following options:

       -window Draw on a newly-created window.  This is the default.

       -root   Draw on the root window.

       -install
               Install a private colormap for the window.

       -visual visual
               Specify  which  visual  to use.  Legal values are the name of a
               visual class, or the id number (decimal or hex) of  a  specific
               visual.

       -delay microseconds
               How  much  of a delay should be introduced between steps of the
               animation.  Default 10000, or 1/100th second.

       -fps    Display the current frame rate, CPU load, and polygon count.

       The following four options are mutually exclusive.  They determine  how
       the Klein bottle is displayed.

       -mode random
               Display the Klein bottle in a random display mode (default).

       -mode wireframe (Shortcut: -wireframe)
               Display the Klein bottle as a wireframe mesh.

       -mode surface (Shortcut: -surface)
               Display the Klein bottle as a solid surface.

       -mode transparent (Shortcut: -transparent)
               Display the Klein bottle as a transparent surface.

       The  following four options are mutually exclusive.  They determine the
       appearance of the Klein bottle.

       -appearance random
               Display the Klein bottle with a random appearance (default).

       -appearance solid (Shortcut: -solid)
               Display the Klein bottle as a solid object.

       -appearance distance-bands (Shortcut: -distance-bands)
               Display the Klein bottle as see-through bands that lie  at  in-
               creasing  distances  from the origin (see above for an explana-
               tion).

       -appearance direction-bands (Shortcut: -direction-bands)
               Display the Klein bottle as see-through bands that lie  at  in-
               creasing  angles  with  respect to the origin (see above for an
               explanation).

       The following five options are mutually exclusive.  They determine  how
       to color the Klein bottle.

       -colors random
               Display the Klein bottle with a random color scheme (default).

       -colors onesided (Shortcut: -onesided-colors)
               Display the Klein bottle with a single color.

       -colors twosided (Shortcut: -twosided-colors)
               Display  the  Klein  bottle  with  two colors: one color on one
               "side" and the complementary color on the "other side."

       -colors distance (Shortcut: -distance-colors)
               Display the Klein bottle with fully saturated colors  that  de-
               pend  on  the distance of the points on the projective plane to
               the origin (see above for an explanation).  If the Klein bottle
               is  displayed  as  distance  bands, each band will be displayed
               with a different color.

       -colors direction (Shortcut: -direction-colors)
               Display the Klein bottle with fully saturated colors  that  de-
               pend  on  the  angle of the points on the projective plane with
               respect to the origin (see above for an explanation).   If  the
               Klein bottle is displayed as direction bands, each band will be
               displayed with a different color.

       The following options determine whether the colors with which the Klein
       bottle are displayed are static or are changing dynamically.

       -change-colors
               Change  the colors with which the Klein bottle is displayed dy-
               namically (default).

       -no-change-colors
               Use static colors to display the Klein bottle.

       The following three options are mutually exclusive.  They determine how
       to view the Klein bottle.

       -view-mode random
               View  the  Klein  bottle  in a random view mode (default).  The
               walking mode will be randomly selected in approximately 10%  of
               the cases.

       -view-mode turn (Shortcut: -turn)
               View the Klein bottle while it turns in 3d.

       -view-mode walk (Shortcut: -walk)
               View the Klein bottle as if walking on its surface.

       The following options determine whether the surface is being deformed.

       -deform Deform the surface smoothly between the Etruscan Venus surface,
               the Roman surface, the Boy surface surface, and the Ida surface
               (default).

       -no-deform
               Don't deform the surface.

       The following option determines the deformation speed.

       -deformation-speed float
               The  deformation  speed is measured in percent of some sensible
               maximum speed (default: 10.0).

       The following options determine the initial deformation of the surface.
       As described above, this is mostly useful if -no-deform is specified.

       -initial-deformation float
               The  initial deformation is specified as a number between 0 and
               4000.  A value of 0 corresponds to the Etruscan Venus  surface,
               a  value  of  1000 to the Roman surface, a value of 2000 to the
               Boy surface, and a value of 3000 to the Ida surface.   The  de-
               fault value is 0.

       -etruscan-venus
               This is a shortcut for -initial-deformation 0.

       -roman  This is a shortcut for -initial-deformation 1000.

       -boy    This is a shortcut for -initial-deformation 2000.

       -ida    This is a shortcut for -initial-deformation 3000.

       The  following options determine whether orientation marks are shown on
       the Klein bottle.

       -orientation-marks
               Display orientation marks on the Klein bottle.

       -no-orientation-marks
               Don't display orientation marks on the Klein bottle (default).

       The following three options are mutually exclusive.  They determine how
       the Klain bottle is projected from 3d to 2d (i.e., to the screen).

       -projection random
               Project  the  Klein bottle from 3d to 2d using a random projec-
               tion mode (default).

       -projection perspective (Shortcut: -perspective)
               Project the Klein bottle from 3d to 2d using a perspective pro-
               jection.

       -projection orthographic (Shortcut: -orthographic)
               Project  the  Klein  bottle from 3d to 2d using an orthographic
               projection.

       The following three options determine the rotation speed of  the  Klein
       bottle  around the three possible axes.  The rotation speed is measured
       in degrees per frame.  The speeds should be  set  to  relatively  small
       values,  e.g.,  less than 4 in magnitude.  In walk mode, all speeds are
       ignored.

       -speed-x float
               Rotation speed around the x axis (default: 1.1).

       -speed-y float
               Rotation speed around the y axis (default: 1.3).

       -speed-z float
               Rotation speed around the z axis (default: 1.5).

       The following two options determine the walking speed and direction.

       -walk-direction float
               The walking direction is measured as an angle in degrees in the
               2d  square  that  forms the coordinate system of the surface of
               the Klein bottle (default: 83.0).  A value of 0  or  180  means
               that  the  walk is along a circle at a randomly chosen distance
               from the origin (parallel to a distance band).  A value  of  90
               or  270 means that the walk is directly along a direction band.
               Any other value results in a curved path along the surface.  As
               noted above, walking is performed only on the Ida surface.

       -walk-speed float
               The walking speed is measured in percent of some sensible maxi-
               mum speed (default: 20.0).

INTERACTION
       If you run this program in standalone mode in its turn  mode,  you  can
       rotate  the  Klein bottle by dragging the mouse while pressing the left
       mouse button.  This rotates the Klein bottle in  3d.   To  examine  the
       Klein  bottle at your leisure, it is best to set all speeds to 0.  Oth-
       erwise, the Klein bottle will rotate while the left mouse button is not
       pressed.  This kind of interaction is not available in the walk mode.

ENVIRONMENT
       DISPLAY to get the default host and display number.

       XENVIRONMENT
               to  get  the  name of a resource file that overrides the global
               resources stored in the RESOURCE_MANAGER property.

SEE ALSO
       X(1), xscreensaver(1)

COPYRIGHT
       Copyright © 2019-2020 by Carsten Steger.  Permission to use, copy, mod-
       ify,  distribute,  and sell this software and its documentation for any
       purpose is hereby granted without fee, provided that  the  above  copy-
       right  notice  appear in all copies and that both that copyright notice
       and this permission notice appear in supporting documentation.  No rep-
       resentations  are  made  about the suitability of this software for any
       purpose.  It is provided "as is" without express or implied warranty.

AUTHOR
       Carsten Steger <carsten@mirsanmir.org>, 05-jan-2020.

X Version 11                  5.45 (08-Dec-2020)             etruscanvenus(6x)

Generated by dwww version 1.14 on Fri Jan 24 06:15:52 CET 2025.