Starlink::AST - Perl interface to Starlink's AST library
========================================================

This module provides a Perl interface to Starlink's AST library
and 3 pluggable graphics backends that can be used in conjunction
with the AST library.

The AST library provides:

  - generic approach to attaching coordinate frames to data sets

     + if you have an array representing a spectrum in wavelength
       and another array that represents frequency, AST can resample
       one array to the other coordinate frame and allow you to add them
       together. This will work for any coordinate system so long as
       AST understands how to form the mapping. (many mappings
       are provided by default).

  - A generic plotting interface whereby you can

     + Have pluggable backends for the plotting system (currently
       PGPLOT, PLplot and Tk (or Tk::Zinc) canvas)

     + The ability to draw annotations, great circles and marks
       in a coordinate frame most useful to you (eg sky coordinate,
       a wavelength) and have AST map that directly to the underlying
       graphics coordinate system.

REQUIREMENTS
------------

The module comes with the source code so no external libraries are
required. For more information on AST see:

  http://www.starlink.ac.uk/ast

INSTALLATION
------------

  % perl Build.PL
  % ./Build
  % ./Build test
  % ./Build install

NOTES
-----

The Tk canvas interface does work with limitations.
This is an early proof of concept release (although 95% of AST
is supported and the PGPLOT and PLplot interfaces do work).

AUTHOR
------

Tim Jenness <tjenness@cpan.org> with some help from Alasdair Allan
(especially the PGPLOT and Tk plotting backends) and Brad Cavanagh.

Copyright (C) 2004-2012 Tim Jenness. All Rights Reserved.

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., 59 Temple
Place,Suite 330, Boston, MA  02111-1307, USA


HISTORY
-------

v1.01   + Now comes with the AST source code to remove an external dependency
          on the Starlink software.
        + Add StcsChan support.
        + Add astGetRegionBounds
        + Add GEBuf and GBBuf to GRF interface.
        + Add astMapBox and astMapSplit
        + Add astHasAttribute
        - Fix attribute retrieval when a Plot object is involved.

v1.00   + Use Module::Build
        + Add support for short ints in AST Keymaps
        + Add perl tie interface to keymaps
        + Ass astMapPutU

v0.99 - + Many improvements and bug fixes. Almost complete API support.
        + Add support for Tk::Zinc

v0.04 - + Much improved Tk canvas support
        + Channel and XmlChan source functions now work properly
        + Fix return value when AST routines fail
        + AST objects can now be cloned with Storable
        + PickAxes() method now returns the frame and mapping in a list
          context
        + New constants: AST__CURRENT, AST__BASE, AST__NOFRAME
        + Add TranP() method
        + Fix compilation problem with AST v3.4.

v0.03 - Now supports AST functionality added between v3.2 and v3.5 of AST
        (if you don't have this version it will still compile with older
        versions of AST but these routines will not be available)
        + Support for Regions
        + Support for FluxFrames and SpecFluxFrames
        + Support for RateMap
        + Support for KeyMap
        + Support for DSBSpecFrame
        + astRate now returns the second derivative only if the version
           supports it
        + Add astLinearApprox (Mapping), astEscapes (Plotting),
          astPutCards (FitsChan)

v0.02 - Same as 0.01 except that now include the PLplot interface
        which was mistakenly missing from the MANIFEST

v0.01 - First release. Most methods implemented. PGPLOT and PLplot
        interfaces okay. Tk plotting interface requires work.
        **** INTERFACES MAY CHANGE AS API IS TIDIED ****