The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Image::DS9::Manual::API.pod - Image::DS9 API Reference

VERSION

version v1.0.1

DESCRIPTION

Image::DS9 provides the user access to DS9's directives via methods which closely mirror their syntax. This document provides the list of methods, as generated from Image::DS9's internal grammar

Most methods exactly parallel the DS9 XPA commands. For more information on what the methods do, or how the arguments affect things, please consult the DS9 documentation.

In general each element in a command is passed as a separate argument to the method. For example, to change the binning factor:

  $dsp->bin( factor => 0.2 );

Some commands have more arguments:

  $dsp->bin( smooth => function => 'boxcar' );
  $dsp->bin( smooth => radius => 33 );
  $dsp->bin( about => ( 3, 3 ) );
  $dsp->bin( cols => ( 'rt_x', 'rt_y' ) );

Note the use of the => operator to force preceding barewords to be treated as strings, and the frivolous use of extra parenthesis for aesthetics. Some arguments are concatenated to avoid confusion; see the documentation for the individual methods.

Some commands can query DS9 for state information as well as set it. For example,

        $function = $dsp->bin( smooth => function );

Image::DS9 differentiates between the setting and requesting of values by the presence or absence of the argument containing the information.

Some commands take a hash as their last argument, which contains attributes which are passed on to DS9.

True Boolean values may be one of the following: 1, yes, true. False Boolean values may be one of the following: 0, no, false. Boolean values returned by a command are always translated into either 0 or 1.

The documentation for the commands lists the options supported and any deviations from the general approach described above. Refer to the DS9 XPA documentation to determine which commands permit queries and the allowed data types for the arguments. Image::DS9 checks that all data passed to DS9 is of the appropriate type.

Arguments and Return values

Please see Image::DS9::Manual::Interface for the general concepts around argument passing and return values.

METHODS

about

  [ STRING ] = $ds9->about;

align

  $ds9->align( BOOL );

  [ BOOL ] = $ds9->align;

analysis

Not implemented

array

  $ds9->array( PDL, ?{ new => BOOL, mask => BOOL } );

  $ds9->array( SCALARREF, ?{ new => BOOL, mask => BOOL, bitpix =>
    INTEGER, skip => INTEGER, -o => [ -a => [ xdim => INTEGER, ydim =>
    INTEGER ], dim => INTEGER ], zdim => INTEGER, endian => ( 'big' |
    'little' | 'native' ) } );

backup

  $ds9->backup( <filename>:STRING );

bin

  $ds9->bin( 'about', 'center' );
  $ds9->bin( 'about', <x>:FLOAT, <y>:FLOAT );

  $ds9->bin( 'buffersize', INTEGER );

  $ds9->bin( 'close' );

  $ds9->bin( 'cols', <xcol>:STRING, <ycol>:STRING );
  $ds9->bin( 'colsz', <xcol>:STRING, <ycol>:STRING, <zcol>:STRING );

  $ds9->bin( 'depth', INTEGER );

  $ds9->bin( 'factor', <x/y>:FLOAT );
  $ds9->bin( 'factor', <x>:FLOAT, <y>:FLOAT );

  $ds9->bin( 'filter', <filter>:STRING );

  $ds9->bin( 'function', ( 'average' | 'sum' ) );

  $ds9->bin( 'in' );

  $ds9->bin( 'lock', BOOL );

  $ds9->bin( 'match' );

  $ds9->bin( 'open' );

  $ds9->bin( 'out' );

  $ds9->bin( 'to fit' );
  $ds9->bin( 'tofit' );

  [ <filter>:STRING ] = $ds9->bin( 'filter' );

  [ <function>:STRING ] = $ds9->bin( 'function' );

  [ <x>:FLOAT, <y>:FLOAT ] = $ds9->bin( 'about' );

  [ ARRAY ] = $ds9->bin( 'cols' );
  [ ARRAY ] = $ds9->bin( 'factor' );
  [ ARRAY ] = $ds9->bin( 'factor' );

  [ BOOL ] = $ds9->bin( 'lock' );

  [ INTEGER ] = $ds9->bin( 'buffersize' );
  [ INTEGER ] = $ds9->bin( 'depth' );
  $ds9->blink( 'interval', FLOAT );

  $ds9->blink( BOOL );

  $ds9->blink;

  [ BOOL ] = $ds9->blink( 'state' );

  [ FLOAT ] = $ds9->blink( 'interval' );

block

  $ds9->block( '0' );
  $ds9->block( 'abs', <x/y>:FLOAT );
  $ds9->block( 'abs', <x>:FLOAT, <y>:FLOAT );
  $ds9->block( 'close' );
  $ds9->block( 'lock', BOOL );
  $ds9->block( 'match' );
  $ds9->block( 'open' );
  $ds9->block( 'rel', <x/y>:FLOAT );
  $ds9->block( 'rel', <x>:FLOAT, <y>:FLOAT );
  $ds9->block( 'to', 'fit' );
  $ds9->block( 'to', <x/y>:FLOAT );
  $ds9->block( 'to', <x>:FLOAT, <y>:FLOAT );
  $ds9->block( 'tofit' );

  $ds9->block( <x/y>:FLOAT );
  $ds9->block( <x>:FLOAT, <y>:FLOAT );

  [ ARRAY ] = $ds9->block;

  [ BOOL ] = $ds9->block( 'lock' );

catalog

Not implemented

cd

  $ds9->cd( STRING );

  [ STRING ] = $ds9->cd;

cmap

  $ds9->cmap( 'close' );

  $ds9->cmap( 'file', <filename>:STRING );

  $ds9->cmap( 'invert', BOOL );

  $ds9->cmap( 'load', <filename>:STRING );

  $ds9->cmap( 'open' );

  $ds9->cmap( 'save', <filename>:STRING );

  $ds9->cmap( 'tag', 'delete' );
  $ds9->cmap( 'tag', 'load', <filename>:STRING );
  $ds9->cmap( 'tag', 'save', <filename>:STRING );

  $ds9->cmap( 'value', <contrast>:FLOAT, <brightness>:FLOAT );

  $ds9->cmap( <name>:STRING );

  [ <contrast>:FLOAT, <brightness>:FLOAT ] = $ds9->cmap( 'value' );

  [ <filename>:STRING ] = $ds9->cmap( 'file' );

  [ <name>:STRING ] = $ds9->cmap;

  [ BOOL ] = $ds9->cmap( 'invert' );

colorbar

  $ds9->colorbar( 'font', ( 'courier' | 'helvetica' | 'times' ) );
  $ds9->colorbar( 'fontsize', FLOAT );
  $ds9->colorbar( 'fontslant', ( 'italic' | 'roman' ) );
  $ds9->colorbar( 'fontweight', ( 'bold' | 'normal' ) );
  $ds9->colorbar( 'horizontal' );
  $ds9->colorbar( 'lock' );
  $ds9->colorbar( 'lock', 'state' );
  $ds9->colorbar( 'lock', BOOL );
  $ds9->colorbar( 'match' );
  $ds9->colorbar( 'numerics', BOOL );
  $ds9->colorbar( 'orientation', ( 'horizontal' | 'vertical' ) );
  $ds9->colorbar( 'size', INTEGER );
  $ds9->colorbar( 'space', ( 'distance' | 'value' ) );
  $ds9->colorbar( 'ticks', INTEGER );
  $ds9->colorbar( 'vertical' );
  $ds9->colorbar( BOOL );

  [ <font>:STRING ] = $ds9->colorbar( 'font' );

  [ <fontslant>:STRING ] = $ds9->colorbar( 'fontslant' );

  [ <fontweight>:STRING ] = $ds9->colorbar( 'fontweight' );

  [ <orientation>:STRING ] = $ds9->colorbar( 'orientation' );

  [ <space>:STRING ] = $ds9->colorbar( 'space' );

  [ BOOL ] = $ds9->colorbar( 'lock', 'state' );
  [ BOOL ] = $ds9->colorbar( 'numerics' );
  [ BOOL ] = $ds9->colorbar;

  [ FLOAT ] = $ds9->colorbar( 'fontsize' );

  [ INTEGER ] = $ds9->colorbar( 'size' );
  [ INTEGER ] = $ds9->colorbar( 'ticks' );

console

Not implemented

contour

  $ds9->contour( 'clear' );
  $ds9->contour( 'close' );
  $ds9->contour( 'color', COLOR );
  $ds9->contour( 'convert' );
  $ds9->contour( 'copy' );
  $ds9->contour( 'dash', BOOL );
  $ds9->contour( 'generate' );
  $ds9->contour( 'levels', ARRAY );
  $ds9->contour( 'limits', FLOAT, FLOAT );
  $ds9->contour( 'load', 'levels', <filename>:STRING );
  $ds9->contour( 'load', <filename>:STRING );
  $ds9->contour( 'log', 'exp', FLOAT );
  $ds9->contour( 'method', ( 'block' | 'smooth' ) );
  $ds9->contour( 'mode', ( 'minmax' | 'zmax' | 'zscale' ) );
  $ds9->contour( 'mode', FLOAT );
  $ds9->contour( 'nlevels', INTEGER );
  $ds9->contour( 'open' );
  $ds9->contour( 'paste' );
  $ds9->contour( 'paste', FRAME_COORD_SYSTEMS, COLOR, FLOAT, BOOL );
  $ds9->contour( 'save', 'levels', <filename>:STRING );
  $ds9->contour( 'save', <filename>:STRING, FRAME_COORD_SYSTEMS );
  $ds9->contour( 'save', <filename>:STRING, FRAME_COORD_SYSTEMS,
    SKYFRAME );

  $ds9->contour( 'scale', <scale>:STRING );
  $ds9->contour( 'scope', ( 'global' | 'local' ) );
  $ds9->contour( 'smooth', INTEGER );
  $ds9->contour( 'width', INTEGER );
  $ds9->contour( BOOL );
  $ds9->contour( FRAME_COORD_SYSTEMS );
  $ds9->contour( FRAME_COORD_SYSTEMS, SKYFRAME );

  [ <method>:STRING ] = $ds9->contour( 'method' );

  [ <mode>:STRING ] = $ds9->contour( 'mode' );

  [ <scale>:STRING ] = $ds9->contour( 'scale' );

  [ <scope>:STRING ] = $ds9->contour( 'scope' );

  [ ARRAY ] = $ds9->contour( 'levels' );

  [ BOOL ] = $ds9->contour( 'dash' );
  [ BOOL ] = $ds9->contour;

  [ COLOR ] = $ds9->contour( 'color' );

  [ FLOAT ] = $ds9->contour( 'log', 'exp' );
  [ FLOAT ] = $ds9->contour( 'mode' );

  [ FLOAT, FLOAT ] = $ds9->contour( 'limits' );

  [ INTEGER ] = $ds9->contour( 'nlevels' );
  [ INTEGER ] = $ds9->contour( 'smooth' );
  [ INTEGER ] = $ds9->contour( 'width' );

  [ STRING ] = $ds9->contour( FRAME_COORD_SYSTEMS );
  [ STRING ] = $ds9->contour( FRAME_COORD_SYSTEMS, SKYFRAME );

crop

  $ds9->crop( '3d', <x>:FLOAT, <y>:FLOAT );
  $ds9->crop( '3d', <x>:FLOAT, <y>:FLOAT, FRAME_COORD_SYSTEMS );

  $ds9->crop( 'close' );

  $ds9->crop( 'lock', 'none' );
  $ds9->crop( 'lock', FRAME_COORD_SYSTEMS );

  $ds9->crop( 'match', SKY_COORD_SYSTEMS | FRAME_COORD_SYSTEMS:STRING
    );

  $ds9->crop( 'open' );

  $ds9->crop( 'reset' );

  $ds9->crop( <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL, <width>:FLOAT, <height>:FLOAT );

  $ds9->crop( <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL, <width>:FLOAT, <height>:FLOAT,
    FRAME_COORD_SYSTEMS_NON_WCS );

  $ds9->crop( <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL, <width>:FLOAT, <height>:FLOAT,
    FRAME_COORD_SYSTEMS_NON_WCS, ( 'degrees' | 'sexagesimal' ) );

  $ds9->crop( <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL, <width>:FLOAT, <height>:FLOAT,
    SKYFRAME, ( 'arcmin' | 'arcsec' | 'degrees' ) );

  $ds9->crop( <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL, <width>:FLOAT, <height>:FLOAT, WCS, (
    'arcmin' | 'arcsec' | 'degrees' ) );

  $ds9->crop( <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL, <width>:FLOAT, <height>:FLOAT, WCS,
    SKYFRAME );

  $ds9->crop( <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL, <width>:FLOAT, <height>:FLOAT, WCS,
    SKYFRAME, ( 'arcmin' | 'arcsec' | 'degrees' ) );

  $ds9->crop( SKYFRAME );
  $ds9->crop( SKYFRAME, ( 'degrees' | 'sexagesimal' ) );
  $ds9->crop( SKYFRAME, ( 'degrees' | 'sexagesimal' ), ( 'arcmin' |
    'arcsec' | 'degrees' ) );

  $ds9->crop( WCS, SKYFRAME, ( 'degrees' | 'sexagesimal' ), ( 'arcmin'
    | 'arcsec' | 'degrees' ) );

  [ <x>:FLOAT, <y>:FLOAT ] = $ds9->crop( '3d' );
  [ <x>:FLOAT, <y>:FLOAT, <width>:FLOAT, <height>:FLOAT ] = $ds9->crop(
    SKYFRAME );

  [ <x>:FLOAT, <y>:FLOAT, <width>:FLOAT, <height>:FLOAT ] = $ds9->crop;

  [ <x>:STRING, <y>:STRING, <width>:FLOAT, <height>:FLOAT ] =
    $ds9->crop( SKYFRAME, ( 'degrees' | 'sexagesimal' ) );

  [ <x>:STRING, <y>:STRING, <width>:FLOAT, <height>:FLOAT ] =
    $ds9->crop( SKYFRAME, ( 'degrees' | 'sexagesimal' ), ( 'arcmin' |
    'arcsec' | 'degrees' ) );

  [ <x>:STRING, <y>:STRING, <width>:FLOAT, <height>:FLOAT ] =
    $ds9->crop( WCS, SKYFRAME, ( 'degrees' | 'sexagesimal' ), (
    'arcmin' | 'arcsec' | 'degrees' ) );

  [ FRAME_COORD_SYSTEMS ] = $ds9->crop( 'lock' );

crosshair

  $ds9->crosshair( 'lock', 'none' );
  $ds9->crosshair( 'lock', FRAME_COORD_SYSTEMS );
  $ds9->crosshair( 'match', SKY_COORD_SYSTEMS |
    FRAME_COORD_SYSTEMS:STRING );

  $ds9->crosshair( <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL, FRAME_COORD_SYSTEMS );

  $ds9->crosshair( <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL, FRAME_COORD_SYSTEMS, SKYFRAME );

  $ds9->crosshair( FRAME_COORD_SYSTEMS );
  $ds9->crosshair( FRAME_COORD_SYSTEMS, ( 'degrees' | 'sexagesimal' )
    );

  $ds9->crosshair( FRAME_COORD_SYSTEMS, SKYFRAME );
  $ds9->crosshair( FRAME_COORD_SYSTEMS, SKYFRAME, ( 'degrees' |
    'sexagesimal' ) );

  [ <ra>:STRING, <dec>:STRING ] = $ds9->crosshair( FRAME_COORD_SYSTEMS
    );

  [ <ra>:STRING, <dec>:STRING ] = $ds9->crosshair( FRAME_COORD_SYSTEMS,
    ( 'degrees' | 'sexagesimal' ) );

  [ <ra>:STRING, <dec>:STRING ] = $ds9->crosshair( FRAME_COORD_SYSTEMS,
    SKYFRAME );

  [ <ra>:STRING, <dec>:STRING ] = $ds9->crosshair( FRAME_COORD_SYSTEMS,
    SKYFRAME, ( 'degrees' | 'sexagesimal' ) );

  [ <ra>:STRING, <dec>:STRING ] = $ds9->crosshair;

  [ FRAME_COORD_SYSTEMS ] = $ds9->crosshair( 'lock' );

cube

  $ds9->cube( 'axes', 'lock', BOOL );
  $ds9->cube( 'axis', INTEGER );

  $ds9->cube( 'close' );

  $ds9->cube( 'first' );

  $ds9->cube( 'interval', FLOAT );

  $ds9->cube( 'last' );
  $ds9->cube( 'lock', (CUBE_COORD_SYSTEMS | 'none') );

  $ds9->cube( 'match', CUBE_COORD_SYSTEMS );

  $ds9->cube( 'next' );

  $ds9->cube( 'open' );
  $ds9->cube( 'order', ( '123' | '132' | '213' | '231' | '312' | '321'
    ) );

  $ds9->cube( 'play' );
  $ds9->cube( 'prev' );

  $ds9->cube( 'slice', FLOAT, WCS system );
  $ds9->cube( 'slice', INTEGER );
  $ds9->cube( 'stop' );

  [ ( '123' | '132' | '213' | '231' | '312' | '321' ) ] = $ds9->cube(
    'order' );

  [ (CUBE_COORD_SYSTEMS | 'none') ] = $ds9->cube( 'lock' );

  [ BOOL ] = $ds9->cube( 'axes', 'lock' );
  [ BOOL ] = $ds9->cube( WCS );

  [ FLOAT ] = $ds9->cube( 'interval' );

  [ INTEGER ] = $ds9->cube( 'axis' );

cursor

  $ds9->cursor( <x>:FLOAT, <y>:FLOAT );

data

Not implemented

dsseso

  $ds9->dsseso( 'close' );
  $ds9->dsseso( 'coord', <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL );

  $ds9->dsseso( 'frame', ( 'current' | 'new' ) );
  $ds9->dsseso( 'name', STRING );
  $ds9->dsseso( 'open' );
  $ds9->dsseso( 'save', BOOL );
  $ds9->dsseso( 'size', <x>:FLOAT, <y>:FLOAT, ( 'arcmin' | 'arcsec' |
    'degrees' ) );

  $ds9->dsseso( 'survey', DSS_ESO_SURVEYS );
  $ds9->dsseso( 'update', ( 'crosshair' | 'frame' ) );
  $ds9->dsseso( <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL );

  $ds9->dsseso( STRING );

  [ <ra>:DECIMAL_OR_SEXAGESIMAL, <dec>:DECIMAL_OR_SEXAGESIMAL, STRING ]
    = $ds9->dsseso( 'coord' );

  [ <survey>:STRING ] = $ds9->dsseso( 'survey' );

  [ <x>:FLOAT, <y>:FLOAT, ( 'arcmin' | 'arcsec' | 'degrees' ) ] =
    $ds9->dsseso( 'size' );

  [ BOOL ] = $ds9->dsseso( 'save' );

  [ STRING ] = $ds9->dsseso( 'frame' );
  [ STRING ] = $ds9->dsseso( 'name' );
  [ STRING ] = $ds9->dsseso;

dsssao

  $ds9->dsssao( 'close' );
  $ds9->dsssao( 'coord', <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL );

  $ds9->dsssao( 'frame', ( 'current' | 'new' ) );
  $ds9->dsssao( 'name', STRING );
  $ds9->dsssao( 'open' );
  $ds9->dsssao( 'save', BOOL );
  $ds9->dsssao( 'size', <x>:FLOAT, <y>:FLOAT, ( 'arcmin' | 'arcsec' |
    'degrees' ) );

  $ds9->dsssao( 'update', ( 'crosshair' | 'frame' ) );
  $ds9->dsssao( <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL );

  $ds9->dsssao( STRING );

  [ <ra>:DECIMAL_OR_SEXAGESIMAL, <dec>:DECIMAL_OR_SEXAGESIMAL, STRING ]
    = $ds9->dsssao( 'coord' );

  [ <x>:FLOAT, <y>:FLOAT, ( 'arcmin' | 'arcsec' | 'degrees' ) ] =
    $ds9->dsssao( 'size' );

  [ BOOL ] = $ds9->dsssao( 'save' );

  [ STRING ] = $ds9->dsssao( 'frame' );
  [ STRING ] = $ds9->dsssao( 'name' );
  [ STRING ] = $ds9->dsssao;

dssstsci

  $ds9->dssstsci( 'close' );
  $ds9->dssstsci( 'coord', <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL );

  $ds9->dssstsci( 'frame', ( 'current' | 'new' ) );
  $ds9->dssstsci( 'name', STRING );
  $ds9->dssstsci( 'open' );
  $ds9->dssstsci( 'save', BOOL );
  $ds9->dssstsci( 'size', <x>:FLOAT, <y>:FLOAT, ( 'arcmin' | 'arcsec' |
    'degrees' ) );

  $ds9->dssstsci( 'survey', DSS_STSCI_SURVEYS );
  $ds9->dssstsci( 'update', ( 'crosshair' | 'frame' ) );
  $ds9->dssstsci( <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL );

  $ds9->dssstsci( STRING );

  [ <ra>:DECIMAL_OR_SEXAGESIMAL, <dec>:DECIMAL_OR_SEXAGESIMAL, STRING ]
    = $ds9->dssstsci( 'coord' );

  [ <survey>:STRING ] = $ds9->dssstsci( 'survey' );

  [ <x>:FLOAT, <y>:FLOAT, ( 'arcmin' | 'arcsec' | 'degrees' ) ] =
    $ds9->dssstsci( 'size' );

  [ BOOL ] = $ds9->dssstsci( 'save' );

  [ STRING ] = $ds9->dssstsci( 'frame' );
  [ STRING ] = $ds9->dssstsci( 'name' );
  [ STRING ] = $ds9->dssstsci;

envi

Not implemented

exit

  $ds9->exit;

export

  $ds9->export( 'array', <filename>:STRING );
  $ds9->export( 'array', <filename>:STRING, ( 'big' | 'little' |
    'native' ) );

  $ds9->export( 'envi', <filename>:STRING );
  $ds9->export( 'envi', STRING, STRING, ( 'big' | 'little' | 'native' )
    );

  $ds9->export( 'gif', <filename>:STRING );
  $ds9->export( 'jpeg', <filename>:STRING, <quality>:INTEGER );
  $ds9->export( 'nrrd', <filename>:STRING );
  $ds9->export( 'nrrd', <filename>:STRING, ( 'big' | 'little' |
    'native' ) );

  $ds9->export( 'png', <filename>:STRING );
  $ds9->export( 'tiff', <filename>:STRING );
  $ds9->export( 'tiff', <filename>:STRING, ( 'deflate' | 'jpeg' |
    'none' | 'packbits' ) );

fade

Not implemented

file

  [ STRING ] = $ds9->file;

fits

  $ds9->fits( 'header', 'keyword', STRING );
  $ds9->fits( 'header', INTEGER );
  $ds9->fits( 'header', INTEGER, 'keyword', STRING );

  $ds9->fits( 'size' );
  $ds9->fits( 'size', ( 'arcmin' | 'arcsec' | 'degrees' ) );
  $ds9->fits( 'size', SKYFRAME, ( 'arcmin' | 'arcsec' | 'degrees' ) );
  $ds9->fits( 'size', WCS, ( 'arcmin' | 'arcsec' | 'degrees' ) );
  $ds9->fits( 'size', WCS, SKYFRAME, ( 'arcmin' | 'arcsec' | 'degrees'
    ) );

  $ds9->fits( <filename>:STRING, ?{ new => BOOL, mask => BOOL, extname
    => STRING, filter => STRING, bin => ARRAY } );

  $ds9->fits( \$buffer:SCALARREF, ?{ new => BOOL, mask => BOOL, extname
    => STRING, filter => STRING, bin => ARRAY } );

  [ <x>:FLOAT, <y>:FLOAT ] = $ds9->fits( 'size' );
  [ <x>:FLOAT, <y>:FLOAT ] = $ds9->fits( 'size', ( 'arcmin' | 'arcsec'
    | 'degrees' ) );

  [ <x>:FLOAT, <y>:FLOAT ] = $ds9->fits( 'size', SKYFRAME, ( 'arcmin' |
    'arcsec' | 'degrees' ) );

  [ <x>:FLOAT, <y>:FLOAT ] = $ds9->fits( 'size', WCS, ( 'arcmin' |
    'arcsec' | 'degrees' ) );

  [ <x>:FLOAT, <y>:FLOAT ] = $ds9->fits( 'size', WCS, SKYFRAME, (
    'arcmin' | 'arcsec' | 'degrees' ) );

  [ INTEGER ] = $ds9->fits( 'bitpix' );
  [ INTEGER ] = $ds9->fits( 'depth' );
  [ INTEGER ] = $ds9->fits( 'height' );
  [ INTEGER ] = $ds9->fits( 'width' );

  [ STRING ] = $ds9->fits( 'header' );
  [ STRING ] = $ds9->fits( 'header', 'keyword', STRING );
  [ STRING ] = $ds9->fits( 'header', INTEGER );
  [ STRING ] = $ds9->fits( 'header', INTEGER, 'keyword', STRING );
  [ STRING ] = $ds9->fits( 'image' );
  [ STRING ] = $ds9->fits( 'slice' );
  [ STRING ] = $ds9->fits( 'table' );
  [ STRING ] = $ds9->fits;

footprint

Not implemented

fp

Not implemented

frame

  $ds9->frame( 'center' );
  $ds9->frame( 'center', 'all' );
  $ds9->frame( 'center', INTEGER );
  $ds9->frame( 'clear' );
  $ds9->frame( 'clear', 'all' );
  $ds9->frame( 'clear', INTEGER );
  $ds9->frame( 'delete' );
  $ds9->frame( 'delete', 'all' );
  $ds9->frame( 'delete', INTEGER );
  $ds9->frame( 'deleteall' );
  $ds9->frame( 'first' );
  $ds9->frame( 'frameno', INTEGER );
  $ds9->frame( 'has', 'contour', 'aux' );
  $ds9->frame( 'has', 'fits', ( 'bin' | 'cube' | 'mosaic' ) );
  $ds9->frame( 'has', 'marker', ( 'highlite' | 'paste' | 'select' |
    'undo' ) );

  $ds9->frame( 'has', 'system', FRAME_COORD_SYSTEMS );
  $ds9->frame( 'has', 'wcs', ( 'celestial' | 'linear' ) );
  $ds9->frame( 'has', 'wcs', ( 'celestial' | 'linear' ), WCS system );
  $ds9->frame( 'has', 'wcs', WCS system );
  $ds9->frame( 'has', FRAME_COMPONENTS );
  $ds9->frame( 'hide' );
  $ds9->frame( 'hide', 'all' );
  $ds9->frame( 'hide', INTEGER );
  $ds9->frame( 'last' );
  $ds9->frame( 'lock', 'none' );
  $ds9->frame( 'lock', FRAME_COORD_SYSTEMS );
  $ds9->frame( 'match', FRAME_COORD_SYSTEMS );
  $ds9->frame( 'move', ( 'back' | 'first' | 'forward' | 'last' ) );
  $ds9->frame( 'new' );
  $ds9->frame( 'new', ( '3d' | 'rgb' ) );
  $ds9->frame( 'next' );
  $ds9->frame( 'prev' );
  $ds9->frame( 'refresh' );
  $ds9->frame( 'refresh', 'all' );
  $ds9->frame( 'refresh', INTEGER );
  $ds9->frame( 'reset' );
  $ds9->frame( 'reset', 'all' );
  $ds9->frame( 'reset', INTEGER );
  $ds9->frame( 'show' );
  $ds9->frame( 'show', 'all' );
  $ds9->frame( 'show', INTEGER );

  $ds9->frame( INTEGER );

  [ 'none' ] = $ds9->frame( 'lock' );

  [ ARRAY ] = $ds9->frame( 'active' );
  [ ARRAY ] = $ds9->frame( 'all' );

  [ BOOL ] = $ds9->frame( 'has', 'contour' );
  [ BOOL ] = $ds9->frame( 'has', 'contour', 'aux' );
  [ BOOL ] = $ds9->frame( 'has', 'fits' );
  [ BOOL ] = $ds9->frame( 'has', 'fits', ( 'bin' | 'cube' | 'mosaic' )
    );

  [ BOOL ] = $ds9->frame( 'has', 'marker', ( 'highlite' | 'paste' |
    'select' | 'undo' ) );

  [ BOOL ] = $ds9->frame( 'has', 'system', FRAME_COORD_SYSTEMS );
  [ BOOL ] = $ds9->frame( 'has', 'wcs' );
  [ BOOL ] = $ds9->frame( 'has', 'wcs', ( 'celestial' | 'linear' ) );
  [ BOOL ] = $ds9->frame( 'has', 'wcs', ( 'celestial' | 'linear' ), WCS
    system );

  [ BOOL ] = $ds9->frame( 'has', 'wcs', WCS system );
  [ BOOL ] = $ds9->frame( 'has', FRAME_COMPONENTS );

  [ FRAME_COORD_SYSTEMS ] = $ds9->frame( 'lock' );

  [ INTEGER ] = $ds9->frame( 'frameno' );
  [ INTEGER ] = $ds9->frame;

gif

  $ds9->gif( 'new', <filename>:STRING );
  $ds9->gif( 'new', SCALARREF );

  $ds9->gif( 'slice', <filename>:STRING );
  $ds9->gif( 'slice', SCALARREF );

  $ds9->gif( <filename>:STRING );

  $ds9->gif( SCALARREF );

  [ STRING ] = $ds9->gif;

graph

Not implemented

grid

  $ds9->grid( 'axes', 'color', COLOR );
  $ds9->grid( 'axes', 'dash', BOOL );
  $ds9->grid( 'axes', 'origin', ORIGIN );
  $ds9->grid( 'axes', 'type', ( 'external' | 'internal' ) );
  $ds9->grid( 'axes', 'width', INTEGER );
  $ds9->grid( 'axes', BOOL );

  $ds9->grid( 'border', 'color', COLOR );
  $ds9->grid( 'border', 'dash', BOOL );
  $ds9->grid( 'border', 'width', INTEGER );
  $ds9->grid( 'border', BOOL );

  $ds9->grid( 'close' );

  $ds9->grid( 'format1', STRING );
  $ds9->grid( 'format2', STRING );

  $ds9->grid( 'grid', 'color', COLOR );
  $ds9->grid( 'grid', 'dash', BOOL );
  $ds9->grid( 'grid', 'gap1', FLOAT );
  $ds9->grid( 'grid', 'gap2', FLOAT );
  $ds9->grid( 'grid', 'gap3', FLOAT );
  $ds9->grid( 'grid', 'width', INTEGER );
  $ds9->grid( 'grid', BOOL );

  $ds9->grid( 'labels', 'color', COLOR );
  $ds9->grid( 'labels', 'def1', BOOL );
  $ds9->grid( 'labels', 'def2', BOOL );
  $ds9->grid( 'labels', 'font', ( 'courier' | 'helvetica' | 'times' )
    );

  $ds9->grid( 'labels', 'fontsize', FLOAT );
  $ds9->grid( 'labels', 'fontslant', ( 'italic' | 'roman' ) );
  $ds9->grid( 'labels', 'fontweight', ( 'bold' | 'normal' ) );
  $ds9->grid( 'labels', 'gap1', FLOAT );
  $ds9->grid( 'labels', 'gap2', FLOAT );
  $ds9->grid( 'labels', 'text1', STRING );
  $ds9->grid( 'labels', 'text2', STRING );
  $ds9->grid( 'labels', BOOL );
  $ds9->grid( 'load', <filename>:STRING );

  $ds9->grid( 'numerics', 'color', COLOR );
  $ds9->grid( 'numerics', 'font', ( 'courier' | 'helvetica' | 'times' )
    );

  $ds9->grid( 'numerics', 'fontsize', FLOAT );
  $ds9->grid( 'numerics', 'fontslant', ( 'italic' | 'roman' ) );
  $ds9->grid( 'numerics', 'fontweight', ( 'bold' | 'normal' ) );
  $ds9->grid( 'numerics', 'gap1', FLOAT );
  $ds9->grid( 'numerics', 'gap2', FLOAT );
  $ds9->grid( 'numerics', 'gap3', FLOAT );
  $ds9->grid( 'numerics', 'type', ( 'external' | 'internal' ) );
  $ds9->grid( 'numerics', 'vertical', BOOL );
  $ds9->grid( 'numerics', BOOL );

  $ds9->grid( 'open' );

  $ds9->grid( 'reset' );

  $ds9->grid( 'save', <filename>:STRING );
  $ds9->grid( 'sky', SKYFRAME );
  $ds9->grid( 'skyformat', ( 'degrees' | 'sexagesimal' ) );
  $ds9->grid( 'system', FRAME_COORD_SYSTEMS );

  $ds9->grid( 'tickmarks', 'color', COLOR );
  $ds9->grid( 'tickmarks', 'dash', BOOL );
  $ds9->grid( 'tickmarks', 'width', INTEGER );
  $ds9->grid( 'tickmarks', BOOL );
  $ds9->grid( 'title', 'color', COLOR );
  $ds9->grid( 'title', 'def', BOOL );
  $ds9->grid( 'title', 'font', ( 'courier' | 'helvetica' | 'times' ) );
  $ds9->grid( 'title', 'fontsize', FLOAT );
  $ds9->grid( 'title', 'fontslant', ( 'italic' | 'roman' ) );
  $ds9->grid( 'title', 'fontweight', ( 'bold' | 'normal' ) );
  $ds9->grid( 'title', 'gap', FLOAT );
  $ds9->grid( 'title', 'text', STRING );
  $ds9->grid( 'title', BOOL );
  $ds9->grid( 'type', ( 'analysis' | 'publication' ) );

  $ds9->grid( BOOL );

  [ ( 'degrees' | 'sexagesimal' ) ] = $ds9->grid( 'skyformat' );

  [ <font>:STRING ] = $ds9->grid( 'labels', 'font' );
  [ <font>:STRING ] = $ds9->grid( 'numerics', 'font' );
  [ <font>:STRING ] = $ds9->grid( 'title', 'font' );

  [ <fontslant>:STRING ] = $ds9->grid( 'labels', 'fontslant' );
  [ <fontslant>:STRING ] = $ds9->grid( 'numerics', 'fontslant' );

  [ <fontslants>:STRING ] = $ds9->grid( 'title', 'fontslant' );

  [ <fontweight>:STRING ] = $ds9->grid( 'labels', 'fontweight' );
  [ <fontweight>:STRING ] = $ds9->grid( 'numerics', 'fontweight' );
  [ <fontweight>:STRING ] = $ds9->grid( 'title', 'fontweight' );

  [ <origin>:STRING ] = $ds9->grid( 'axes', 'origin' );

  [ <type>:STRING ] = $ds9->grid( 'axes', 'type' );
  [ <type>:STRING ] = $ds9->grid( 'numerics', 'type' );
  [ <type>:STRING ] = $ds9->grid( 'type' );

  [ BOOL ] = $ds9->grid( 'axes' );
  [ BOOL ] = $ds9->grid( 'axes', 'dash' );
  [ BOOL ] = $ds9->grid( 'border' );
  [ BOOL ] = $ds9->grid( 'border', 'dash' );
  [ BOOL ] = $ds9->grid( 'grid' );
  [ BOOL ] = $ds9->grid( 'grid', 'dash' );
  [ BOOL ] = $ds9->grid( 'labels' );
  [ BOOL ] = $ds9->grid( 'labels', 'def1' );
  [ BOOL ] = $ds9->grid( 'labels', 'def2' );
  [ BOOL ] = $ds9->grid( 'numerics' );
  [ BOOL ] = $ds9->grid( 'numerics', 'vertical' );
  [ BOOL ] = $ds9->grid( 'tickmarks' );
  [ BOOL ] = $ds9->grid( 'tickmarks', 'dash' );
  [ BOOL ] = $ds9->grid( 'title' );
  [ BOOL ] = $ds9->grid( 'title', 'def' );
  [ BOOL ] = $ds9->grid;

  [ COLOR ] = $ds9->grid( 'axes', 'color' );
  [ COLOR ] = $ds9->grid( 'border', 'color' );
  [ COLOR ] = $ds9->grid( 'grid', 'color' );
  [ COLOR ] = $ds9->grid( 'labels', 'color' );
  [ COLOR ] = $ds9->grid( 'numerics', 'color' );
  [ COLOR ] = $ds9->grid( 'tickmarks', 'color' );
  [ COLOR ] = $ds9->grid( 'title', 'color' );

  [ FLOAT ] = $ds9->grid( 'grid', 'gap1' );
  [ FLOAT ] = $ds9->grid( 'grid', 'gap2' );
  [ FLOAT ] = $ds9->grid( 'grid', 'gap3' );
  [ FLOAT ] = $ds9->grid( 'labels', 'fontsize' );
  [ FLOAT ] = $ds9->grid( 'labels', 'gap1' );
  [ FLOAT ] = $ds9->grid( 'labels', 'gap2' );
  [ FLOAT ] = $ds9->grid( 'numerics', 'fontsize' );
  [ FLOAT ] = $ds9->grid( 'numerics', 'gap1' );
  [ FLOAT ] = $ds9->grid( 'numerics', 'gap2' );
  [ FLOAT ] = $ds9->grid( 'numerics', 'gap3' );
  [ FLOAT ] = $ds9->grid( 'title', 'fontsize' );
  [ FLOAT ] = $ds9->grid( 'title', 'gap' );

  [ FRAME_COORD_SYSTEMS ] = $ds9->grid( 'system' );

  [ INTEGER ] = $ds9->grid( 'axes', 'width' );
  [ INTEGER ] = $ds9->grid( 'border', 'width' );
  [ INTEGER ] = $ds9->grid( 'grid', 'width' );
  [ INTEGER ] = $ds9->grid( 'tickmarks', 'width' );

  [ SKYFRAME ] = $ds9->grid( 'sky' );

  [ STRING ] = $ds9->grid( 'format1' );
  [ STRING ] = $ds9->grid( 'format2' );
  [ STRING ] = $ds9->grid( 'labels', 'text1' );
  [ STRING ] = $ds9->grid( 'labels', 'text2' );
  [ STRING ] = $ds9->grid( 'title', 'text' );
  $ds9->header( 'close' );
  $ds9->header( 'close', INTEGER );
  $ds9->header( 'save', <filename>:STRING );
  $ds9->header( 'save', INTEGER, <filename>:STRING );
  $ds9->header( INTEGER );

  $ds9->header;

height

  $ds9->height( INTEGER );

  [ INTEGER ] = $ds9->height;

iconify

  $ds9->iconify( BOOL );

  [ BOOL ] = $ds9->iconify;

iis

Not implemented

illustrate

Not implemented

ixem

Not implemented

jpeg

  $ds9->jpeg( 'new', SCALARREF );
  $ds9->jpeg( 'new', STRING );

  $ds9->jpeg( 'slice', SCALARREF );
  $ds9->jpeg( 'slice', STRING );

  $ds9->jpeg( <filename>:STRING );

  $ds9->jpeg( INTEGER );

  $ds9->jpeg( SCALARREF );

  [ STRING ] = $ds9->jpeg( INTEGER );
  [ STRING ] = $ds9->jpeg;

lock

  $ds9->lock( '3d', BOOL );

  $ds9->lock( 'axes', BOOL );

  $ds9->lock( 'bin', BOOL );
  $ds9->lock( 'block', BOOL );

  $ds9->lock( 'colorbar', BOOL );
  $ds9->lock( 'crop', 'none' );
  $ds9->lock( 'crop', FRAME_COORD_SYSTEMS );
  $ds9->lock( 'crosshair', 'none' );
  $ds9->lock( 'crosshair', FRAME_COORD_SYSTEMS );

  $ds9->lock( 'frame', 'none' );
  $ds9->lock( 'frame', FRAME_COORD_SYSTEMS );

  $ds9->lock( 'scale', BOOL );
  $ds9->lock( 'scalelimits', BOOL );
  $ds9->lock( 'slice', 'none' );
  $ds9->lock( 'slice', FRAME_COORD_SYSTEMS );
  $ds9->lock( 'smooth', BOOL );

  [ BOOL ] = $ds9->lock( '3d' );
  [ BOOL ] = $ds9->lock( 'axes' );
  [ BOOL ] = $ds9->lock( 'bin' );
  [ BOOL ] = $ds9->lock( 'block' );
  [ BOOL ] = $ds9->lock( 'colorbar' );
  [ BOOL ] = $ds9->lock( 'scale' );
  [ BOOL ] = $ds9->lock( 'scalelimits' );
  [ BOOL ] = $ds9->lock( 'smooth' );

  [ FRAME_COORD_SYSTEMS ] = $ds9->lock( 'crop' );
  [ FRAME_COORD_SYSTEMS ] = $ds9->lock( 'crosshair' );
  [ FRAME_COORD_SYSTEMS ] = $ds9->lock( 'frame' );
  [ FRAME_COORD_SYSTEMS ] = $ds9->lock( 'slice' );

lower

  $ds9->lower;

magnifier

Not implemented

mask

  $ds9->mask( 'blend', ( 'darken' | 'lighten' | 'screen' | 'source' )
    );

  $ds9->mask( 'clear' );
  $ds9->mask( 'close' );
  $ds9->mask( 'color', COLOR );

  $ds9->mask( 'load', <filename>:STRING );

  $ds9->mask( 'mark', MARK );

  $ds9->mask( 'open' );

  $ds9->mask( 'range', <low>:FLOAT, <high>:FLOAT );

  $ds9->mask( 'system', FRAME_COORD_SYSTEMS );

  $ds9->mask( 'transparency', FLOAT );

  [ <blend>:STRING ] = $ds9->mask( 'blend' );

  [ <low>:FLOAT, <high>:FLOAT ] = $ds9->mask( 'range' );

  [ <mark>:STRING ] = $ds9->mask( 'mark' );

  [ COLOR ] = $ds9->mask( 'color' );

  [ FLOAT ] = $ds9->mask( 'transparency' );

  [ FRAME_COORD_SYSTEMS ] = $ds9->mask( 'system' );

match

  $ds9->match( '3d' );
  $ds9->match( 'axes' );
  $ds9->match( 'bin' );
  $ds9->match( 'block' );
  $ds9->match( 'colobar' );
  $ds9->match( 'crop', FRAME_COORD_SYSTEMS );
  $ds9->match( 'crosshair', FRAME_COORD_SYSTEMS );
  $ds9->match( 'frame', FRAME_COORD_SYSTEMS );
  $ds9->match( 'scale' );
  $ds9->match( 'scalelimits' );
  $ds9->match( 'slice', FRAME_COORD_SYSTEMS );
  $ds9->match( 'smooth' );

mecube

Not implemented

minmax

  $ds9->minmax( 'interval', INTEGER );
  $ds9->minmax( 'mode', ( 'datamin' | 'irafmin' | 'sample' | 'scan' )
    );

  $ds9->minmax( 'rescan' );
  $ds9->minmax( ( 'datamin' | 'irafmin' | 'sample' | 'scan' ) );

  [ <mode>:STRING ] = $ds9->minmax( 'mode' );
  [ <mode>:STRING ] = $ds9->minmax;

  [ INTEGER ] = $ds9->minmax( 'interval' );

mode

  $ds9->mode( MOUSE_BUTTON_MODES );

  [ <modes>:STRING ] = $ds9->mode;

mosaic

  $ds9->mosaic( <filename>:STRING );
  $ds9->mosaic( ENUM, ( 'mask' | 'new' ), <filename>:STRING );
  $ds9->mosaic( ENUM, <filename>:STRING );
  $ds9->mosaic( SCALARREF );
  $ds9->mosaic( SCALARREF, ENUM );
  $ds9->mosaic( SCALARREF, ENUM, ( 'mask' | 'new' ) );

  [ STRING ] = $ds9->mosaic;

mosaicimage

  $ds9->mosaicimage( <filename>:STRING );
  $ds9->mosaicimage( ENUM, ( 'mask' | 'new' ), <filename>:STRING );
  $ds9->mosaicimage( ENUM, <filename>:STRING );
  $ds9->mosaicimage( SCALARREF );
  $ds9->mosaicimage( SCALARREF, ENUM );
  $ds9->mosaicimage( SCALARREF, ENUM, ( 'mask' | 'new' ) );

movie

Not implemented

multiframe

Not implemented

nameserver

  $ds9->nameserver( 'close' );
  $ds9->nameserver( 'name', STRING );
  $ds9->nameserver( 'open' );
  $ds9->nameserver( 'server', NAMESERVERS );
  $ds9->nameserver( 'skyformat', ( 'degrees' | 'sexagesimal' ) );
  $ds9->nameserver( STRING );

  [ ( 'degrees' | 'sexagesimal' ) ] = $ds9->nameserver( 'skyformat' );

  [ <nameserver>:STRING ] = $ds9->nameserver( 'server' );

  [ STRING ] = $ds9->nameserver( 'name' );
  [ STRING ] = $ds9->nameserver;

notes

Not implemented

nrrd

Not implemented

nvss

Not implemented

orient

  $ds9->orient( 'close' );
  $ds9->orient( 'open' );
  $ds9->orient( ( 'none' | 'x' | 'xy' | 'y' ) );

  [ <orientation>:STRING ] = $ds9->orient;

pagesetup

  $ds9->pagesetup( 'orient', ( 'landscape' | 'portrait' ) );
  $ds9->pagesetup( 'scale', FLOAT );
  $ds9->pagesetup( 'size', PAGE_SIZES );

  [ <orient>:STRING ] = $ds9->pagesetup( 'orient' );

  [ <size>:STRING ] = $ds9->pagesetup( 'size' );

  [ FLOAT ] = $ds9->pagesetup( 'scale' );

pan

  $ds9->pan( 'abs', <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL );

  $ds9->pan( 'abs', <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL, FRAME_COORD_SYSTEMS );

  $ds9->pan( 'abs', <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL, FRAME_COORD_SYSTEMS, ( 'degrees' |
    'sexagesimal' ) );

  $ds9->pan( 'abs', <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL, FRAME_COORD_SYSTEMS, SKYFRAME );

  $ds9->pan( 'abs', <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL, FRAME_COORD_SYSTEMS, SKYFRAME, (
    'degrees' | 'sexagesimal' ) );

  $ds9->pan( 'close' );

  $ds9->pan( 'open' );

  $ds9->pan( 'rel', <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL );

  $ds9->pan( 'rel', <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL, FRAME_COORD_SYSTEMS );

  $ds9->pan( 'rel', <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL, FRAME_COORD_SYSTEMS, ( 'degrees' |
    'sexagesimal' ) );

  $ds9->pan( 'rel', <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL, FRAME_COORD_SYSTEMS, SKYFRAME );

  $ds9->pan( 'rel', <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL, FRAME_COORD_SYSTEMS, SKYFRAME, (
    'degrees' | 'sexagesimal' ) );

  $ds9->pan( 'to', <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL );

  $ds9->pan( 'to', <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL, FRAME_COORD_SYSTEMS );

  $ds9->pan( 'to', <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL, FRAME_COORD_SYSTEMS, ( 'degrees' |
    'sexagesimal' ) );

  $ds9->pan( 'to', <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL, FRAME_COORD_SYSTEMS, SKYFRAME );

  $ds9->pan( 'to', <ra>:DECIMAL_OR_SEXAGESIMAL,
    <dec>:DECIMAL_OR_SEXAGESIMAL, FRAME_COORD_SYSTEMS, SKYFRAME, (
    'degrees' | 'sexagesimal' ) );

  $ds9->pan( <ra>:DECIMAL_OR_SEXAGESIMAL, <dec>:DECIMAL_OR_SEXAGESIMAL
    );

  $ds9->pan( <ra>:DECIMAL_OR_SEXAGESIMAL, <dec>:DECIMAL_OR_SEXAGESIMAL,
    FRAME_COORD_SYSTEMS );

  $ds9->pan( <ra>:DECIMAL_OR_SEXAGESIMAL, <dec>:DECIMAL_OR_SEXAGESIMAL,
    FRAME_COORD_SYSTEMS, ( 'degrees' | 'sexagesimal' ) );

  $ds9->pan( <ra>:DECIMAL_OR_SEXAGESIMAL, <dec>:DECIMAL_OR_SEXAGESIMAL,
    FRAME_COORD_SYSTEMS, SKYFRAME );

  $ds9->pan( <ra>:DECIMAL_OR_SEXAGESIMAL, <dec>:DECIMAL_OR_SEXAGESIMAL,
    FRAME_COORD_SYSTEMS, SKYFRAME, ( 'degrees' | 'sexagesimal' ) );

  $ds9->pan( FRAME_COORD_SYSTEMS );
  $ds9->pan( FRAME_COORD_SYSTEMS, ( 'degrees' | 'sexagesimal' ) );
  $ds9->pan( FRAME_COORD_SYSTEMS, SKYFRAME );
  $ds9->pan( FRAME_COORD_SYSTEMS, SKYFRAME, ( 'degrees' | 'sexagesimal'
    ) );

  $ds9->pan;

  [ STRING, STRING ] = $ds9->pan( FRAME_COORD_SYSTEMS );
  [ STRING, STRING ] = $ds9->pan( FRAME_COORD_SYSTEMS, ( 'degrees' |
    'sexagesimal' ) );

  [ STRING, STRING ] = $ds9->pan( FRAME_COORD_SYSTEMS, SKYFRAME );
  [ STRING, STRING ] = $ds9->pan( FRAME_COORD_SYSTEMS, SKYFRAME, (
    'degrees' | 'sexagesimal' ) );

  [ STRING, STRING ] = $ds9->pan;

pixeltable

  $ds9->pixeltable( ( 'close' | 'open' ) );
  $ds9->pixeltable( BOOL );

  [ ( 'close' | 'open' ) ] = $ds9->pixeltable;

  [ BOOL ] = $ds9->pixeltable;

plot

Not implemented

png

  $ds9->png( 'new', SCALARREF );
  $ds9->png( 'new', STRING );

  $ds9->png( 'slice', SCALARREF );
  $ds9->png( 'slice', STRING );

  $ds9->png( <filename>:STRING );

  $ds9->png( SCALARREF );

  [ STRING ] = $ds9->png;

prefs

Not implemented

preserve

  $ds9->preserve( 'pan', BOOL );
  $ds9->preserve( 'regions', BOOL );

  [ BOOL ] = $ds9->preserve( 'pan' );
  [ BOOL ] = $ds9->preserve( 'regions' );

print

  $ds9->print( 'color', ( 'cmyk' | 'gray' | 'rgb' ) );
  $ds9->print( 'command', STRING );
  $ds9->print( 'destination', ( 'file' | 'printer' ) );
  $ds9->print( 'filename', STRING );
  $ds9->print( 'level', ( '1' | '2' | '3' ) );
  $ds9->print( 'resolution', PRINT_RESOLUTIONS );

  $ds9->print;

  [ <color>:STRING ] = $ds9->print( 'color' );

  [ <destination>:STRING ] = $ds9->print( 'destination' );

  [ <level>:INTEGER ] = $ds9->print( 'level' );

  [ <resolution>:STRING ] = $ds9->print( 'resolution' );

  [ STRING ] = $ds9->print( 'command' );
  [ STRING ] = $ds9->print( 'filename' );

prism

Not implemented

quit

  $ds9->quit;

raise

  $ds9->raise;

region

  $ds9->region( 'color', COLOR );
  $ds9->region( 'deleteall' );
  $ds9->region( 'format', REGION_FORMATS );
  $ds9->region( 'load', <filename>:STRING );
  $ds9->region( 'moveback' );
  $ds9->region( 'movefront' );
  $ds9->region( 'save', <filename>:STRING );
  $ds9->region( 'selectall' );
  $ds9->region( 'selectnone' );
  $ds9->region( 'shape', STRING );
  $ds9->region( 'sky', SKYFRAME );
  $ds9->region( 'skyformat', ( 'degrees' | 'sexagesimal' ) );
  $ds9->region( 'strip', BOOL );
  $ds9->region( 'system', FRAME_COORD_SYSTEMS );
  $ds9->region( 'width', INTEGER );
  $ds9->region( SCALARREF );
  $ds9->region( STRING );

  [ ( 'degrees' | 'sexagesimal' ) ] = $ds9->region( 'skyformat' );

  [ <format>:STRING ] = $ds9->region( 'format' );

  [ BOOL ] = $ds9->region( 'strip' );

  [ COLOR ] = $ds9->region( 'color' );

  [ FRAME_COORD_SYSTEMS ] = $ds9->region( 'system' );

  [ INTEGER ] = $ds9->region( 'width' );

  [ SKYFRAME ] = $ds9->region( 'sky' );

  [ STRING ] = $ds9->region( 'background' );
  [ STRING ] = $ds9->region( 'exclude' );
  [ STRING ] = $ds9->region( 'include' );
  [ STRING ] = $ds9->region( 'selected' );
  [ STRING ] = $ds9->region( 'shape' );
  [ STRING ] = $ds9->region( 'source' );
  [ STRING ] = $ds9->region( ?{ -format => REGION_FORMATS, -system =>
    FRAME_COORD_SYSTEMS, -sky => SKYFRAME, -skyformat => ( 'degrees' |
    'sexagesimal' ), -strip => BOOL, -prop => REGION_PROPERTIES } );

restore

  $ds9->restore( STRING );

rgb

Not implemented

rgbarray

Not implemented

rgbcube

Not implemented

rgbimage

Not implemented

rotate

  $ds9->rotate( 'abs', FLOAT );
  $ds9->rotate( 'close' );
  $ds9->rotate( 'open' );
  $ds9->rotate( 'rel', FLOAT );
  $ds9->rotate( 'to', FLOAT );
  $ds9->rotate( FLOAT );

  [ FLOAT ] = $ds9->rotate;

samp

Not implemented

save

  $ds9->save( 'fits', <filename>:STRING, ( 'image' | 'slice' | 'table'
    ) );

  $ds9->save( 'mecube', <filename>:STRING, ( 'image' | 'slice' |
    'table' ) );

  $ds9->save( 'mosaic', <filename>:STRING, ( 'image' | 'slice' |
    'table' ) );

  $ds9->save( 'mosaicimage', <filename>:STRING, ( 'image' | 'slice' |
    'table' ) );

  $ds9->save( 'mosaicimagewcs', <filename>:STRING, ( 'image' | 'slice'
    | 'table' ) );

  $ds9->save( 'mosaicwcs', <filename>:STRING, ( 'image' | 'slice' |
    'table' ) );

  $ds9->save( 'rgbcube', <filename>:STRING, ( 'image' | 'slice' |
    'table' ) );

  $ds9->save( 'rgbimage', <filename>:STRING, ( 'image' | 'slice' |
    'table' ) );

saveimage

  $ds9->saveimage( '*.jpeg|*.jpg', INTEGER );
  $ds9->saveimage( '*.tiff', 'deflate', 'none', 'packbits', 'jpeg' );
  $ds9->saveimage( 'eps', <filename>:STRING );
  $ds9->saveimage( 'fits', <filename>:STRING );
  $ds9->saveimage( 'gif', <filename>:STRING );
  $ds9->saveimage( 'jpeg', <filename>:STRING );
  $ds9->saveimage( 'png', <filename>:STRING );
  $ds9->saveimage( 'tiff', <filename>:STRING );

scale

  $ds9->scale( 'close' );
  $ds9->scale( 'datasec', BOOL );
  $ds9->scale( 'limits', FLOAT, FLOAT );
  $ds9->scale( 'lock', 'limits', BOOL );
  $ds9->scale( 'lock', BOOL );
  $ds9->scale( 'log', 'exp', FLOAT );
  $ds9->scale( 'match' );
  $ds9->scale( 'match', 'limits' );
  $ds9->scale( 'mode', ( 'minmax' | 'zmax' | 'zscale' ) );
  $ds9->scale( 'mode', FLOAT );
  $ds9->scale( 'open' );
  $ds9->scale( 'scope', ( 'global' | 'local' ) );

  $ds9->scale( SCALE_FUNCTIONS );

  [ <function>:STRING ] = $ds9->scale;

  [ <mode>:STRING ] = $ds9->scale( 'mode' );

  [ <scope>:STRING ] = $ds9->scale( 'scope' );

  [ BOOL ] = $ds9->scale( 'datasec' );
  [ BOOL ] = $ds9->scale( 'lock' );
  [ BOOL ] = $ds9->scale( 'lock', 'limits' );

  [ FLOAT ] = $ds9->scale( 'log', 'exp' );
  [ FLOAT ] = $ds9->scale( 'mode' );

  [ FLOAT, FLOAT ] = $ds9->scale( 'limits' );

shm

Not implemented

sia

Not implemented

single

  $ds9->single;

  [ BOOL ] = $ds9->single( 'state' );

skyview

Not implemented

sleep

  $ds9->sleep( INTEGER );

  $ds9->sleep;

smooth

  $ds9->smooth( 'angle', FLOAT );
  $ds9->smooth( 'close' );
  $ds9->smooth( 'function', ( 'boxcar' | 'gaussian' | 'tophat' ) );
  $ds9->smooth( 'lock', BOOL );
  $ds9->smooth( 'match' );
  $ds9->smooth( 'open' );
  $ds9->smooth( 'radius', INTEGER );
  $ds9->smooth( 'radiusminor', INTEGER );
  $ds9->smooth( 'sigma', FLOAT );
  $ds9->smooth( 'sigmaminor', FLOAT );
  $ds9->smooth( BOOL );

  [ <function>:STRING ] = $ds9->smooth( 'function' );

  [ BOOL ] = $ds9->smooth( 'lock' );
  [ BOOL ] = $ds9->smooth;

  [ FLOAT ] = $ds9->smooth( 'angle' );
  [ FLOAT ] = $ds9->smooth( 'sigma' );
  [ FLOAT ] = $ds9->smooth( 'sigmaminor' );

  [ INTEGER ] = $ds9->smooth( 'radius' );
  [ INTEGER ] = $ds9->smooth( 'radiusminor' );

source

  $ds9->source( STRING );

tcl

  $ds9->tcl( STRING );

threads

  $ds9->threads( INTEGER );

  [ INTEGER ] = $ds9->threads;

threed

Not implemented

tiff

  $ds9->tiff( 'new', SCALARREF );
  $ds9->tiff( 'new', STRING );

  $ds9->tiff( 'slice', SCALARREF );
  $ds9->tiff( 'slice', STRING );

  $ds9->tiff( ( 'deflate' | 'jpeg' | 'none' | 'packbits' ) );

  $ds9->tiff( <filename>:STRING );

  $ds9->tiff( SCALARREF );

  [ ( 'deflate' | 'jpeg' | 'none' | 'packbits' ) ] = $ds9->tiff( (
    'deflate' | 'jpeg' | 'none' | 'packbits' ) );

  [ STRING ] = $ds9->tiff;

tile

  $ds9->tile( 'column' );

  $ds9->tile( 'grid' );
  $ds9->tile( 'grid', 'direction', ( 'x' | 'y' ) );
  $ds9->tile( 'grid', 'gap', INTEGER );
  $ds9->tile( 'grid', 'layout', INTEGER, INTEGER );
  $ds9->tile( 'grid', 'mode', ( 'automatic' | 'manual' ) );

  $ds9->tile( 'mode', ( 'column' | 'grid' | 'row' ) );

  $ds9->tile( 'row' );

  $ds9->tile( BOOL );

  [ ( 'x' | 'y' ) ] = $ds9->tile( 'grid', 'direction' );

  [ <mode>:STRING ] = $ds9->tile( 'grid', 'mode' );
  [ <mode>:STRING ] = $ds9->tile( 'mode' );

  [ BOOL ] = $ds9->tile( 'state' );
  [ BOOL ] = $ds9->tile;

  [ INTEGER ] = $ds9->tile( 'grid', 'gap' );

  [ INTEGER, INTEGER ] = $ds9->tile( 'grid', 'layout' );

two_mass

Not implemented

update

  $ds9->update( 'now' );
  $ds9->update( 'now', INTEGER, FLOAT, FLOAT, FLOAT, FLOAT );
  $ds9->update( INTEGER, FLOAT, FLOAT, FLOAT, FLOAT );

  $ds9->update;

url

  $ds9->url( STRING );

version

  [ STRING ] = $ds9->version;

view

  $ds9->view( 'blue', BOOL );

  $ds9->view( 'graph', 'horizontal', BOOL );
  $ds9->view( 'graph', 'vertical', BOOL );
  $ds9->view( 'green', BOOL );

  $ds9->view( 'keyvalue', STRING );

  $ds9->view( 'layout', VIEW_LAYOUTS );

  $ds9->view( 'red', BOOL );

  $ds9->view( FRAME_COORD_SYSTEMS, BOOL );

  $ds9->view( VIEW_BOOL_COMPONENTS, BOOL );

  [ <layout>:STRING ] = $ds9->view( 'layout' );

  [ BOOL ] = $ds9->view( 'blue' );
  [ BOOL ] = $ds9->view( 'graph', 'horizontal' );
  [ BOOL ] = $ds9->view( 'graph', 'vertical' );
  [ BOOL ] = $ds9->view( 'green' );
  [ BOOL ] = $ds9->view( 'red' );
  [ BOOL ] = $ds9->view( FRAME_COORD_SYSTEMS );
  [ BOOL ] = $ds9->view( VIEW_BOOL_COMPONENTS );

  [ STRING ] = $ds9->view( 'keyvalue' );

vla

Not implemented

vlss

Not implemented

vo

Not implemented

wcs

  $ds9->wcs( 'align', BOOL );

  $ds9->wcs( 'append', WCS_ARRAY );
  $ds9->wcs( 'append', WCS_HASH );
  $ds9->wcs( 'append', WCS_SCALARREF );

  $ds9->wcs( 'close' );

  $ds9->wcs( 'load', <filename>:STRING );

  $ds9->wcs( 'open' );

  $ds9->wcs( 'replace', WCS_ARRAY );
  $ds9->wcs( 'replace', WCS_HASH );
  $ds9->wcs( 'replace', WCS_SCALARREF );
  $ds9->wcs( 'reset' );

  $ds9->wcs( 'save', <filename>:STRING );
  $ds9->wcs( 'save', INTEGER, <filename>:STRING );

  $ds9->wcs( 'sky', SKYFRAME );
  $ds9->wcs( 'skyformat', ( 'degrees' | 'sexagesimal' ) );

  $ds9->wcs( 'system', WCS system );

  $ds9->wcs( WCS system );

  [ ( 'degrees' | 'sexagesimal' ) ] = $ds9->wcs( 'skyformat' );

  [ BOOL ] = $ds9->wcs( 'align' );

  [ SKYFRAME ] = $ds9->wcs( 'sky' );

  [ WCS system ] = $ds9->wcs( 'system' );
  [ WCS system ] = $ds9->wcs;

web

  $ds9->web( 'STRING', 'clear' );
  $ds9->web( 'STRING', 'click', ( 'back' | 'forward' | 'reload' |
    'stop' ) );

  $ds9->web( 'STRING', 'click', INTEGER );
  $ds9->web( 'STRING', 'close' );

  $ds9->web( 'new', STRING, STRING );

  $ds9->web( STRING );

  [ STRING ] = $ds9->web;

width

  $ds9->width( INTEGER );

  [ INTEGER ] = $ds9->width;

xpa

  $ds9->xpa( 'disconnect' );

  $ds9->xpa( BOOL_FALSE );

  [ STRING ] = $ds9->xpa( 'info' );

zoom

  # alias for 'to fit'

  $ds9->zoom( '0' );

  $ds9->zoom( 'abs', FLOAT );

  $ds9->zoom( 'in' );

  $ds9->zoom( 'out' );

  $ds9->zoom( 'rel', FLOAT );

  $ds9->zoom( 'to', 'fit' );
  $ds9->zoom( 'to', FLOAT );

  # alias for 'to fit'

  $ds9->zoom( 'tofit' );

  $ds9->zoom( FLOAT );

  [ FLOAT ] = $ds9->zoom;

zscale

  $ds9->zscale( 'contrast', FLOAT );
  $ds9->zscale( 'line', INTEGER );
  $ds9->zscale( 'sample', INTEGER );

  $ds9->zscale;

  [ FLOAT ] = $ds9->zscale( 'contrast' );

  [ INTEGER ] = $ds9->zscale( 'line' );
  [ INTEGER ] = $ds9->zscale( 'sample' );

SUPPORT

Bugs

Please report any bugs or feature requests to bug-image-ds9@rt.cpan.org or through the web interface at: https://rt.cpan.org/Public/Dist/Display.html?Name=Image-DS9

Source

Source is available at

  https://gitlab.com/djerius/image-ds9

and may be cloned from

  https://gitlab.com/djerius/image-ds9.git

SEE ALSO

Please see those modules/websites for more information related to this module.

AUTHOR

Diab Jerius <djerius@cpan.org>

COPYRIGHT AND LICENSE

This software is Copyright (c) 2017 by Smithsonian Astrophysical Observatory.

This is free software, licensed under:

  The GNU General Public License, Version 3, June 2007