Provided by: xscreensaver-gl_5.08-0ubuntu3_i386 bug
 

NAME

        hypertorus - Draws a hypertorus that rotates in 4d
 

SYNOPSIS

        hypertorus  [-display  host:display.screen] [-install] [-visual visual]
        [-window]  [-root]  [-delay  usecs]  [-fps]   [-wireframe]   [-surface]
        [-transparent]  [-solid]  [-bands]  [-spirals-{1,2,4,8,16}] [-twosided]
        [-colorwheel]  [-perspective-3d]  [-orthographic-3d]  [-perspective-4d]
        [-orthographic-4d]   [-speed-wx  float]  [-speed-wy  float]  [-speed-wz
        float] [-speed-xy float] [-speed-xz float] [-speed-yz float]
 

DESCRIPTION

        The hypertorus program shows the Clifford torus as it  rotates  in  4d.
        The  Clifford torus is a torus lies on the "surface" of the hypersphere
        in 4d.  The program projects the 4d torus to 3d using either a perspec-
        tive  or an orthographic projection.  Of the two alternatives, the per-
        spective projection looks much more appealing.  In orthographic projec-
        tions  the  torus  degenerates  into a doubly covered cylinder for some
        angles.  The projected 3d torus can then be  projected  to  the  screen
        either  perspectively  or  orthographically.   There  are three display
        modes for the torus: mesh (wireframe), solid, or transparent.  Further-
        more,  the appearance of the torus can be as a solid object or as a set
        of see-through bands or see-through spirals.  Finally, the colors  with
        with  the  torus  is drawn can be set to either two-sided or to a color
        wheel.  In the first case, the torus is drawn with red on  the  outside
        and  green  on the inside.  This mode enables you to see that the torus
        turns inside-out as it rotates in 4d.  The second mode draws the  torus
        with a fully saturated color wheel.  This gives a very nice effect when
        combined with the see-through bands or see-through spirals  mode.   The
        rotation  speed  for  each  of  the  six  planes around which the torus
        rotates can be chosen.  This program is very much  inspired  by  Thomas
        Banchoff's  book "Beyond the Third Dimension: Geometry, Computer Graph-
        ics, and Higher Dimensions", Scientific American Library, 1990.
 

OPTIONS

        hypertorus 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 25000, or 1/40th second.
 
        The following three options are mutually exclusive.  They determine how
        the torus is displayed.
 
        -wireframe
                Display the torus as a wireframe mesh.
 
        -surface
                Display the torus as a solid surface (default).
 
        -transparent
                Display the torus as a transparent surface.
 
        The following seven options are mutually exclusive.  They determine the
        appearance of the torus.
 
        -solid  Display the torus as a solid object.
 
        -bands  Display the torus as see-through bands (default).
 
        -spirals-1, -spirals-2, -spirals-4, -spirals-8, -spirals-16
                Display  the  torus  as  see-through spirals with the indicated
                number of spirals.
 
        The following two options are mutually exclusive.  They  determine  how
        to color the torus.
 
        -twosided
                Display the torus with two colors: red on the outside and green
                on the inside.
 
        -colorwheel
                Display the torus with a fully saturated color wheel (default).
                If  the  torus is displayed as see-through bands each band will
                be displayed with a different color.  Likewise, if the torus is
                displayed  as  see-through  spirals  each spiral will receive a
                different color.
 
        The following two options are mutually exclusive.  They  determine  how
        the torus is projected from 3d to 2d (i.e., to the screen).
 
        -perspective-3d
                Project  the torus from 3d to 2d using a perspective projection
                (default).
 
        -orthographic-3d
                Project the torus from 3d to 2d using an  orthographic  projec-
                tion.
 
        The  following  two options are mutually exclusive.  They determine how
        the torus is projected from 4d to 3d.
 
        -perspective-4d
                Project the torus from 4d to 3d using a perspective  projection
                (default).
 
        -orthographic-4d
                Project  the  torus from 4d to 3d using an orthographic projec-
                tion.
 
        The following six options determine the rotation  speed  of  the  torus
        around the six possible hyperplanes.  The rotation speed is measured in
        degrees per frame.  The speeds should be set to relatively  small  val-
        ues, e.g., less than 4 in magnitude.
 
        -speed-wx float
                Rotation speed around the wx plane (default: 1.1).
 
        -speed-wy float
                Rotation speed around the wy plane (default: 1.3).
 
        -speed-wz float
                Rotation speed around the wz plane (default: 1.5).
 
        -speed-xy float
                Rotation speed around the xy plane (default: 1.7).
 
        -speed-xz float
                Rotation speed around the xz plane (default: 1.9).
 
        -speed-yz float
                Rotation speed around the yz plane (default: 2.1).
 
        -fps    Display the current frame rate, CPU load, and polygon count.
 

INTERACTION

        If  you  run  this program in standalone mode you can rotate the hyper-
        torus by dragging the mouse while pressing the left mouse button.  This
        rotates  the  hypertorus in 3D, i.e., around the wx, wy, and wz planes.
        If you press the shift key while dragging the mouse with the left  but-
        ton  pressed  the hypertorus is rotated in 4D, i.e., around the xy, xz,
        and yz planes.  To examine the hypertorus at your leisure, it  is  best
        to  set  all  speeds to 0.  Otherwise, the hypertorus will rotate while
        the left mouse button is not pressed.
 

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.
        X(1), xscreensaver(1)
 

COPYRIGHT

        Copyright  (C)  2003-2005  by Carsten Steger.  Permission to use, copy,
        modify, distribute, and sell this software and  its  documentation  for
        any  purpose  is  hereby  granted  without fee, provided that the above
        copyright notice appear in all copies  and  that  both  that  copyright
        notice  and  this permission notice appear in supporting documentation.
        No representations are made about the suitability of this software  for
        any  purpose.   It  is provided "as is" without express or implied war-
        ranty.
 

AUTHOR

        Carsten Steger <carsten@mirsanmir.org>, 28-sep-2005.