head     1.10;
access   ;
symbols  ;
locks    ; strict;
comment  @# @;


1.10
date     93.08.25.11.13.39;  author gbourhis;  state Exp;
branches ;
next     1.9;

1.9
date     93.08.24.10.31.08;  author gbourhis;  state Exp;
branches ;
next     1.8;

1.8
date     92.09.30.06.58.13;  author marca;  state Exp;
branches ;
next     1.7;

1.7
date     92.09.26.13.29.50;  author marca;  state Exp;
branches ;
next     1.6;

1.6
date     92.09.26.13.16.26;  author marca;  state Exp;
branches ;
next     1.5;

1.5
date     92.09.26.13.03.55;  author marca;  state Exp;
branches ;
next     1.4;

1.4
date     92.09.26.11.23.58;  author marca;  state Exp;
branches ;
next     1.3;

1.3
date     92.09.26.10.30.31;  author marca;  state Exp;
branches ;
next     1.2;

1.2
date     92.09.26.08.17.41;  author marca;  state Exp;
branches ;
next     1.1;

1.1
date     92.09.18.11.03.14;  author marca;  state Exp;
branches ;
next     ;


desc
@Polyview 3.1 README.
@


1.10
log
@paragraph about "INPUT DATA FORMAT" added by Ping Fu.
@
text
@------------------------------------------------------------------------------

NCSA Polyview 3.1 Release Notes

Gilles Bourhis
Software Development Group
National Center for Supercomputing Applications
University of Illinois at Urbana-Champaign
605 E. Springfield Avenue
Champaign, IL  61820
gbourhis@@ncsa.uiuc.edu

$Date: 93/08/24 10:31:08 $

------------------------------------------------------------------------------

INTRODUCTION
============

This is the official release of NCSA Polyview 3.1.

What is Polyview 3.1?

o Polyview 3.1 is a software tool for interactive visualization and
analysis of 3D geometrical structures.  Polyview 3.1 reads data files
in NCSA HDF Vset format and automatically derives animation sequences
based on available information.  Script-based and graphical user
interfaces complement each other in a seamless fashion to allow the
easy creation of movie-style animations.  Polyview 3.1 also supports
``What You See Is What I See''-style collaborative work among
geographically remote Polyview users over a wide-area network.

o Polyview 3.1 will run on any Silicon Graphics workstation running
IRIX 4.0.1 or later.  It uses OSF/Motif for its user interface and
IRIS GL for its advanced 3D rendering capabilities.

o Polyview 3.1 is a minor upgrade to Polyview 3.0. It provides some bug
fixes like correct picking vertices and correct viewing parameters in
the RenderMan output facility. There are also some improvements (upgrade
to HDF 3.2, easier DTM connection) and some new features like save in
rgb format (SGI image format).
Polyview 3.0 was a major upgrade to NCSA Polyview 2.0 and was designed
by Marc Andreessen.  It provides an entirely new and improved user
interface, many new features, and lots of bug fixes.  However, those of
you who have used Polyview 2.0 should feel right at home: the basic
layout of the program is the same, mouse actions are the same, scripts
should be backwards compatible, data handling is largely the same, and
so on.
Polyview 2.0 was designed by Brian Calvert.

------------------------------------------------------------------------------

HOW TO DOWNLOAD POLYVIEW 3.1
============================

To download Polyview 3.1, follow these steps, starting at a Unix
prompt:

  (1) % ftp ftp.ncsa.uiuc.edu
  (2) Enter username 'anonymous' (without the quotes).
  (3) Enter password 'yourname@@yourmachine' (without the quotes).
  (4) ftp> cd /SGI/Polyview3.1
  (5) ftp> binary
  (6) ftp> get polyview.Z
  (7) ftp> quit
  (8) % uncompress polyview.Z
  (9) % chmod 755 polyview

------------------------------------------------------------------------------

DOCUMENTATION AND DEMONSTRATION FILES
=====================================

These release notes document the differences between Polyview 2.0 and
3.1 and explain how to use the new features provided in Polyview 3.1.

If you are unfamiliar with Polyview, you should first read the
Polyview 2.0 documentation (anonymous FTP to ftp.ncsa.uiuc.edu in
/UNIX/PolyView/PolyView2.0/docs) and then read this file.

Demo scripts and datasets are available via anonymous ftp to
ftp.ncsa.uiuc.edu in /SGI/Polyview3.1/examples.  Files with the
extension '.script' are Polyview scripts; files with the extension
'.hdf' are HDF Vset files.  You will need both sets of files to run
the Polyview demos.  (Be sure to download the HDF files in binary mode
by typing 'binary' at the ftp prompt.)

For a basic introduction to Polyview 3.1, download 'coil.script' and
'coil.hdf' and then start Polyview with the command 'polyview -i
coil.script'.

After you have watched the animation sequence in 'coil.script', you
can experiment with the user interface, examine the script and its
commands, and run the other sample scripts.

------------------------------------------------------------------------------

QUESTIONS OR PROBLEMS
=====================

If you have questions or problems with this release, please contact
polyview@@ncsa.uiuc.edu; we'd love to hear about them.  

However, since Polyview 3.1 is an unfunded project and we have only
limited resources for supporting it, we may not be able to respond to
your questions and problems as quickly or as thoroughly as we would
like.

If you would like to help fund maintenance and development of Polyview
(and thus provide us with the resources to definitely handle any
questions or problems you may have), please call Gilles Bourhis at (217) 
244-0013 or send email to gbourhis@@ncsa.uiuc.edu.

------------------------------------------------------------------------------

INPUT DATA FORMAT
=================

Polyview takes HDF Vset format (now is a subset of HDF3.2 or later).  Vset
is designed specifically for unstructured data where connectivity is
explicit.  This means to render the surface, you must supply connectivity
list as well as the coordinates.

Polyview can only handle polygonal data.  Using HDF-UCD library (libucd.a)
to generate HDF Vset format if you have unstructured or structured cell
data.  Polyview 3.1 is compatible with HDF UCD 1.1.  You can find HDF UCD
library and source code in directory SGI/HDF-UCD on this server.

------------------------------------------------------------------------------

NEW FEATURES
============

New user interface
------------------

Polyview has a new Motif-based user interface.  This makes interacting
with Polyview more convenient and user-friendly.  New features of the
user interface are detailed below.

Main window
~~~~~~~~~~~

The main (status) window now contains a menubar, a command entry area
(which replaces the previous shell-based command line), and a command
history list.

As you enter commands into Polyview via the command line or by working
with the various parts of the user interface, they are stored in the
command history list, where they can be 'recalled' with a simple mouse
double-click.

The main window's menubar contains the following (new) entries:

o File->Load Script: This option pops up a Motif file selection box
from which you can choose a Polyview script file to run.

o File->DTM In/Out: See the section on ``Collaborative Polyview''
below.

o Options->Audible: Choose this entry if you want to experiment with
an ``audible'' user interface: various actions in Polyview will
generate sound via the sound hardware in the IRIS Indigo or Personal
IRIS 4D/35.  (If you have a different model IRIS, no sound will be
generated.)

o Options->Hardware Dither: Choose this entry if you want to disable
hardware dithering in Polyview's GL windows.  We recommend you leave
this option enabled.

Polyview window
~~~~~~~~~~~~~~~

The polyview window now contains a menubar, as well as a couple of
additional Motif widgets.

o The 'Active' toggle button indicates whether or not this polyview
window is currently active.  Only one polyview window will be active
at any time.  This toggle will accurately reflect the internal state
of Polyview at all times: if you do something in a non-active polyview
window, that window will become active and the toggle will
correspondingly be automatically set.  You can also set the toggle
explicitly to make any polyview window active.

o See the section on ``Collaborative Polyview'' below for details on
the 'Blast Image' pushbutton.

The polyview window's menubar contains several new features:

o File->Load Vset pops up a dialog box from which you can select both
the HDF Vset data file you wish to load into the polyview window as
well as the identities of various data elements in that data file.
For example, instead of entering 'data x-axis coord1' on the command
line (as you may have had to do with Polyview 2.0), you can just type
'coord1' in the text entry field next to 'X Axis Vdata name' in the
dialog box.

(Do *not* press Return/Enter in the dialog box unless you are ready to
load a file, as this will trigger the 'OK' button and cause a sequence
of file-loading commands to be sent to Polyview.)

o File->Send Vset: see ``Collaborative Polyview'' below.

o File->Save HDF opens a dialog box in which you can name an HDF image
output file.  As in Polyview 2.0, the name will have a numeric value
inserted into it, as with Polyview 2.0; e.g., foo.hdf will become
foo0000.hdf (for the first image), foo0001.hdf (for the second image),
and so on.

o File->Save Ray opens a dialog box in which you can name a file that
will become a Rayshade 4.0 input file.  Rayshade 4.0 is a high-quality
raytracer (image renderer) available to the public via anonymous FTP
to princeton.edu (in /pub/Graphics/rayshade.4.0).

o File->Save RenderMan opens a dialog box in which you can name a file
that will become a RenderMan input ('rib') file.  This file can then
be fed to Pixar's PhotoRealistic RenderMan software to create very
high quality renderings of Polyview scenes.  (For more information on
RenderMan, contact Pixar, 1001 West Cutting Boulevard, Richmond CA,
94804, (415) 236-4000.)

o File->Save RGB opens a dialog box in which you can name a file that
will become an image file in rgb (using SGI "libimage.a") format. You
can later see this picture with tools like "ipaste".

Render allows you to specify various attributes for the rendered
scene.  Particularly significant are the following new features.

o Render->Draw->Hidden Edges is a new drawmode.  Hidden edges are
``faked'' by drawing the object with black polygons and then drawing
the edges in color.

o Render->Line Width pops up a small dialog box in which you can set
the line width for drawmodes 'edges', 'hidden edges', and 'outlined
faces'.

o Render->Outline Color pops up a small dialog box in which you can
set the outline color for drawmode 'outlined faces'.  This is useful
for contrasting the outlines with your current palette and dataset.

o Render->Vertex Spheres pops up a small dialog box in which you can
manipulate the 'spheres at vertices' feature.  When using drawmode
'vertices', if 'sphere size' is not 0.000 then spheres (rather than
points) will be drawn, with the specified radius.  'sphere depth'
controls the quality (number of polygons) of the spheres.  Depth 1
corresponds to cubes.  Caution: high sphere depths take a *long* time
to draw.

o Props->Legend puts a strip representing the current colormap in the
upper left corner of the polyview window.

As with Polyview 2.0, holding down the left mouse button and moving
the mouse draws a selection rubber-band on the window.  The shift key
plus the left button does the same thing, but a new selection will
have an ``exclusive or'' effect.  (Experiment with this to find out
what that means.)  The middle button causes object rotation.  The
shift key plus the middle button causes object zoom.

Caution: the window system will not tell Polyview that the shift key
has been pressed or released if the mouse pointer is outside the GL
(3D) drawing area when the press or release occurs, and Polyview may
correspondingly become confused.  If this happens, just tap the shift
key after moving the mouse pointer inside the GL drawing area to reset
Polyview's internal state.

Palette window
~~~~~~~~~~~~~~

The palette window now contains a menubar.

o File->Load HDF/Raw: These options pop up a dialog box in which you
can specify a palette file to load.

o File->Save HDF/Raw: These options pop up a dialog box in which you
can specify the name of a palette file to save.

o Palette: There are some new default palettes.  'All Yellow' may be
useful when using lighting in your scene, as using only a single color
in the scene increases lighted rendering speed substantially.  (Any
palette with the same value in all entries will cause this performance
increase.)

o Backdrop: You can select from an assortment of colored and shaded
backdrops for the active polyview window.

Info window
~~~~~~~~~~~

The info window now consists of a Motif text widget.  There are
several differences from the original scheme because of this:

o Text in the info window can be cut and pasted into other windows on
the screen.

o Information for all selected elements (vertices, faces, or objects)
is thrown into the window at once (although a scrollbar is present in
case all the information doesn't fit in the window).

o Because all information is thrown into the window at once, there is
a ``reasonableness limit'' (currently set to 300) on the number of
selected elements for which information is displayed.  This is to keep
updating the info window from taking forever.  Since we can't imagine
anyone usefully selecting hundreds of elements at a time in any case,
we don't think this will be a problem.

Time window
~~~~~~~~~~~

The time window is essentially unchanged (except for its new Motif
look and feel).

New functionality
-----------------

RGB Mode and Palette Fiddling
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Polyview runs entirely in RGBmode now.  Palette fiddling may be
somewhat slower than before, since the scene is now redrawn each time
the palette is changed.

Hardware Lighting
~~~~~~~~~~~~~~~~~

Polyview supports hardware lighting now.  Currently, only one light
is supported.  Six commands can be used to activate/position the
light:

        light one
        light two
        light three
        light x
        light y
        light z

Control over the lights is also available in the Render menu in a
polyview window.

In addition, the lighting can be made to affect both sides of
polygons.  This is generally preferred to ``single-sided'' lighting,
and so it is the default.  The commands 'light twoside on' and 'light
twoside off' can be used to turn twosided lighting on and off.

On most SGI platforms there will be a substantial rendering
performance impact while running with lighting on and with a
multicolor palette (as compared to running without lighting).  This
performance drop is intrinsic to the graphics hardware and cannot be
avoided by Polyview.

To help decrease this drop in performance, there is a new palette
entry, 'all yellow'.  It can be selected from the palette window menu
as usual or with the command 'palette use allyellow'.  When running
with this palette (which consists of only one color) or a similar
palette, rendering speed with lighting will be considerably faster
than with multicolor palettes.

Vertex Spheres
~~~~~~~~~~~~~~

Polyview 3.1 allows you to represent vertices as spheres.  These
spheres can be of variable size and complexity, and can be lighted.

To display vertices as spheres, first do 'draw vertices'.  Then do
'sphere size 0.1', where 0.1 is the desired radius of each sphere in
your world coordinate system.  

You can also do 'sphere depth 3' to adjust the complexity (depth of
tesselation, aka number of polygons) of each sphere, where 3 is the
desired depth.  The default sphere depth is 2.  Value 1 collapses the
spheres into cubes, which can be desirable in their own right.
Theoretically depth can range up to 30, but numbers higher than 4 or 5
will cause inordinately slow redrawing rates for most datasets.

The spheres will be given the colors the vertices normally have, and
if lighting is enabled they will be shaded appropriately.

Line Width and Outline Color
~~~~~~~~~~~~~~~~~~~~~~~~~~~~

You have full control over the width of lines used in drawmodes
'edges', 'hidden edges', and 'outlined faces' via the 'draw linewidth'
command.

The default linewidth is 1; higher widths (especially 2, 3, or 4) may
be useful in some situations.  Keep in mind that these are pixel
widths, so no matter how small or large the *object* is in the window,
the line width remains constant with respect to itself.

Palette Fiddling
~~~~~~~~~~~~~~~~

Palette fiddling works the same as in Polyview 2.0, with two
exceptions.  

First, since Polyview 3.1 uses RGB mode at all times, each time the
palette is fiddled all polyview windows must be redrawn in order to
have the altered palette take effect; so, performance takes a
necessary hit.  

Second, every palette fiddle produces an instance of the new 'palette
fiddle' command, which is added to the history list on the fly; thus,
palette fiddling can now be part of a script file.

Outlined Faces
~~~~~~~~~~~~~~

The rendering code used for drawmodes 'outlined faces' (and now
'hidden lines' also) has been substantially revised to give better
visual results for all datasets from all viewing angles and distances.
This should eliminate any problems with lines ``breakin up'' in
'outlined faces' mode.

Backdrops
~~~~~~~~~

A new command, 'backdrop', lets you place colorful smooth-shaded
backdrops behind your image in place of the standard black backdrop.

Possible backdrops are:

  backdrop solid [black|white|grey|blue|red]
  backdrop shaded [rgby|rgblue|rbblack]
  backdrop [horizon|sky|streak|smear] [blue|red|green|yellow]

Props
~~~~~

Grids, shadows, and boxes look a little different (and, we hope,
better) now.  In addition, there is a new prop, 'legend'; this is
simply a palette strip placed in the upper left corner of the window.

Time Animation Bouncing
~~~~~~~~~~~~~~~~~~~~~~~

A new command, 'time bounce [on|off]' can be used to enable bouncing
in the animation modes.  With bouncing enabled, an animation sequence
(e.g. 'time forward') will change direction (forward to reverse or
vice versa) when reaching the n'th of n frames (if moving forward) or
the 1st frame (if moving backward).  Try it; you'll know what I mean.

Blocking Time Forward/Backward
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Two new commands are available for time-based animation.  They are
'timeblock forward' and 'timeblock reverse'.

Normally, 'time forward' and 'time reverse' are used to step through a
number of frames automatically.  However, these commands don't
``block''; that is, cause Polyview's script interpreter to wait until
they're finished before going on to the next command.

'timeblock forward' and 'timeblock reverse', however, cause Polyview
to animate through the specified number of frames before doing
anything else.  

For the timeblock commands, you must supply an argument, framecount;
e.g., 'timeblock forward 12'.

Pause Command
~~~~~~~~~~~~~

Another new animation-control command is 'pause', which allows you to
effectively cause Polyview to freeze for a specified amount of time in
the middle of a script.  'pause' requires an argument, which is the
number of time units to pause (20 time units to a second).

HDF Image Output
~~~~~~~~~~~~~~~~

Polyview now supports a vastly superior color quantizing algorithm to
convert the 24-bit (or pseudo-24-bit) screen image into an HDF 8-bit
raster image for 'save image'.  The algorithm is by Wu from the book
Graphics Gems II (ed James Arvo, pub Academic Press), and is the most
efficient algorithm for very-high-quality quantization that I know of.
(If you think you know of a better algorithm, please let me know.)

Renderman and Rayshade Output
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Two new commands, 'save ray' and 'save renderman', allow you to save
the current scene into Rayshade 4.0 and Pixar RenderMan files,
respectively.  

Rayshade 4.0 is a high-quality raytracer (image renderer) available
freely to the public via anonymous FTP to princeton.edu (in
/pub/Graphics/rayshade.4.0).

RenderMan files can be fed to Pixar's PhotoRealistic RenderMan
software to create very high quality renderings of Polyview scenes.
(The RenderMan output feature in Polyview 3.1 is still experimental
and is not guaranteed to work.  For more information on RenderMan,
contact Pixar, 1001 West Cutting Boulevard, Richmond CA, 94804, (415)
236-4000.)

------------------------------------------------------------------------------

COLLABORATIVE POLYVIEW
======================

Polyview includes support for NCSA's DTM (Data Transfer Mechanism), a
network protocol designed to support transmitting and receiving
scientific data and messages over a wide-area network, such as the
Internet.  

Polyview can communicate with other clients that use DTM or with other
instances of Polyview on the network.

Introduction to Collaborative Work
..................................

The term 'collaborative session' means a situation wherein two or more
people are hooked together over the network for collaborative work.

In general, we assume that a telephone conversation is occurring
simultaneously with a collaborative session, allowing participants in
the session to keep in touch with what each person is doing.  This
removes the need for each collaborative tool (e.g. Polyview) to
provide the baseline personal communication capabilities.

Polyview's collaborative support is part of an ongoing effort at
NCSA's Software Development Group to develop collaborative tools for
scientists and researchers who wish to work together on data
exploration and analysis over long distances via a wide-area network.
This effort is ongoing, and suggestions for future capabilities are
more than welcome (mail polyview@@ncsa.uiuc.edu).

Sending Raster Images To NCSA Collage
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Polyview provides support for sending raster images of the current
scene to a DTM client capable of receiving them.  One such client is
NCSA Collage for X Window System platforms (obtainable via anonymous
ftp to ftp.ncsa.uiuc.edu in /Collab/XCollage/Collage1.2Beta).

Connection
..........

If you have a Collage client running on an X workstation and it's
ready to receive DTM data, and you have a scene in Polyview (on
another machine) that you wish to send to the Collage session, choose
File->DTM Out from the main Polyview window's menubar and type
'machinename:8888' (where 'machinename' is the name of the machine
running Collage and '8888' is the port that Collage is listening on),
and press 'Activate'.

(If you are connecting to an ongoing collaborative session, you should
connect to the DTM server rather than to an individual Collage client.
Existing members of the collaborative session will be able to tell you
which port to connect to.)

Sending Images
..............

Once you have connected and are back in the polyview window containing
your 3D scene, you can press the 'Blast Image' button (below the
menubar) to send the current scene to Collage as a raster image.

Pressing the 'Blast Image' button causes Polyview to execute the
'blast image' command, which is equivalent to the 'save image' command
except that 'blast image' uses DTM.

Similarly, 'blast mode continuous' is equivalent to 'save mode
continuous' and can be used to tell Polyview to send a new raster
image over DTM every time the window is redrawn, and 'blast mode
single' or 'blast stop' can be used to turn off the continuous image
blasting.

If you operate with 'blast mode continuous', Collage will replace the
Polyview image (rather than opening a new window) each time a new
image is received; thus, Collage can actually display animation
sequences provided by Polyview as fast as the network will allow.

Polyview-To-Polyview Collaboration
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Polyview provides support for ``What You See Is What I See''
collaboration among multiple users at remote geographical locations.

Polyview allows you to distribute both data and program commands among
multiple Polyview instances.  (In this context, 'instance' means a
running instantiation of Polyview.)

So, for example, that a Polyview instance running in Michigan can send
its 3D data directly to a Polyview instance running in Texas, over the
Internet.  The researcher in Texas could spin the object with the
mouse and then animate through a sequence of frames, and the Michigan
Polyview would automatically follow suit in exactly the same manner.

Hooking Up Two Polyview Instances 
.................................

Let's follow the steps two Polyview users, ``Bill'' and ``Ted'', take
to hook up two Polyview instances.

Bill and Ted decide to collaborate:

(1) Bill and Ted each start up Polyview on their respective
    workstations (bill.cs.tech.edu and ted.cs.tech.edu).

Bill tells his machine to listen for a connection from Ted's machine:

(2) Bill chooses 'File->DTM In' from the menubar, types ':8888'
    (without the quotes) into the dialog box, then presses 'Activate'.
    [In general, any number in the range 7000 to 9999 is probably
    going to be safe to use; 8888 is an arbitrary choice.]
    The listener should not give a machine name before the colon : he
    listen on his machine.

Ted tells his machine to talk to Bill's machine:

(3) Ted chooses 'File->DTM Out' from his Polyview menubar, types
    'bill.cs.tech.edu:8888' (without the quotes) into the dialog box,
    then presses 'Activate'.

Bill and Ted are now connected.

Using Polyview Collaboratively
..............................

When two Polyview instances are connected (as described above),
anything that happens in one instance is echoed in the other instance,
and vice versa.  Since 3.1, you don't need to explictly send the data :
when a user load datas from a file, it is distributed to the other
instance. However, if a user has already loaded datas before beeing
connected, he can send them choosing File->Send Vset from his polyview's
window menubar.

Let's watch Bill and Ted again.

Bill opens a polyview window:

(1) Bill chooses Windows->Open Polyview from his main window's
    menubar.

A polyview window opens in both Bill and Ted's Polyview instances.

Bill loads a dataset:

(2) Bill chooses File->Load Vset from his polyview window's menubar.
    He chooses 'coil.hdf' and presses 'OK'.  Bill sees the coil, and
    some seconds after, Ted sees the coil.


Ted rotates the coil:

(3) Ted yells, ``Hey Bill, I'm gonna rotate it.''  By holding down the
    middle mouse button and moving the mouse, Ted rotates the coil to
    a new position.  When he releases the mouse button, the new
    position is sent automatically to Bill's Polyview instance, which
    rotates the coil to match.

Bill changes the drawing mode:

(4) Bill yells, ``Hey Ted, I'm gonna change the drawing mode.''  Bill
    chooses Render->Draw->Outlined Faces from the polyview window's
    menubar.  The drawing mode changes for both Bill and Ted.

Bill and Ted can go on to do things like animate through time
sequences via the time window, fiddle with the palette in the palette
window, add props or lighting to the scene, etc.

Notes On Using Polyview Collaboratively
.......................................

o Generally, it will prove to be confusing if both people do things in
Polyview at the same time.  You'll benefit by switching ``control''
back and forth as the collaborative session progresses.

o Polyview's pick/select feature will work collaboratively, but it
currently requires that both instance's polyview windows be the same
size in order for results to be the same in both instances.  So, if
you're going to collaborate and still expect to use pick/select, don't
resize the window.

o Although Polyview supports multiple polyview windows at a time, it
currently only makes sense to have one polyview window open during a
collaborative session.

o You can certainly run two Polyview instances on a single workstation
and connect them, e.g. to experiment with Polyview's collaborative
capabilities.  In this case, you can leave the host address out of all
DTM port ID's (e.g. ':1393' rather than 'mymachine.cs.tech.edu:1393').

You should know that some combinations of Silicon Graphics hardware
and software (for example, the author's Indigo XS with IRIX 4.0.2) do
not handle multiple GL windows very well.  Thus, you may see exploding
polygons and other undesirable graphics effects.  These will not break
Polyview, but if this happens, just keep in mind that it's not *our*
fault that it's happening.

o Polyview 3.1 also accepts DTM SDL (Surface Description Language) 3D
data.  Polyview's Vset/Vdata class is still experimental and has not
yet been released as part of DTM proper.  If you want to use Polyview
to view 3D data being generated by a simulation (e.g. from a Cray or
an RS/6000), we currently recommend you use SDL.  See the DTM
documentation for more details (anonymous ftp to ftp.ncsa.uiuc.edu in
/Collab/DTM).

Using 3+ Polyview Instances Collaboratively
...........................................

If you want to link up more than two Polyview instances, you will have
to use a DTM ``server'' (nammed collage_server).

A DTM server is a process that manages a collaborative session among
multiple DTM clients; each DTM client connects directly to the server,
and all data sent to the server by one client is distributed to all
the other clients.

Doing Polyview-to-Polyview collaboration through a server has not been
tested at NCSA due to resource constraints.  However, there is no
reason that it shouldn't work, and you are encouraged to experiment.
You can obtain NCSA's DTM server via anonymous FTP to
ftp.ncsa.uiuc.edu in directory /Collab/XCollage/Collage1.2Beta.

------------------------------------------------------------------------------

KNOWN PROBLEMS
==============

Pick/select on large datasets occasionally causes coredumps within the
GL library.  We have been unable to determine whether this is a
Polyview problem or a problem with the system software.

There is no PostScript output facility.  There should be.

------------------------------------------------------------------------------
@


1.9
log
@Update for Polyview 3.1
@
text
@d13 1
a13 1
$Date: 92/09/30 06:58:13 $
d113 15
@


1.8
log
@First release.
@
text
@d3 1
a3 1
NCSA Polyview 3.0 Release Notes
d5 1
a5 1
Marc Andreessen
d11 1
a11 1
marca@@ncsa.uiuc.edu
d13 1
a13 1
$Date: 1992/09/26 13:29:50 $
d20 1
a20 1
This is the official release of NCSA Polyview 3.0.
d22 1
a22 1
What is Polyview 3.0?
d24 2
a25 2
o Polyview 3.0 is a software tool for interactive visualization and
analysis of 3D geometrical structures.  Polyview 3.0 reads data files
d29 1
a29 1
easy creation of movie-style animations.  Polyview 3.0 also supports
d33 1
a33 1
o Polyview 3.0 will run on any Silicon Graphics workstation running
d37 13
a49 6
o Polyview 3.0 is a major upgrade to NCSA Polyview 2.0.  It provides
an entirely new and improved user interface, many new features, and
lots of bug fixes.  However, those of you who have used Polyview 2.0
should feel right at home: the basic layout of the program is the
same, mouse actions are the same, scripts should be backwards
compatible, data handling is largely the same, and so on.
d53 1
a53 1
HOW TO DOWNLOAD POLYVIEW 3.0
d56 1
a56 1
To download Polyview 3.0, follow these steps, starting at a Unix
d62 1
a62 1
  (4) ftp> cd /SGI/Polyview3.0
d75 1
a75 1
3.0 and explain how to use the new features provided in Polyview 3.0.
d82 1
a82 1
ftp.ncsa.uiuc.edu in /SGI/Polyview3.0/examples.  Files with the
d88 1
a88 1
For a basic introduction to Polyview 3.0, download 'coil.script' and
d104 1
a104 1
However, since Polyview 3.0 is an unfunded project and we have only
d111 2
a112 2
questions or problems you may have), please call Marc Andreessen at (217) 
244-0765 or send email to marca@@ncsa.uiuc.edu.
d203 1
a203 2
high quality renderings of Polyview scenes.  (This feature is still
experimental and is not guaranteed to work.  For more information on
d207 4
d212 1
a212 1
scene.  Particularly significant are the following new featues.
d345 1
a345 1
Polyview 3.0 allows you to represent vertices as spheres.  These
d380 1
a380 1
First, since Polyview 3.0 uses RGB mode at all times, each time the
d475 1
a475 1
(The RenderMan output feature in Polyview 3.0 is still experimental
d518 1
a518 1
ftp to ftp.ncsa.uiuc.edu in /Collab/XCollage/Collage1.0Beta3).
a576 4
Establishing two-way connectivity between two Polyview instances is
not completely straightforward yet.  (We hope to make this a lot
easier in future versions.)  

d591 2
a599 16
Bill tells his machine to talk to Ted's machine:

(4) Bill looks at the terminal window from which he started Polyview
    and sees a message that says 'Just established connection with
    ted10441 (108.109.110.111:1393)' or something very similar.  

    Bill chooses 'File->DTM Out' from the menubar, types
    'ted.cs.tech.edu:1393' (where 1393 is the number after the colon
    in the message Bill sees), and presses 'Activate'.

Ted tells his machine that Bill is talking to him also:

(5) Ted yells, ``Hey Bill, what's the magic number?''  Bill yells
    back, ``Ted, it's 1393''.  Ted chooses 'File->DTM In' from his
    menubar, types ':1393', and press 'Activate'.

d607 5
a611 2
and vice versa.  The one exception to this is the initial transfer of
3D data; this is shown below.
d625 2
a626 1
    He chooses 'coil.hdf' and presses 'OK'.  Bill sees the coil.
a627 1
Bill sends the 3D dataset to Ted:
a628 10
(3) Bill chooses File->Send Vset from his polyview window's menubar.
    After the Vset is sent, a dialog box pops up telling him
    everything worked.  Bill yells, ``Hey Ted, it's ready.''

Ted loads the data he's just received:

(4) Ted chooses File->Data Load from his polyview window's menubar.
    This causes Polyview to say, ``Hey, let's look at the data we just
    received.''  Ted sees the coil.

d631 1
a631 1
(5) Ted yells, ``Hey Bill, I'm gonna rotate it.''  By holding down the
d639 1
a639 1
(6) Bill yells, ``Hey Ted, I'm gonna change the drawing mode.''  Bill
d676 1
a676 1
o Polyview 3.0 also accepts DTM SDL (Surface Description Language) 3D
d688 1
a688 1
to use a DTM ``server''.
d699 1
a699 1
ftp.ncsa.uiuc.edu in directory /Collab/XCollage/Collage1.0Beta3.
a708 3

The Renderman output facility does not get the viewing parameters
correct in all cases.  This is on the 'to do' list to fix soon.
@


1.7
log
@Sending to Ping & co, round 1.
@
text
@d13 1
a13 1
$Date: 1992/09/26 13:16:26 $
d25 7
a31 7
analysis of 3D geometrical structures.  It reads data files in NCSA
HDF Vset format and automatically derives animation sequences based on
available information.  Script-based and graphical user interfaces
complement each other in a seamless fashion to allow the easy creation
of movie-style animations.  Polyview 3.0 also supports ``What You See
Is What I See''-style collaborative work among geographically remote
Polyview users over a wide-area network.
d34 2
a35 1
IRIX 4.0.1 or later.
d37 6
a42 6
o Polyview 3.0 is a major upgrade to Polyview 2.0.  It provides an
entirely new and improved user interface, many new features, and lots
of bug fixes.  However, those of you who have used Polyview 2.0 should
feel right at home: the basic layout of the program is the same, mouse
actions are the same, scripts should be backwards compatible, data
handling is largely the same, and so on.
d104 2
a105 2
questions or problems you may have), please call Marc Andreessen at
(217) 244-0765 or send email to marca@@ncsa.uiuc.edu.
@


1.6
log
@Inch by Inch...
@
text
@d13 1
a13 1
$Date: 1992/09/26 13:03:55 $
d20 1
a20 1
This is the official release of Polyview 3.0.  
d24 8
a31 8
o Polyview 3.0 is a tool for interactive visualization and analysis of
three-dimensional geometrical structures.  It features a Motif user
interface and high-quality GL rendering capabilities.  Everything that
happens in Polyview 3.0 can be saved to a script and 'replayed' later;
this allows easy generation of fly files and animation sequences.
Polyview 3.0 also supports ``What You See Is What I See''-style
collaborative work among geographically remote Polyview users over a
wide-area network.
d67 4
a70 3
3.0 and explain how to use the new features in Polyview 3.0.  If you
are unfamiliar with Polyview, you should first read the Polyview 2.0
documentation (anonymous FTP to ftp.ncsa.uiuc.edu in
d133 1
a133 1
from which you can choose a Polyview script file.
d289 1
a289 1
RGB mode and palette fiddling
d296 1
a296 1
Hardware lighting
d331 1
a331 1
Vertex spheres
d351 1
a351 1
Line width and outline color
d363 1
a363 1
Palette fiddling
d406 1
a406 1
Time animation bouncing
d415 1
a415 1
Blocking time forward/backward
@


1.5
log
@Step by step....
@
text
@d13 1
a13 1
$Date: 1992/09/26 11:23:58 $
d22 3
a24 1
Polyview 3.0 is a tool for interactive visualization and analysis of
d29 1
a29 1
Polyview 3.0 also supports ``What You See Is What I See''
d31 1
a31 2
wide-area network.  Polyview 3.0 will run on any Silicon Graphics
workstation running IRIX 4.0.1 or later.
d33 4
a36 1
Polyview 3.0 is a major upgrade to Polyview 2.0.  It provides an
d63 2
a64 2
DOCUMENTATION AND DEMONSTRATION SCRIPTS
=======================================
d68 3
a70 3
are completely unfamiliar with Polyview, you should first read the
Polyview 2.0 documentation (anonymous FTP to ftp.ncsa.uiuc.edu in
/UNIX/PolyView/PolyView2.0/docs) and then read these release notes.
d81 1
a81 1
coil.script'.  
d100 2
a101 2
If you would like to financially support maintenance and development
of Polyview (and thus provide us with the resources to handle any
d269 2
a270 2
is thrown into the window at once (although a slider is still present
in case all the information doesn't fit in the window).
d273 5
a277 5
a ``reasonableness limit'' (currently 300) on the number of selected
elements for which information is displayed; this is to keep updating
of the info window from taking forever.  Since we can't imagine anyone
usefully selecting hundreds of elements at a time in any case, we
don't think this will be a problem.
d377 2
a378 2
Image dumping
~~~~~~~~~~~~~
d380 5
a384 6
Polyview now supports a vastly superior color quantizing algorithm to
convert the 24-bit (or pseudo-24-bit) screen image into an HDF 8-bit
raster image for 'save image'.  The algorithm is by Wu from the book
Graphics Gems II (ed James Arvo, pub Academic Press), and is the most
efficient algorithm for very-high-quality quantization that I know of.
(If you think you know of a better algorithm, please let me know.)
a385 9
Time animation bouncing
~~~~~~~~~~~~~~~~~~~~~~~

A new command, 'time bounce [on|off]' can be used to enable bouncing
in the animation modes.  With bouncing enabled, an animation sequence
(e.g. 'time forward') will change direction (forward to reverse or
vice versa) when reaching the n'th of n frames (if moving forward) or
the 1st frame (if moving backward).  Try it; you'll know what I mean.

d398 16
d432 1
a432 1
Pause command
d440 9
a448 6
Props
~~~~~

Grids, shadows, and boxes look a little different (and, we hope,
better) now.  In addition, there is a new prop, 'legend'; this is
simply a palette strip placed in the upper left corner of the window.
@


1.4
log
@Closer, closer, closer...
@
text
@d13 1
a13 1
$Date: 1992/09/26 10:30:31 $
d437 1
a437 1
Renderman and Rayshade output
d455 1
a455 2
Collaborative Polyview
~~~~~~~~~~~~~~~~~~~~~~
d457 2
a458 2
Polyview provides support for ``What You See Is What I See''
collaboration among multiple users at remote geographical locations.
d460 4
a463 3
Polyview allows you to distribute both data and program commands among
multiple Polyview instances.  (In this context, 'instance' means a
running instantiation of Polyview.)
d465 2
a466 5
So, for example, that a Polyview instance running in Michigan can send
its 3D data directly to a Polyview instance running in Texas, over the
Internet.  The researcher in Texas could spin the object with the
mouse and then animate through a sequence of frames, and the Michigan
Polyview would automatically follow suit in exactly the same manner.
d487 62
d585 1
a585 1
    in the message Bill saw), and presses 'Activate'.
d589 3
a591 3
(5) Ted says, ``Hey Bill, what's the magic number?''  Bill says,
    ``Ted, it's 1393''.  Ted chooses 'File->DTM In' from his menubar,
    types ':1393', and press 'Activate'.
d600 2
a601 1
and vice versa.
d603 1
d605 1
d607 2
d610 1
d612 1
d614 2
a615 13
To tell a Polyview window to receive DTM Vset data via a given network
port number on your machine, use the command 'data dtm :8888', where
8888 is the number of the input port that you wish to use.  (Note the
colon prior to the number.)  To send a Vset to a Polyview instance
running on another machine on the network, after you have loaded the
Vset and are displaying it in your window, type 'dtm out
machinename:8888', where 'machinename' is the name of the other
machine (or blank if both Polyview instances are running on the same
machine) and 8888 is the input port being used by the other Polyview
instance.  Then, after the two Polyview instances have made contact, you
can send the current Vset by typing 'dtm send'.  Following
transmission of the data, the person on the receiving end must type
'data load', and then the dataset will appear in the window.
d617 1
d619 3
d623 1
d625 3
d629 1
d631 5
d637 1
d639 3
d643 3
d650 3
a652 4
o Although Polyview supports multiple polyview (i.e. graphics) windows
at a time, it currently only makes sense to have one polyview window
open during a collaborative session.  If other windows are made active
during a collaborative session, the results are undefined.
d654 10
d665 2
a666 2
and connect them to experiment with Polyview's collaborative
capabilities; in this case, you can leave the host address out of all
d669 6
a674 6
In this case, you should know that some combinations of Silicon
Graphics hardware and software (for example, the author's Indigo XS
with IRIX 4.0.2) do not handle multiple GL windows very well.  You may
see exploding polygons and other undesirable graphics effects.  These
will not break Polyview, but if it happens, just keep in mind that
it's not *our* fault that it's happening.
d695 5
a699 37
Using Polyview with a server has not been tested at NCSA, due to
resource constraints.  However, there is no reason that it shouldn't
work, and you are encouraged to experiment.  You can obtain the NCSA's
DTM server via anonymous FTP to ftp.ncsa.uiuc.edu in directory
/Collab/XCollage/Collage1.0Beta3.

Sending Raster Images To NCSA Collage
.....................................

Polyview provides support for sending raster images of the current
scene via NCSA DTM (which is built into the program) to a DTM client
capable of receiving them.  One such client is NCSA Collage for X
Window System platforms (anonymous ftp to ftp.ncsa.uiuc.edu in
UNIX/XCollage).

If you have a Collage client running on an X machine and it's ready to
receive DTM data, you can type 'dtm out machinename:8888' (as above,
where machinename is the name of the machine running Collage and 8888
is the port that machine is listening on) within Polyview to make
connection between Polyview and the Collage instance.

Then, you can type 'blast image' and Polyview will send a raster image
of the current scene to the Collage instance.  (A push button for this
function exists in polyview windows, right below the menubar.)

You probably noticed that Polyview's 'blast image' command is
equivalent to 'save image', except that 'blast image' uses DTM.
Similarly, 'blast mode continuous' is equivalent to 'save mode
continuous' and can be used to tell Polyview to send a new raster
image over DTM every time the window is redrawn, and 'blast mode
single' or 'blast stop' can be used to turn off the continuous image
blasting.

If you operate with 'blast mode continuous', Collage will replace the
Polyview image (rather than opening a new window) each time a new
image is received; thus, Collage can actually display animation
sequences provided by Polyview as fast as the network will allow.
@


1.3
log
@Getting closer...
@
text
@d6 1
d9 1
a9 1
605 E. Springfield
d13 1
a13 1
$Date: 1992/09/26 08:17:41 $
d39 1
a39 1
To download Polyview 3.0, follow these steps:
d41 6
d57 5
d75 13
d89 1
a89 8
polyview@@ncsa.uiuc.edu; we'd love to hear about them.  However, since
Polyview 3.0 is an unfunded project and we have only limited resources
for supporting it, we may not be able to respond to your questions and
problems as quickly or as thoroughly as we would like.  If you would
like to financially support maintenance and development of Polyview
(and thus provide us with the resources to handle any questions or
problems you have), please call Marc Andreessen at (217) 244-0765 or
send email to marca@@ncsa.uiuc.edu.
d91 10
a459 6
This support is part of an ongoing effort at NCSA's Software
Development Group to develop collaborative tools for scientists and
researchers who wish to work together on data exploration and analysis
over long distances via a wide-area network.  This effort is ongoing,
and suggestions for future capabilities are more than welcome (mail
polyview@@ncsa.uiuc.edu).
d462 2
a463 6
multiple Polyview sessions.  This means, for example, that a Polyview
session running in Michigan can send its 3D data directly to a
Polyview session running in Texas, over the Internet.  The researcher
in Texas could then spin the object with the mouse and then animate
through a sequence of frames, and the Michigan Polyview would follow
suit.
d465 5
a469 2
Hooking Up Two Polyviews
........................
d471 2
a472 3
Establishing two-way connectivity between two Polyview sessions is not
completely straightforward yet.  Following the example above, let's
name two Polyview users (and sessions) ``Texas'' and ``Michigan''.
d474 2
a475 1
(1) Texas and Michigan each start up Polyview.
d477 31
a507 1
(2) Michigan chooses 'File->DTM In' from the menubar, types ':8888'
d509 2
d512 1
a512 4
(3) Texas chooses 'File->DTM Out' from the menubar, types
    'michigan.umich.edu:8888' (without the quotes) into the dialog
    box, then presses 'Activate' (assuming 'michigan.umich.edu' is the
    network address of Michigan's workstation).
d514 3
a516 1
(4) Texas ....
d518 1
a518 1
(5) Michigan ....
d520 3
d524 3
d528 1
d530 3
d534 2
d539 9
d551 1
a551 1
colon prior to the number.)  To send a Vset to a Polyview session
d555 1
a555 1
machine (or blank if both Polyview sessions are running on the same
d557 1
a557 1
session.  Then, after the two Polyview sessions have made contact, you
a561 2
Using 3+ Polyviews Collaboratively
..................................
d563 43
a605 3
If you want to link up more than two Polyview sessions
collaboratively, you will have to utilize a DTM ``server''.  A DTM
server is a process that manages a collaborative session among
d619 1
a619 1
o Polyview provides support for sending raster images of the current
d629 1
a629 1
connection between Polyview and the Collage session.
d632 1
a632 1
of the current scene to the Collage session.  (A push button for this
a660 5

Placing the menubar on top of the various Motif windows causes
problems when working with large datasets, since using the menubar
causes the GL window to redraw often.  If this problem significantly
impacts you, please let us know and we'll try to ameliorate it.
@


1.2
log
@Half done...
@
text
@d5 6
a10 1
$Date$
d12 1
a12 2
This is the official release of Polyview 3.0.  Polyview 3.0 will run
on any Silicon Graphics workstation running IRIX 4.0.1 or later.  
d14 17
d38 12
d52 3
a54 3
are completely unfamiliar with Polyview, you should first order or
download the Polyview 2.0 documentation (XXXXXX) and then read these
release notes.
d56 6
a61 1
Demo scripts and datasets are available; see XXXXXXXXXX.
d64 8
a71 1
polyview@@ncsa.uiuc.edu; we'd love to hear about them.
d81 3
a83 2
Polyview has a new Motif-based user interface.  This should make it
more convenient 
d85 2
a86 2
Main (status) window
~~~~~~~~~~~~~~~~~~~~
d108 1
a108 1
IRIS 4D/35.  (If you have another model IRIS, no sound will be
d121 1
a121 1
The 'Active' toggle button indicates whether or not this polyview
d123 3
a125 3
at any one time.  This toggle will accurately reflect the internal
state of Polyview at all times: if you do something in a non-active
polyview window, that window will become active and the toggle will
d129 2
a130 2
See the section on ``Collaborative Polyview'' below for details on the
'Blast Image' pushbutton.
d149 4
a152 3
output file.  The name will have a numeric value inserted into it, as
with Polyview 2.0; e.g., foo.hdf will become foo0000.hdf (for the
first image), foo0001.hdf (for the second image), and so on.
d155 3
a157 4
will become a Rayshade 4.0 input file.  Rayshade 4.0 is an excellent
raytracer available to the public via anonymous FTP to princeton.edu;
it can be used to create very high quality renderings of Polyview
scenes.
d159 7
a165 4
o File->Save Renderman opens a dialog box in which you can name a file
that will become a Renderman input ('rib') file.  This file can then
be fed to Pixar's PhotoRealistic Renderman software to create very
high quality renderings of Polyview scenes.
d167 2
a168 3
o Render allows you to specify most interesting attributes for the
rendered scene.  Particularly significant are the following three new
features.
d170 4
d186 1
a186 1
controls the quality (number of polygons) of the spheres; depth 1
d188 1
a188 1
to redraw.
d194 5
a198 4
the mouse draws a selection rubber-band on the window; the shift key
plus the left button does the same thing, but a new selection will not
wipe out any existing selections.  The middle button causes object
rotation; the shift key plus the middle button causes object zoom.
d202 4
a205 3
drawing area, and Polyview may correspondingly become confused.  If
this happens, just tap the shift key with the mouse pointer inside the
GL drawing area to reset Polyview's internal state.
d224 2
a225 2
o Background: You can select from an assortment of colored and shaded
backgrounds for the active polyview window.
a252 3



d280 4
a283 4
In addition, the lighting can be made to affect both sides of any
polygon; this is generally preferred to single-sided lighting, and so
it is the default.  The commands 'light twoside on' and 'light twoside
off' can be used to turn twosided lighting on and off.
d289 1
a289 6
avoided by Polyview.  To help decrease this drop in performance, there
is a new palette entry, 'all yellow'; it can be selected from the
palette window menu as usual or with the command 'palette use
allyellow'.  When running with this palette (which consists of only
one color) or a similar palette, rendering speed with lighting will be
considerably faster than with multicolor palettes.
d291 7
d316 1
a316 1
if lighting is enabled they will be lighted appropriately.
d323 4
a326 2
command.  The normal linewidth is 1; widths of 2, 3, and 4 may be
useful in assorted situations.  Keep in mind that these are pixel
d328 1
a328 1
the line width remains constant.
d334 1
a334 6
exceptions.  First, since Polyview 3.0 uses RGB mode at all times,
each time the palette is fiddled all polyview windows must be redrawn
in order to have the altered palette take effect; thus, performance
takes a necessary hit.  Second, every palette fiddle produces an
instance of the new 'palette fiddle' command; thus, palette fiddling
can now be part of a script file.
d336 9
d361 2
a362 2
vice versa) when reaching the n'th frame (if moving forward) or the
1st frame (if moving backward).  Try it; you'll know what I mean.
d367 2
a368 5
A new comnand, 'backdrop', lets you place colorful smooth-shaded
backdrops behind your image in place of the standard black background.
Just do 'backdrop 3', where 3 is the number of the backdrop you wish
to have; currently, this number can range from 1 to 12 inclusive (0 is
no backdrop).  More backdrops are on the way.
d370 6
d379 15
d397 5
d412 3
d416 3
d420 7
d447 2
a448 2
Hooking Up
..........
d472 2
a474 1

d489 2
d492 6
d499 5
d505 2
a507 5





a536 1

d548 2
@


1.1
log
@Initial revision
@
text
@a1 1
NCSA Polyview 3.0 PRE-BETA Release
d3 1
a3 7
This is a maintanence release of NCSA Polyview with support for IRIX
4.0.x, the IRIS Indigo, and new SGI graphics hardware (XS, XS24, and
Elan).  It includes features that will be present and fully supported
in NCSA Polyview 3.0, including operation in RGBmode, support for
hardware lighting, and assorted collaborative capabilities via NCSA
DTM (Data Transfer Mechanism), as well as assorted bugfixes and
additional features.
d5 1
a5 2
This version of Polyview will not run under versions of IRIX prior to
4.0.1.
d7 21
a27 5
This release is unsupported per se, as our time is being put into
Polyview 3.0 (which should be a substantial improvement on the current
version).  However, if you have questions or problems with this
release, please contact polyview@@ncsa.uiuc.edu; we'd love to hear
about them.
a28 1
NEW FEATURES:
d30 179
a208 1
o Polyview runs entirely in RGBmode now.  Palette fiddling may be
d212 4
a215 1
o Polyview supports hardware lighting now.  Currently, only one light
d226 3
d232 1
a232 4
off' can be used to turn twosided lighting on and off.  (Polyview
provides twosided lighting by positioning lights both in front of and
behind the scene rather than by using the GL TWOSIDE lighting
attribute, which is unsupported on some SGI platforms.)
a233 3
The lighting commands are also accessible from the Polyview window
menu.

d235 9
a243 8
performance impact while running with lighting on and with a full
palette (as compared to running without lighting).  This performance
drop is intrinsic to GL and cannot be avoided by Polyview.  To help
decrease this drop in performance, there is a new palette entry, 'all
yellow'; it can be selected from the palette window menu as usual or
with the command 'palette use allyellow'.  When running with this
palette (which consists of only one color), rendering speed with
lighting will be considerably faster than with the other palettes.
d245 2
a246 5
o Polyview provides support for sharing Vsets between multiple
Polyview sessions running on a network via NCSA DTM (which is built
into the program).  This means, for example, that a Polyview session
running in Michigan can send its 3D data directly to a Polyview
session running in Texas, over the Internet.
d248 2
a249 14
This feature is still embryonic, but it is functional.  To tell a
Polyview window to receive DTM Vset data via a given network port
number on your machine, use the command 'data dtm :8888', where 8888
is the number of the input port that you wish to use.  (Note the colon
prior to the number.)  To send a Vset to a Polyview session running on
another machine on the network, after you have loaded the Vset and are
displaying it in your window, type 'dtm out machinename:8888', where
'machinename' is the name of the other machine (or blank if both
Polyview sessions are running on the same machine) and 8888 is the
input port being used by the other Polyview session.  Then, after the
two Polyview sessions have made contact, you can send the current Vset
by typing 'dtm send'.  Following transmission of the data, the person
on the receiving end must type 'data load', and then the dataset will
appear in the window.
d251 3
a253 3
Full documentation for this feature will be provided with Polyview
3.0.  If this feature particularly interests you now, feel free to
contact marca@@ncsa.uiuc.edu for more information.
d255 6
a260 5
o Polyview provides support for sending raster images of the current
scene over NCSA DTM (which is built into the program) to a DTM client
capable of receiving them.  One such client is NCSA NetView for X
Window System platforms, which is currently in beta release (anonymous
ftp to ftp.ncsa.uiuc.edu in UNIX/CollabTool/NetView1.0Beta).  
d262 2
a263 7
If you have a NetView client running on an X machine and it's ready to
receive DTM data, you can type 'dtm out machinename:8888' (as above,
where machinename is the name of the machine running NetView and 8888
is the port that machine is listening on) within Polyview to make
connection between Polyview and the NetView session.  Then, you can
type 'blast image' and Polyview will send a raster image of the
current scene to the NetView session.
d265 2
a266 10
You probably noticed that 'blast image' is equivalent to 'save image',
except that 'blast image' uses DTM.  Similarly, 'blast mode
continuous' is equivalent to 'save mode continuous' and can be used to
tell Polyview to send a new raster image over DTM every time the
window is redrawn, and 'blast mode single' or 'blast stop' can be used
to turn off the continuous image blasting.  If you operate with 'blast
mode continuous', NetView will replace the Polyview image (rather than
opening a new window) each time a new image is received; thus, NetView
can actually display animation sequences provided by Polyview in real
time.
d268 6
a273 1
NEW FEATURES take II:
d275 2
a276 14
o Polyview now allows you to represent vertices as spheres.  These 
spheres can be of variable size and complexity, and can be lit.  To
display vertices as spheres, first do 'draw vertices'.  Then do
'sphere size 0.1', where 0.1 is the desired radius of each sphere
in your world coordinate system.  You can also do 'sphere depth 3'
to adjust the complexity (depth of tesselation, aka number of polygons)
of each sphere, where 3 is the desired depth.  The default value is 2;
value 1 collapses the spheres into cubes, which can be desirable in
their own right.  Theoretically depth can range up to 30, but numbers
higher than 4 or 5 will completely kill interactivity for most 
datasets.

The spheres will be displayed with the color the vertices normally
have, and if lighting is enabled they will be lit.
d278 7
a284 7
o Polyview now supports a vastly superior color quantizing algorithm
to convert the 24-bit (or pseudo-24-bit) screen image into an HDF
8-bit raster image for 'save image'.  The algorithm is by Wu from the
book Graphics Gems II (ed James Arvo, pub Academic Press), and is the
most efficient algorithm for very-high-quality quantization that I
know of.  (If you think you know of a better algorithm, please let me
know.)
d286 14
a299 1
o A new command, 'time bounce [on|off]' can be used to enable bouncing
d305 4
a308 1
o A new comnand, 'backdrop', lets you place colorful smooth-shaded
d311 2
a312 2
to have; currently, this number can range from 1 to 12 inclusive
(0 is no backdrop).  More backdrops are on the way.
d314 2
a315 4
o Some new demo scripts and datasets can be found on the FTP server
(ftp.ncsa.uiuc.edu) in UNIX/PolyView/PolyView3.0.alpha/demos.  These
demo scripts show off some of Polyview's new features; they will be
supplemented over the course of the next few months.
d317 2
a318 1
NEW FEATURES take III:
d320 2
a321 2
o Pick/select's accuracy is fixed.  (It still coredumps once in a
while on large datasets; see below).
d323 109
a431 1
o Grids look different (and, we hope, better).
a432 1
KNOWN PROBLEMS:
d434 2
a435 3
o Pick/select occasionally causes coredumps within the GL library.  We have
not yet fixed this problem (nor have we determined whether or not it's
actually Polyview's fault).  I'm working on it.
d437 12
a448 2
o Any other bugs/coredumps you run into, please do let us know (send
email to polyview@@ncsa.uiuc.edu).
@
