                           -----------------
                           |  PV-WAVE ARL  |
                           -----------------
========================================================================
           How To Use The PV-WAVE Advanced Rendering Library.
========================================================================

    PV-WAVE ARL is a group of library procedures for performing
    advanced rendering of 3-D geometric and volumetric data.
    This library also contains several miscellaneous utility
    functions such as gridding (2-D, 3-D, 4-D, and spherical) and
    conversion for rectangular, polar, cylindrical, and spherical
    coordinates.

    The "arl" directory originally consisted of two sub-directories.
    With the WAVE v4.2 release, the ARL routines have been moved into
    the WAVE Standard Library directory, .../wave/lib/std.  Files in
    the ARL examples directory are now located in this directory,
    .../wave/demo/arl.  This examples directory contains example
    PV-WAVE programs that use the library procedures, and contains the
    data files used by the example programs.

    All of the ARL library procedures are written in the PV-WAVE
    language.  For detailed information on each procedure, examine the
    header contained in the actual library procedure file, found in the
    .../wave/lib/std directory.   All the procedure files have a ".pro"
    extension.

    The following is a brief description of what each ARL library
    procedure does :

        ARL Procedure    Description
        -------------    -----------
  
        center_view      A convenient way to set up a 3-D view.
  
        conv_from_rect   Converts points from rectangular to polar,
                         spherical, or cylindrical.
  
        conv_to_rect     Converts from polar, spherical, or
                         cylindrical, to rectangular.
  
        fast_grid2       Performs two-dimensional gridding.
                         (Works best with dense data points.)
  
        fast_grid3       Performs three-dimensional gridding.
                         (Works best with dense data points.)
  
        fast_grid4       Performs four-dimensional gridding.
                         (Works best with dense data points.)
  
        grid_2d          Performs two-dimensional gridding.
                         (Works best with sparse data points.)
  
        grid_3d          Performs three-dimensional gridding.
                         (Works best with sparse data points.)
  
        grid_4d          Performs four-dimensional gridding.
                         (Works best with sparse data points.)
  
        grid_sphere      Performs spherical gridding.
  
        img_true8        Generates a pseudo true-color image for
                         display on systems with eight bit planes
                         of color.
  
        poly_c_conv      Converts a list of colors from a
                         vertex-based list to a polygon-based list.
  
        poly_count       Counts the actual number of polygons
                         contained in a polygon list.
  
        poly_dev         Converts from NORMAL to DEVICE coordinates.
  
        poly_merge       Merges two polygon lists into one list.
  
        poly_norm        Converts from DATA to NORMAL coordinates.
  
        poly_plot        Plots a list of polygons.
  
        poly_sphere      Generates a list of polygons representing
                         a sphere.
  
        poly_surf        Generates a list of polygons from a 2-D
                         array that contains Z values.
  
        poly_trans       Transforms a list of 3-D points by a 4x4
                         matrix.
  
        set_view3d       Generates a 3-D view based on view position
                         and view vector.
  
        slice_vol        Extracts a planar oblique slice from a
                         volumetric (3-D) array.
  
        vector_field3    Plots a 3-D velocity vector field from
                         volumetric or 3-D data.
  
        viewer           Allows users to interactively define a 3-D
                         view, slicing plane, and cut-away volume(s).
  
        vol_marker       Plots a polymarker field from volumetric
                         data.
  
        vol_pad          Pad zeroes around a 3-D array of volumetric
                         data.
  
        vol_rend         Renders a volume of data in a translucent
                         fashion.
  
        vol_trans        Transforms a volume of data using a 4x4
                         matrix.

    NOTE : The following two commands are included in the basic WAVE
    product and they are documented in the WAVE user's guide.  They are
    included here because the wave/demo/arl directory contains examples
    of how they are used.

        polyshade        Renders a list of polygons with light-source
                         shading.

        shade_volume     Generates a list of polygons representing an
                         iso-surface of a volume of data.


    To run the example programs, go to the .../wave/demo/arl directory
    and start PV-WAVE.  Then enter the name of the program to run at
    the PV-WAVE prompt.  For example, to run "vol_demo1" enter :

        WAVE> vol_demo1

    The following is a list of the example programs and the ARL
    procedures they demonstrate :


        Example Program    Description               Demonstrated
        ---------------    -----------               ------------
   
        f_gridemo2         Shows 2-D gridding.       fast_grid2
   
        f_gridemo3         Shows 3-D gridding.       fast_grid3
   
        f_gridemo4         Shows 4-D gridding and    fast_grid4
                           a cut-away view of a      shade_volume
                           block of volume data.     polyshade
                                                     center_view
   
        grid_demo2         Shows 2-D gridding.       grid_2d
   
        grid_demo3         Shows 3-D gridding.       grid_3d
   
        grid_demo4         Shows 4-D gridding and    grid_4d
                           a cut-away view of a      shade_volume
                           block of volume data.     polyshade
                                                     center_view
   
        grid_demo5         Shows spherical gridding. grid_sphere
                                                     poly_sphere
                                                     polyshade
                                                     center_view
   
        img_demo1          Displays a pseudo true-   img_true8
                           color Landsat image on
                           an 8-bit color system.
                           NOTE : This procedure
                           requires that 256 colors
                           be allocated to PV-WAVE.
                           You should first exit,
                           then re-start PV-WAVE
                           before running this
                           example.  Also, on some
                           systems it may be necessary
                           to click in the the "Wave
                           0" window to see the proper
                           colors.
   
        poly_demo1         Displays a perspective     set_view3d
                           view of a surface from a   poly_surf
                           viewpoint within the       poly_norm
                           data.                      poly_trans
                                                      poly_dev
                                                      poly_plot
   
        sphere_demo1       Displays an image warped   poly_sphere
                           onto a sphere.             center_view
                                                      polyshade
   
        sphere_demo2       Displays data warped onto  poly_sphere
                           an irregular sphere.       center_view
                                                      polyshade
                                                      poly_norm
                                                      poly_trans
                                                      poly_dev
                                                      poly_c_conv
                                                      poly_count
                                                      poly_plot
   
        sphere_demo3        Displays multiple         grid_sphere
                            spheres merged together.  poly_sphere
                                                      poly_merge
                                                      polyshade
                                                      poly_norm
                                                      poly_trans
                                                      poly_dev
                                                      poly_count
                                                      poly_plot
   
        vec_demo1           Displays a 3-D vector     vector_field3
                            field from X-Y-Z data.
   
        vec_demo2           Displays a 3-D vector     vector_field3
                            field from volumetric
                            data with specified
                            starting points for the
                            vectors.
   
        vol_demo1           Displays a 3-D fluid      vector_field3
                            flow vector field with    conv_to_rect
                            random starting points
                            for the vectors.
   
        vol_demo2           Displays an MRI scan of   vol_pad
                            a human head using three  center_view
                            different display         vol_marker
                            techniques.  This demo    shade_volume
                            takes a while to run -    polyshade
                            be patient.               vol_trans
                                                      vol_rend
   
        vol_demo3           Displays 3-D fluid flow   center_view
                            data using two different  shade_volume
                            display techniques.       polyshade
                                                      vol_pad
                                                      vol_trans
                                                      vol_rend
   
        vol_demo4           Similar to grid_demo3,    grid_4d
                            but also displays the     vol_pad
                            data using poly_plot      center_view 
                            and vol_rend.             shade_volume
                                                      polyshade
                                                      poly_norm
                                                      poly_trans
                                                      poly_dev
                                                      poly_plot
                                                      vol_trans
                                                      vol_rend
   
   
$Id: README,v 1.3 1993/02/26 04:33:27 jeffry Exp $
