[fitsbits] WCSLIB 4.4

Mark Calabretta mcalabre at atnf.csiro.au
Mon Aug 10 03:54:32 EDT 2009


Greetings,

WCSLIB 4.4 is now available from http://www.atnf.csiro.au/~mcalabre.

The main development in this release is a doxygen-generated
programming manual which should make it easier to navigate the
WCSLIB functions and data structures.  See

  http://www.atnf.csiro.au/~mcalabre/WCS/wcslib/index.html

A full list of changes is appended here.

My thanks to all those who have provided feedback since v4.3
(2007/Dec).

Mark Calabretta
ATNF

>>>


WCSLIB version 4.4 (2009/08/10)
-------------------------------

* C library

  - Creation of WCSLIB user manual from the header file prologues using
    a special-purpose parser, doxextr, and sed scripts to generate input
    for doxygen.  This required minor formatting changes to all
    prologues plus miscellaneous changes such as naming of arguments in
    function prototypes.

  - Bug fix in wcsset() that affected handling of PROJPn (deprecated)
    and PVi_ma attached to the longitude (not latitude) axis.  Guard
    against long strings when copying the projection code.  In
    wcs_types(), allow for early Paper IV distortion codes (e.g.
    "RA---TAN-SIP") when parsing CTYPEia.

  - Use sincos() whereever possible for a ~15% speedup (patches for
    cel.c, prj.c and sph.c supplied by Michael Droettboom).  configure
    checks for, and uses it automatically if available.

  - Fixed the translation of GLS to SFL in wcsset() and celfix() when
    the reference longitude and latitude are non-zero.  (In the AIPS
    convention, this simply translates the reference point, i.e. the map
    as a whole, to those coordinates without creating an oblique grid.)

  - Bug fix in prjoff(), a utility function used by the prj routines.
    It forces (x,y) = (0,0) at (phi_0,theta_0) when the latter are set
    by PVi_[012]a attached to the longitude (not latitude) axis.  Rarely
    used in practice.

  - New utility function, sphdpa(), computes the distance and position
    angle from a point on the sphere to a set of field points.

  - In sphx2s() and sphx2s(), handle a simple change in origin of
    longitude using a short-cut calculation for speed and accuracy.
    Similarly in celset(), check whether phip == phi0 when computing
    latp and if so use a short-cut that ensures latp == 90.0 (exactly)
    if lat0 == theta0.  The resulting spherical rotation then becomes a
    simple change in origin of longitude.  In particular, these changes
    should assist PGSBOX in drawing grid lines of +/-180 longitude, to
    prevent flip-flopping between one and the other.

  - wcsbth() & wcspih(): resolved an inconsistency between the
    documentation and code by renamimg WCSHDR_VSOURCEa as
    WCSHDR_VSOURCE.

  - Flex code: moved declaration of helper functions out of global
    scope.

  - Fixed call to wcss2p() in twcshdr.

* Fortran wrappers

  - New wrapper functions:
    - WCSBTH for wcsbth(),
    - WCSBDX for wcsbdx(),
    - CDFIX  for cdfix(),
    - SPHDPA for sphdpa().

  - Updated WCSLEN (in wcs.inc) and added WCS_COLAX and WCS_VELANGL to
    match changes to wcsprm made in v4.3 with corresponding changes to
    the wrapper functions.  Likewise updated TABLEN (in tab.inc) for
    changes to tabprm, and added CEL_LATPREQ for celprm.

  - Struct lengths are now long enough to accomodate 64-bit machines.

  - Updated the flag bits for the RELAX argument in wcshdr.inc to
    reflect changes to wcshdr.h made in v4.3.  Renamed WCSHDR_VSOURCEa
    to WCSHDR_VSOURCE for consistency with the C library.

* PGSBOX

  - Improved grid labelling, particularly in minimizing the number of
    fields required in sexagesimal labels.

* Utilities

  - New utility program:

    - wcsware extracts the WCS keywords for an image from the specified
      FITS file, constructs wcsprm structs for each coordinate
      representation found, and performs a variety of operations using
      them.

  - Old utility programs (first appeared in 4.3 but were not recorded):

    - HPXcvt reorganises HEALPix data into a 2-D FITS image with HPX
      coordinate system.

    - wcsgrid extracts the WCS keywords for an image from the specified
      FITS file and uses pgsbox() to plot a 2-D coordinate graticule for
      each alternate representation found.

    - fitshdr lists headers from a FITS file specified on the command
      line, or else on stdin, printing them as 80-character keyrecords
      without trailing blanks.

* General

  - New configure options, --with-pgplotinc, --with-pgplotlib,
    --with-cfitsioinc and --with-cfitsiolib allow additional directories
    to be added to the library and include file search path.
    
  - Miscellaneous fixes and improvements to the installation process.

  - Generate a metadata file for pkg-config.

  - Added 'make MODE=interactive check' to run the test programs in
    interactive mode rather than batch.

  - Merged the separate CHANGES files for C, Fortran and PGSBOX into
    one (this), with a new section for utilities.


WCSLIB version 4.3.3 (2009/04/30)
---------------------------------

* C library

  - fitshdr.l, wcsbth.l, and wcspih.l: use setjmp/longjmp to preempt
    the call to exit() which is hard-coded in function yy_fatal_error()
    supplied by flex.

  - wcspih.l: if NAXIS is non-zero but there were no WCS keywords at
    all in the header then create a default WCS with blank alternate
    version.

* Fortran wrappers

  - (No changes.)

* PGSBOX

  - (No changes.)


WCSLIB version 4.3.2 (2009/03/16)
---------------------------------

* C library

  - utils/GNUmakefile: create BINDIR if necessary prior to installing
    utilities.

* Fortran wrappers

  - (No changes.)

* PGSBOX

  - (No changes.)


WCSLIB version 4.3.1 (2008/09/08)
---------------------------------

* C library

  - Top-level GNUmakefile: install header files.

* Fortran wrappers

  - (No changes.)

* PGSBOX

  - (No changes.)







More information about the fitsbits mailing list