### xsurface-1.0 README file

    This is the README file for XSurface.
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    (c)1993-1995 Robert Manners and Dominick Layfield.

    XSurface is a program that allows the creation and manipulation of
    objects formed from bicubic Bezier patches.  It was written as a joint
    3rd year project for the Engineering and Computer Science Part I
    course at the University of Oxford.

    The executable is "xsurface".  This version of XSurface was developed
    under X11R5. The application has also been extensively tested under
    X11R6.

    Various stored objects may be found in the "surf" directory, including
    a README file with brief descriptions.

    This software is distributed under the terms of the GNU General Public
    Licence. Please see the file COPYING for details.

    Installation
    ~~~~~~~~~~~~

    If you have got hold of a binary distribution of XSurface for your
    system, you should simply be able to run the xsurface executable `as
    is'.  No further configuration should be required. If there is no
    binary distribution for your machine, or the binary you have will not
    work, (perhaps due to a mis-match in shared libraries) obtain the
    source version, and proceed as follows:

    Un-tar all the source files. Either modify the Makefile for your
    system, by hand, or run `xmkmf' to build a Makefile using the
    information from the Imakefile. Then run `make' to build the executable.

    There are a few options which may be enabled or disabled by defining
    symbols in the Imakefile / Makefile. Please examine the source, if you
    want to play with these!

    Quick User guide
    ~~~~~~~~~~~~~~~~

    XSurface has three main display windows.  One, "Bezier Surface", shows
    a straight line approximation to the surface.  Another, "Control
    Polyhedron", shows the control points that define the object.  The
    final one, "Connectivity", shows the connections between the component
    Bezier patches.

    At any time, only control points in the selected patch may be
    moved. The selected patch is shown as a filled square in the
    connectivity diagram, and its control points as filled circles in the
    control display.  A patch may be selected by clicking inside its
    square in the connectivity diagram.

    Control points may be moved by dragging them with the mouse.  Motion
    along the line of sight may be accomplished by holding shift down at
    the same time.

    The viewpoint may be changed by dragging in the Bezier window. Holding
    down shift whilst dragging alters the viewing distance.

    Patches may be created or deleted by shift-clicking in the relevant
    place in the connectivity window. Patches may be joined by dragging
    from one edge to another.

    For more information please obtain the complete User Guide, see below.

    Hardware
    ~~~~~~~~

    XSurface was originally written on SPARC hardware running SunOS.
    XSurface has also been found to run successfully on a PC running
    Linux, a VAX running Ultrix, and an SGI Indigo running Irix.

    It should run on all UNIX X installations. Please let me know if it
    works (or does not work) for you!

    Documentation
    ~~~~~~~~~~~~~

    The release of Xsurface available on most ftp sites has very little
    documentation... If you feel that you need more user documentation,
    please mail me at the address below. I can send you a full user
    guide. Extensive documentation on the usage of the application and
    on the mathematical theory underlying it is available by email. If
    there is much demand, I can make these documents available by ftp.

    Enjoy!

     ************************************************************************
    * If you wish to comment on the software, heap praise on the authors, or *
    * complain about bugs, please mail :                                     *
    *                                                                        *
    *                      rjm@swift.eng.ox.ac.uk                            *
    *                                                                        *
    * Any suggestions, improvements and general feedback will be appreciated *
     ************************************************************************