; CIRCLEVS
;---------------------------------------------------------------
;! Sets RGBLEVS to fill LEVS with a circular color scheme
;# Procedure PLOT
;-----------------------------------------------------------------------
;;  Copyright (C) 2006
;;  Associated Universities, Inc. Washington DC, USA.
;;
;;  This program is free software; you can redistribute it and/or
;;  modify it under the terms of the GNU General Public License as
;;  published by the Free Software Foundation; either version 2 of
;;  the License, or (at your option) any later version.
;;
;;  This program is distributed in the hope that it will be useful,
;;  but WITHOUT ANY WARRANTY; without even the implied warranty of
;;  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;;  GNU General Public License for more details.
;;
;;  You should have received a copy of the GNU General Public
;;  License along with this program; if not, write to the Free
;;  Software Foundation, Inc., 675 Massachusetts Ave, Cambridge,
;;  MA 02139, USA.
;;
;;  Correspondence concerning AIPS should be addressed as follows:
;;         Internet email: aipsmail@nrao.edu.
;;         Postal address: AIPS Project Office
;;                         National Radio Astronomy Observatory
;;                         520 Edgemont Road
;;                         Charlottesville, VA 22903-2475 USA
;-----------------------------------------------------------------------
CIRCLEVS   LLLLLLLLLLLLUUUUUUUUUUUU CCCCCCCCCCCCCCCCCCCCCCCCCCCCC
CIRCLEVS   Proc to set RGBLEVS to a circular color scheme
DOCIRCLE         -1.0        1.0    > 0 do full circle, else
                                    do blue to red only
LEVS     $                         Contour levels
RGBGAMMA $       0.0               Gamma correction parameter
RGBLEVS  @       0.0        1.0    RGB for each LEVS in order
----------------------------------------------------------------
CIRCLEVS
Proc:  This procedure will set RGBGAMMA if it is not positive, will
       examine the LEVS values and set them to -10 to -1 followed by 1
       to 10 if they are not set.  Then it will determine a circular
       pattern of colors from blue to green to red and, if DOCIRC>0,
       back to blue.  It will set RGBLEVS so that the first positive
       LEVS and first negative LEVS will be blue, the 2nd positive and
       2nd negative LEVS will be somewhat more green and so forth
       to the highest LEVS (positive and or negative) will be the
       final color (either red or blue depending on DOCIRC).

       Before using this procedure you must enter
              RUN SETRGBL
       which will define this and 3 other procedures.  Any time you
       change the values in LEVS, you should then enter
              CIRCLEVS
       again to select the new set of colors.  Note that these colors
       are similar to those of the verb TVPSEUDO with Button B.

Input adverbs:
  DOCIRCLE...> 0 => do a full circle in color from blue to green to
             red to blue, else do 2/3 of a circle stopping at red.
Input/output adverbs:
  RGBGAMMA...If 0 on input, set to 2.2.  The gamma correction
             parameter to adjust colors (value used = input value to
             the 1/RGBGAMMA power).  Larger values make more pastel
             colors.
  LEVS.......Contour level multipliers.  Up to 30 values in increasing
             order - if all 0 on input, set to -10 to -1, 1, to 10.
             Defines which values require colors and what their range
             should be.  Thus, if you change LEVS, you should execute
             CIRCLEVS again.
Output adverbs:
  RGBLEVS....RGB colors (3,30) for each of the LEVS in use.
"Scratch" adverbs:
  II, JJ, KK, XX, YY, RR, GG, BB, TT, X are all changed by the
                                        procedure.
----------------------------------------------------------------
