idlastro / FITS Astrometry and Calibration: HREVERSE

[Source code]

NAME
HREVERSE
PURPOSE
Reverse an image about either dimension and update FITS astrometry
EXPLANATION
Reverse an image about either the X or Y axis, and create a new 
header with updated astrometry for the reversed image.
CALLING SEQUENCE
HREVERSE,oldim,oldhd, [ subs, /SILENT ]   ;Update input image and header
        or
HREVERSE, oldim, oldhd, newim, newhd, [ subs, /SILENT ]   
INPUTS
OLDIM - the original image array
OLDHD - the original image header
OPTIONAL INPUTS
SUBS - Subs equals 1 to reverse the order of the X dimension,
        2 to reverse Y order.  If omitted, then HREVERSE will
        prompt for this scalar parameter.
OPTIONAL OUTPUTS
NEWIM - the rotated image, with the same dimensions as Oldim 
NEWHD - header for newim containing updated astrometry info
        If output parameters are not supplied, the program
        will modify the input parameters OLDIM and OLDHD
        to contain the rotated image and updated header.
OPTIONAL KEYWORD INPUT
SILENT - if set and non-zero, then informative messages are suppressed.
OPTIONAL KEYWORD OUTPUT
ERRMSG - If this keyword is supplied, then any error mesasges will be
        returned to the user in this parameter rather than depending on
        on the MESSAGE routine in IDL.   If no errors are encountered
        then a null string is returned.               
SIDE EFFECTS
A right-handed coordinate system is converted into a left-
handed one, and vice-versa.
PROCEDURE
The User's Library procedure REVERSE is used to reverse the image.
The CD and CRPIX header parameters are updated for the new header.
For AIPS type astrometry, the CDELT parameters are also updated.
A history record is also added to the header
PROCEDURES USED
CHECK_FITS, EXTAST, REVERSE(), STRN(), SXADDPAR 
MODIFICATION HISTORY
Written, Aug. 1986 W. Landsman, STI Corp.
Error modifying CROTA angles corrected     9-23-88
Added format keyword, J. Isensee, July, 1990
Work for ST Guide Star images, W. Landsman   HSTX, May 1995
Compute CRPIX1 correctly for X reversal   W. Landsman HSTX August 1995
Converted to IDL V5.0   W. Landsman   September 1997
Added ERRMSG, Use double precision formatting, W. Landsman April 2000
Recognize PC00n00m astrometry matrix   W. Landsman   December 2001
Use V6.0 notation W. Landsman October 2012
oes user want error msgs returned?
Check for valid 2-D image & header
ake npar even
Update astrometry info if it exists
f so, then convert them
f so, then convert them
pdate old header