Python scripts update for VisAD

An updated visad.jar file has just been released, so I am pleased to announce the following:

1) A new "quick install" tar.gz file for installing
VisAD+Jython+Java+Java3D on Intel-based Linux systems.  If you pick up
the file:

     http://www.ssec.wisc.edu/~tomw/visadtutor/jyvis_linux.tar.gz

and untar it, it will create a top-level directory named 'jython'. All
code will be in that directory and sub-directories.  Several start-up
scripts are supplied (just as in the Windows InstallAnywhere installer)
to help you get started.  This contains not only the VisAD and Jython
JAR files, but the Java Runtime (ver 1.3.1_06) and Java3D for Linux (i386).

2) An update of the subs.py collection of routines.  I've refactored
this file to provide better support for simultaneously using more than
one display at a time by making most of the display-related methods part of a new (internal) display class. All the previous 'static' methods still are available, but now simply call the instanace methods. I've done a lot of testing of existing scripts, but please!! let me know if you run across any incompatabilities!

(The only known behaviour change: if you had worked with shapes using
the 'static' "addShape()" method, and not the addShape() method in the
Shapes class itself, then your shapes will no longer be shared across
all displays, but will only apply to the last display created. I
apologize for this change, and hope it does not adversely impact anyone.
The code and documentation strongly suggest using the addShape() method
that is now an instance method of each of your display.)

3) With Frank Gibbons' help, there is now on-line, HTML-ized
documentation for both subs.py and graph.py.  Please point your browser at:
     http://www.ssec.wisc.edu/~tomw/visadtutor/doc/index.html

to see this (which is generated using the Python script HappyDoc).

4) Finally, I updated the Windows Installer to include the new graph.py
and subs.py routines.  It is available as always at:

    http://www.ssec.wisc.edu/~tomw/visadtutor/jyvis.exe

The 'quick graphs' in graph.py will now accept Python Lists and Tuples
for the 'data' argument and attempt to make VisAD 'fields' in order to
plot them.  A new method, addTitle(), was added to subs.py to create a
'title' just above the VisAD 'box'. Plans are to later include this in the quick graphs.

New classes were added to subs.py:
1) HandlePickEvent, to provide an easy mechanism for your programs to get the x- and y- coordinates after the user has 'double-button-dragged' the mouse around, and 2) RubberBandZoomer, which provides a rubber-band-box zooming capability (note this only zooms the display, it does not reset the axes range values). There is a helper method, enableRubberBandBoxZoomer(), in subs.py to make it easy to use this feature; zooming is done by dragging with the right mouse button, plus an optional keyboard key held down (CTRL or Shift).

If you have questions/ideas/suggestions/problems, please let me know.

tom
--
Tom Whittaker (tomw@xxxxxxxxxxxxx)
University of Wisconsin-Madison
Space Science and Engineering Center
Cooperative Institute for Meteorological Satellite Studies
Phone/VoiceMail: 608.262.2759