#! /bin/csh -f
#
# Shellscript to create Postscript plot of data in grd file
# Created by macro mbm_grdplot
#
# This shellscript created by following command line:
# mbm_grdplot -I RM1000Topo.grd -O RM1000FigTopoShade -MGQ100 -Jm900 -G2 -D0/1 -A0.5/300 -V -MXW2p/0/0/255 -LMBARI Mapping AUV RM1000 Survey:Topography (m) -MGLfx7.5/6.5/36.83/0.2
#
# Define shell variables used in this script:
set PS_FILE         = RM1000FigTopoShade.ps
set CPT_FILE        = RM1000FigTopoShade.cpt
set MAP_PROJECTION  = m
set MAP_SCALE       = 900
set MAP_REGION      = -122.015/-122.005/36.7749/36.7816
set X_OFFSET        = 6.5
set Y_OFFSET        = 5.252
#
# Save existing GMT defaults
echo Saving GMT defaults...
gmtdefaults -L > gmtdefaults$$
#
# Set new GMT defaults
echo Setting new GMT defaults...
gmtset MEASURE_UNIT inch
gmtset PAPER_MEDIA archC+
gmtset ANOT_FONT Helvetica
gmtset LABEL_FONT Helvetica
gmtset HEADER_FONT Helvetica
gmtset ANOT_FONT_SIZE 16
gmtset LABEL_FONT_SIZE 16
gmtset HEADER_FONT_SIZE 20
gmtset FRAME_WIDTH 0.075
gmtset TICK_LENGTH 0.075
gmtset PAGE_ORIENTATION LANDSCAPE
gmtset COLOR_BACKGROUND 0/0/0
gmtset COLOR_FOREGROUND 255/255/255
gmtset COLOR_NAN 255/255/255
gmtset DEGREE_FORMAT 3
#
# Make color pallette table file
echo Making color pallette table file...
echo -1012.5  37  57 175  -1000  40 127 251 > $CPT_FILE
echo  -1000  40 127 251 -987.5  50 190 255 >> $CPT_FILE
echo -987.5  50 190 255   -975 106 235 255 >> $CPT_FILE
echo   -975 106 235 255 -962.5 138 236 174 >> $CPT_FILE
echo -962.5 138 236 174   -950 205 255 162 >> $CPT_FILE
echo   -950 205 255 162 -937.5 240 236 121 >> $CPT_FILE
echo -937.5 240 236 121   -925 255 189  87 >> $CPT_FILE
echo   -925 255 189  87 -912.5 255 161  68 >> $CPT_FILE
echo -912.5 255 161  68   -900 255 186 133 >> $CPT_FILE
echo   -900 255 186 133 -887.5 255 255 255 >> $CPT_FILE
#
# Define data files to be plotted:
set DATA_FILE        = RM1000Topo.grd
set INTENSITY_FILE   = 
#
# Get shading array
echo Getting shading array...
echo Running grdgradient to get x component of the gradient...
grdgradient $DATA_FILE -A90 -G$DATA_FILE.drvx -M
echo Running grdgradient to get y component of the gradient...
grdgradient $DATA_FILE -A0 -G$DATA_FILE.drvy -M
echo Running grdmath to get adjusted x gradient...
grdmath $DATA_FILE.drvx -0.5 MUL 10 MUL = $DATA_FILE.magx
echo Running grdmath to get adjusted y gradient...
grdmath $DATA_FILE.drvy -0.5 MUL 10 MUL = $DATA_FILE.magy
echo Running grdmath to get normalization factor...
grdmath $DATA_FILE.magx 2.0 POW \
	$DATA_FILE.magy 2.0 POW ADD \
	1.0 ADD SQRT = $DATA_FILE.denom
echo Running grdmath to get normalized x gradient...
grdmath $DATA_FILE.magx $DATA_FILE.denom DIV = $DATA_FILE.normx
echo Running grdmath to get normalized y gradient...
grdmath $DATA_FILE.magy $DATA_FILE.denom DIV = $DATA_FILE.normy
echo Running grdmath to get normalized z gradient...
grdmath 1.0 $DATA_FILE.denom DIV = $DATA_FILE.normz
echo Running grdmath to apply lighting vector to normalized gradient...
grdmath $DATA_FILE.normx -0.750000042542609 MUL \
	$DATA_FILE.normy 0.433012637137884 MUL ADD \
	$DATA_FILE.normz 0.49999999226498 MUL ADD -0.5 ADD = $DATA_FILE.int
/bin/rm -f $DATA_FILE.drvx $DATA_FILE.drvy \
	$DATA_FILE.magx $DATA_FILE.magy \
	$DATA_FILE.denom $DATA_FILE.normx \
	$DATA_FILE.normy $DATA_FILE.normz
#
# Make color image
echo Running grdimage...
grdimage $DATA_FILE -J$MAP_PROJECTION$MAP_SCALE \
	-R$MAP_REGION -C$CPT_FILE \
	-I$DATA_FILE.int \
	-E100 \
	-X$X_OFFSET -Y$Y_OFFSET -K -V >! $PS_FILE
#
# Make color scale
echo Running psscale...
psscale -C$CPT_FILE \
	-D4.5000/-1.0000/9.0000/0.3000h \
	-B":Topography (m):" \
	-K -O -V >> $PS_FILE
#
# Make basemap
echo Running psbasemap...
psbasemap -J$MAP_PROJECTION$MAP_SCALE \
	-R$MAP_REGION \
	-B5c/5c:."MBARI Mapping AUV RM1000 Survey": \
	-Lfx7.5/6.5/36.83/0.2 \
	-O -V >> $PS_FILE
#
# Delete surplus files
echo Deleting surplus files...
/bin/rm -f $CPT_FILE
#
# Reset GMT default fonts
echo Resetting GMT fonts...
/bin/mv gmtdefaults$$ .gmtdefaults
#
# Run gv
echo Running gv in background...
gv --orientation=landscape --media=BBox RM1000FigTopoShade.ps &
#
# All done!
echo All done!
