SYNOPSIS

PERL PROGRAM NAME:

AUTHOR: Juan Lorenzo (Perl module only)

DATE:

DESCRIPTION:

Version:

USE

NOTES

Examples

SYNOPSIS

SEISMIC UNIX NOTES PSIMAGE - PostScript IMAGE plot of a uniformly-sampled function f(x1,x2)

            with the option to display a second attribute		



 psimage n1= [optional parameters] <binaryfile >postscriptfile	



 Required Parameters:							

 n1			 number of samples in 1st (fast) dimension	



 Optional Parameters:							

 d1=1.0		 sampling interval in 1st dimension		

 f1=0.0		 first sample in 1st dimension			

 n2=all		 number of samples in 2nd (slow) dimension	

 d2=1.0		 sampling interval in 2nd dimension		

 f2=0.0		 first sample in 2nd dimension			

 perc=100.0		 percentile used to determine clip		

 clip=(perc percentile) clip used to determine bclip and wclip		

 bperc=perc		 percentile for determining black clip value	

 wperc=100.0-perc	 percentile for determining white clip value	

 bclip=clip		 data values outside of [bclip,wclip] are clipped

 wclip=-clip		 data values outside of [bclip,wclip] are clipped

                        bclip and wclip will be set to be inside       

                        [lbeg,lend] if lbeg and/or lend are supplied   

 threecolor=1		 supply 3 color values instead of only two,	

                        using not only black and white, but f.e. red,	

                        green and blue					

 brgb=0.0,0.0,0.0	 red, green, blue values corresponding to black	

 grgb=1.0,1.0,1.0	 red, green, blue values corresponding to grey	

 wrgb=1.0,1.0,1.0	 red, green, blue values corresponding to white	

 bhls=0.0,0.0,0.0	 hue, lightness, saturation corresponding to black

 ghls=0.0,1.0,0.0	 hue, lightness, saturation corresponding to grey

 whls=0.0,1.0,0.0	 hue, lightness, saturation corresponding to white

 bps=12		 bits per sample for color plots, either 12 or 24

 d1s=1.0		 factor by which to scale d1 before imaging	

 d2s=1.0		 factor by which to scale d2 before imaging	

 verbose=1		 =1 for info printed on stderr (0 for no info)	

 xbox=1.5		 offset in inches of left side of axes box	

 ybox=1.5		 offset in inches of bottom side of axes box	

 width=6.0		 width in inches of axes box			

 height=8.0		 height in inches of axes box			

 x1beg=x1min		 value at which axis 1 begins			

 x1end=x1max		 value at which axis 1 ends			

 d1num=0.0		 numbered tic interval on axis 1 (0.0 for automatic)

 f1num=x1min		 first numbered tic on axis 1 (used if d1num not 0.0)

 n1tic=1		 number of tics per numbered tic on axis 1	

 grid1=none		 grid lines on axis 1 - none, dot, dash, or solid

 label1=		 label on axis 1				

 x2beg=x2min		 value at which axis 2 begins			

 x2end=x2max		 value at which axis 2 ends			

 d2num=0.0		 numbered tic interval on axis 2 (0.0 for automatic)

 f2num=x2min		 first numbered tic on axis 2 (used if d2num not 0.0)

 n2tic=1		 number of tics per numbered tic on axis 2	

 grid2=none		 grid lines on axis 2 - none, dot, dash, or solid

 label2=		 label on axis 2				

 labelfont=Helvetica	 font name for axes labels			

 labelsize=18		 font size for axes labels			

 title=		 title of plot					

 titlefont=Helvetica-Bold font name for title				

 titlesize=24		  font size for title				

 titlecolor=black	 color of title					

 axescolor=black	 color of axes					

 gridcolor=black	 color of grid					

 axeswidth=1            width (in points) of axes                      

 ticwidth=axeswidth     width (in points) of tic marks			

 gridwidth=axeswidth    width (in points) of grid lines		

 style=seismic		 normal (axis 1 horizontal, axis 2 vertical) or	

			 seismic (axis 1 vertical, axis 2 horizontal)	

 legend=0	         =1 display the color scale			

 lnice=0                =1 nice legend arrangement                     

                        (overrides ybox,lx,width,height parameters)    

 lstyle=vertleft 	Vertical, axis label on left side   		

			 =vertright (Vertical, axis label on right side)

			 =horibottom (Horizontal, axis label on bottom)	

 units=		 unit label for legend				

 legendfont=times_roman10    font name for title			

 following are defaults for lstyle=0. They are changed for other lstyles

 lwidth=1.2		 colorscale (legend) width in inches 		

 lheight=height/3     	 colorscale (legend) height in inches		

 lx=1.0		 colorscale (legend) x-position in inches	

 ly=(height-lheight)/2+xybox    colorscale (legend) y-position in pixels

 lbeg= lmin or wclip-5*perc    value at which legend axis begins	

 lend= lmax or bclip+5*perc    value at which legend axis ends        	

 ldnum=0.0	 numbered tic interval on legend axis (0.0 for automatic)

 lfnum=lmin	 first numbered tic on legend axis (used if d1num not 0.0)

 lntic=1	 number of tics per numbered tic on legend axis 

 lgrid=none	 grid lines on legend axis - none, dot, dash, or solid



 curve=curve1,curve2,...  file(s) containing points to draw curve(s)   

 npair=n1,n2,n2,...            number(s) of pairs in each file         

 curvecolor=black,..	 color of curve(s)				

 curvewidth=axeswidth	 width (in points) of curve(s)			

 curvedash=0            solid curve(s), dash indices 1,...,11 produce  

                        curve(s) with various dash styles              



 infile=none            filename of second attribute n1xn2 array       

                        values must be from range 0.0 - 1.0            

                        (plain unformatted C-style file)               

 bckgr=0.5              background gray value				



 NOTES:								

 The curve file is an ascii file with the points specified as x1 x2 	

 pairs, one pair to a line.  A "vector" of curve files and curve	

 colors may be specified as curvefile=file1,file2,etc.			

 and curvecolor=color1,color2,etc, and the number of pairs of values   

 in each file as npair=npair1,npair2,... .				



 You may eliminate the blocky appearance of psimages by adjusting the  

 d1s= and d2s= parameters, so that psimages appear similar to ximages.	



 All color specifications may also be made in X Window style Hex format

 example:   axescolor=#255						



 Some example colormap settings:					

 red white blue: wrgb=1.0,0,0 grgb=1.0,1.0,1.0 brgb=0,0,1.0 		

 white red blue: wrgb=1.0,1.0,1.0 grgb=1.0,0.0,0.0 brgb=0,0,1.0 	

 blue red white: wrgb=0.0,0.0,1.0 grgb=1.0,0.0,0.0 brgb=1.0,1.0,1.0 	

 red green blue: wrgb=1.0,0,0 grgb=0,1.0,0 brgb=0,0,1.0		

 orange light-blue green: wrgb=1.0,.5,0 grgb=0,.7,1.0 brgb=0,1.0,0	

 red light-blue dark blue: wrgb=0.0,0,1.0 grgb=0,1.0,1.0 brgb=0,0,1.0 	



 Legal font names are:							

 AvantGarde-Book AvantGarde-BookOblique AvantGarde-Demi AvantGarde-DemiOblique"

 Bookman-Demi Bookman-DemiItalic Bookman-Light Bookman-LightItalic 

 Courier Courier-Bold Courier-BoldOblique Courier-Oblique 

 Helvetica Helvetica-Bold Helvetica-BoldOblique Helvetica-Oblique 

 Helvetica-Narrow Helvetica-Narrow-Bold Helvetica-Narrow-BoldOblique 

 Helvetica-Narrow-Oblique NewCentrySchlbk-Bold"

 NewCenturySchlbk-BoldItalic NewCenturySchlbk-Roman Palatino-Bold  

 Palatino-BoldItalic Palatino-Italics Palatino-Roman 

 SanSerif-Bold SanSerif-BoldItalic SanSerif-Roman 

 Symbol Times-Bold Times-BoldItalic 

 Times-Roman Times-Italic ZapfChancery-MediumItalic 







 Author:  Dave Hale, Colorado School of Mines, 05/29/90

 MODIFIED:  Craig Artley, Colorado School of Mines, 08/30/91

	    BoundingBox moved to top of PostScript output

 MODIFIED:  Craig Artley, Colorado School of Mines, 12/16/93

	    Added color options (Courtesy of Dave Hale, Advance Geophysical).

 Modified: Morten Wendell Pedersen, Aarhus University, 23/3-97

           Added ticwidth,axeswidth, gridwidth parameters 

 MODIFIED: Torsten Schoenfelder, Koeln, Germany 006/07/97

          colorbar (legend) (as in ximage (by Berend Scheffers, Delft))

 MODIFIED: Brian K. Macy, Phillips Petroleum, 01/14/99

	    Added curve plotting option

 MODIFIED: Torsten Schoenfelder, Koeln, Germany 02/10/99

          color scale with interpolation of three colors

 MODIFIED: Ekkehart Tessmer, University of Hamburg, Germany, 08/22/2007

          Added dashing option to curve plotting

User's notes (Juan Lorenzo) untested

CHANGES and their DATES

Import packages

instantiation of packages

Encapsulated hash of private variables

sub Step

collects switches and assembles bash instructions by adding the program name

sub note

collects switches and assembles bash instructions by adding the program name

sub clear

sub axescolor

sub axeswidth

sub bckgr

sub bclip

sub bhls

sub bperc

sub bps

sub brgb

sub clip

sub curve

sub curvecolor

sub curvedash

sub curvefile

sub curvewidth

sub d1

sub d1num

sub d1s

sub d2

sub d2num

sub d2s

sub f1

sub f1num

sub f2

sub f2num

sub ghls

sub grgb

sub grid1

sub grid2

sub gridcolor

sub gridwidth

sub height

sub infile

sub label1

sub label2

sub labelfont

sub labelsize

sub lbeg

sub ldnum

sub legend

sub legendfont

sub lend

sub lfnum

sub lgrid

sub lheight

sub lnice

sub lntic

sub lstyle

sub lwidth

sub lx

sub ly

sub n1

sub n1tic

sub n2

sub n2tic

sub npair

sub perc

sub style

sub threecolor

sub ticwidth

sub title

sub titlecolor

sub titlefont

sub titlesize

sub units

sub verbose

sub wclip

sub whls

sub width

sub wperc

sub wrgb

sub x1beg

sub x1end

sub x2beg

sub x2end

sub xbox

sub ybox

sub get_max_index

max index = number of input variables -1