                            === Tcl-SIPP 3.0a ===

    This package provides a Tcl command interface to the SIPP rendering
program.  SIPP, the SImple Polygon Processor, is a library for creating
3-dimensional scenes and rendering them using a scan-line z-buffer algorithm.
Tcl is an easy to use, powerful, interpretive programming language, that is
designed to be imbeddable in applications.

    Tcl-SIPP is a set of Tcl commands used to programmed SIPP without having to
write and compile C code.  Commands are used to specify surfaces, objects,
scenes and rendering options.  Scenes may be rendered to files in the PPM
format or in Utah Raster Toolkit RLE format.

   This interface greatly speeds the development of scenes because no compile
and link phase is required.  Data is represented in a simple ASCII form.
This is particularly useful when for producing 3D scenes from ASCII data
generated by other programs.  Since most of the work in creating a scene is
still done in libsipp, the is only a small performance cost in programming from
Tcl.


REQUIREMENTS
============
The following software packages are required to build and use Tcl-SIPP:

   o SIPP 3.0 - The SImple Polygon Processor
        wuarchive.wustl.edu:/graphics/graphics/packages/sipp/sipp-3.0.tar.Z
        isy.lie.se:/src/sipp-3.0.tar.Z (note: this site is in Sweden)

   o Tcl 6.4 - The Tcl command language
        sprite.bekerley.edu:/pub/tcl/tcl6.4.tar.Z

   o TclX6.4c - Extended Tcl, an add on package for Tcl.
        sprite.bekerley.edu:/pub/tcl/tclX6.4c.tar.Z
        barkley.bekerley.edu:/tcl/extensions/tclX6.4c.tar.Z

   o Utah Raster Toolkit (optional) - This tool kit is great, check it out.
        cs.utah.edu:/pub/urt/urt-3.0.tar.Z
        cs.utah.edu:/pub/urt/urt-3.0.patch1
        cs.utah.edu:/pub/urt/urt-3.0.patch2.Z


VERSION NUMBERING
=================
    The Tcl-SIPP version number is a concatenation of the SIPP library version
number that it works with and a single letter indicating the Tcl interface
version.  The version may also include a patch level if Tcl-SIPP has been
patched.  This is Tcl-SIPP 3.0a.


DIRECTORY STRUCTURE
===================
    The following is the directory structure of the Tcl-SIPP code:
  

                                  tsipp3.0a
                  src   sippsrc   man   tests   demos   help

o src - The source directory containing the Tcl interface to SIPP.

o sippsrc - Code from the SIPP that has been modified for use with Tcl-SIPP.
  One file is modified (libsipp/rendering.c) to support optionally processing
  scan lines in the opposite direction.  This change was made to support the
  RLE file format.  The file rendering.c is included in the modified form along
  with a context diff.  This code has been submitted to the SIPP developers.
  Also contains a fix to the libsipp function spotlight_create.

o man - Contains the Tcl-SIPP manual page.

o tests - Contains basic tests that validate the individual commands.

o demos - A port of the demo programs from SIPP.  These also server to test
  Tcl-SIPP functionality not checked by the basic tests.

o help - This directory is not actually included with the distribution, but
  is built.  It contains help files that can read via the Extended Tcl help
  system.


BUILDING
========
    Sipp 3.0, Tcl 6.4 and Extended Tcl 6.4c should all have been built before
building Tcl-SIPP.  Extended Tcl should also be installed in its configured
location, if not you will need to set the TCLDEFAULT environment variable
to point to the TCLDEFAULT file in the Extended Tcl build directory before
running Tcl-SIPP.

    Edit "Config.mk" to set the compilation options and to point to the
other packages required by Tcl-SIPP.  Follow the instructions in Config.mk
carefully.

    Enter the command:

        make

to compile and link Tcl-SIPP.  This should result in an interactive Tcl
interpreter being created in top-level directory called tsipp.  This program
is the Extended Tcl shell with the Tcl-SIPP commands built-in.  A very minimal
test is to run tsipp to see if you get an interactive prompt (tsipp>).  Use
the exit command or enter an EOF to exit tsipp.


TESTING
=======
    A basic set of tests to validate Tcl-SIPP is run with the command:

        make test

This will do some basic validation of the commands.  If the RLE libraries are
linked into Tcl-SIPP, then the URT program `rlehdr' should be in a directory in
the PATH, or some tests will fail.


DEMOS
=====
    The demostration pictures are built by entering the command:

        make demo

If you built Tcl-SIPP with the RLE library, the RLE format files will be
built by default.  IF RLE is not available, PPM format files will be build.
The can be overridden in the Config.mk file.  Other options controlling the
creation of the demo images maye be set in Config.mk.

   The programs to create these images are ports of the C programs provided
with SIPP.  They are good example on how to use Tcl-SIPP.  If your generate
RLE images, use the Utah Raster Toolkit program getx11 (or what ever get
command is appropriate for your environment). to display them.  If you have
a 256 color display instead of full color, try the following:

        cat demos/*.rle | rlequant | getx11

   A RLE comment is added to the image to specify a correct image gamma for
these images.  See Utah Raster Toolkit Documentation for more details.

   If you create PPM images, use your favorite view capable of handling them,
or use the PBMPlus toolkit to convert them to a format that you can view.


BUILDING HELP FILES
===================
    Extended Tcl help files may be extracted from the man page with the
command:

        make buildhelp

Note that this requires nroff to be installed on your system.  To install the
help files copy everything that was created under the help directory into the
help directory under the directory specified by TCL_TCLDIR in your Extended
Tcl Config.mk file (usually /usr/local/tcl/help).  Note that there is a bug
in the current Extended Tcl buildhelp.tcl that causes all help file names
to be truncated to 14 characters, even on systems that have long file names.

INSTALLING
==========
    No install script currently exists for Tcl-SIPP.  Install the help files
as described above.  Copy tsipp to your favorite bin directory and
man/tsipp.man to the appropriate manual directory.


AUTHOR
======
   Mark Diekhans - markd@grizzly.com

Please send all bugs, questions or comments to the above address

