Copies polygonal segments from one NDF into another
!
) in which case the corresponding areas of the output NDF
are filled with bad values. For instance, supplying a null value for IN2 allows
segments to be cut from IN1 and pasted on to a background of bad values. Supplying a
null value for IN1 allows ‘holes’ to be cut out of IN2 and filled with bad
values.
Each polygonal segment is specified by giving the positions of its vertices. This may be done using a graphics cursor, by supplying a positions list or text file containing the positions, or by supplying the positions in response to a parameter prompt. The choice is made by Parameter MODE.
This application may also be used to cut and paste cylinders with polygonal cross-sections from NDFs with more than two dimensions. See the “Notes” section below for further details.
"Interface"
, this
parameter is accessed repeatedly to obtain the co-ordinates of all vertices in the
polygon. A null value should be given when the final vertex has been specified. Each
position should be supplied within the current co-ordinate Frame of the output NDF
(see Parameter OUT). Supplying a colon ":"
will display details of the required
co-ordinate Frame. No more than two formatted axis values (separated by a comma or
space) may be supplied. If the co-ordinate Frame being used has more than two axes,
then the two axes to use must be specified using Parameter USEAXIS. "Cursor"
. Any graphics specified by
Parameter PLOT will be produced on this device. This device must support cursor
interaction. [
current graphics device]
"Catalogue"
, each of the Parameters
INCAT1 to INCAT20 are used to access catalogues containing the co-ordinates of the
vertices of a single polygon. Suitable catalogues may be created using CURSOR,
LISTMAKE, etc. If a value is assigned to INCAT1 on the command line, you are
not prompted for any of the remaining parameters in this group; additional
polygon catalogues must also be supplied on the command line. Otherwise, you are
prompted for INCAT1, then INCAT2, etc. until a null value is given or INCAT20 is
reached.
The positions in each catalogue are mapped into the pixel co-ordinate Frame of the output NDF by aligning the WCS information stored in the catalogue with the WCS information in the output NDF. A message indicating the Frame in which the positions were aligned with the output NDF is displayed.
!
) means that no file is created. [!]
"Chain"
or "Mark"
. It specifies the type of marker with which each
cursor position should be marked, and should be given as an integer PGPLOT marker
type. For instance, 0
gives a box, 1
gives a dot, 2
gives a cross, 3
gives
an asterisk, 7
gives a triangle. The value must be larger than or equal to
−31.
[
current value]
"Interface"
–- positions are obtained using Parameter COORDS. These positions must be
supplied in the current co-ordinate Frame of the output NDF (see Parameter
OUT).
"Cursor"
–- positions are obtained using the graphics cursor of the device specified by
Parameter DEVICE. The WCS information stored with the picture in the graphics database
is used to map the supplied cursor positions into the pixel co-ordinate Frame of the
output NDF. A message is displayed indicating the co-ordinate Frame in which the
picture and the output NDF were aligned.
"Catalogue"
–- positions are obtained from positions lists using Parameters INCAT1
to INCAT20. Each catalogue defines a single polygon. The WCS information in
each catalogue is used to map the positions in the catalogue into the pixel
co-ordinate Frame of the output NDF. A message is displayed for each catalogue
indicating the co-ordinate Frame in which the catalogue and the output NDF were
aligned.
"File"
–- positions are obtained from text files using Parameters POLY1 to POLY20. Each
file defines a single polygon. Each line in a file must contain two formatted axis
values in the current co-ordinate Frame of the output NDF (see Parameter OUT),
separated by white space or a comma.
[
current value]
1
to ensure that no more than one polygon is
used (this sort of thing can be useful when writing procedures or scripts). A null
value causes no limit to be imposed (unless MODE="File"
or "Catalogue"
in which case a
limit of 20 is imposed). [!]
2
to ensure that at least
two polygons are used. The supplied value must be fewer than or equal to the value
given for MAXPOLY and must be greater than zero. [1]
"File"
or "Interface"
) is inherited from the input NDF. If two
input NDFs are supplied, then the shape and size of the output NDF corresponds
to the area of overlap between the two input NDFs (in pixel space), and the
WCS information and current Frame are inherited from the NDF associated with
Parameter IN1. "Cursor"
. The appearance of these graphics (colour, size,
etc.) is controlled by the STYLE parameter. PLOT can take any of the following
values.
"None"
–- No graphics are produced.
"Mark"
–- Each position is marked with a marker of type specified by Parameter
MARKER.
"Poly"
–- Causes each position to be joined by a line to the previous position. Each
polygon is closed by joining the last position to the first.
"Chain"
–- This is a combination of "Mark"
and "Poly"
. Each position is marked by a
marker and joined by a line to the previous position. Parameter MARKER is used to
specify the marker to use. [
current value]
"File"
, each of the Parameters POLY1 to POLY20 are used to access text files
containing the co-ordinates of the vertices of a single polygon. If a value is assigned
to POLY1 on the command line, you are not prompted for any of the remaining parameters
in this group; additional polygon files must also be supplied on the command line.
Otherwise, you are prompted for POLY1, then POLY2, etc. until a null value is given or
POLY20 is reached.
Each position should be supplied within the current co-ordinate Frame of the output NDF (see Parameter OUT). No more than two formatted axis values (separated by a comma or space) may be supplied on each line. If the co-ordinate Frame being used has more than two axes, then the two axes to use must be specified using Parameter USEAXIS.
TRUE
value is supplied for Parameter QUALITY then
quality information is copied from the input NDFs to the output NDFs. Otherwise, the
quality information is not copied. This parameter is only accessed if all supplied
input NDFs have defined QUALITY components. If any of the supplied input NDFs
do not have defined QUALITY components, then no quality is copied. Note, if
a null input NDF is given then the corresponding output QUALITY values are
set to zero. [TRUE]
A comma-separated list of strings should be given in which each string is either an
attribute setting, or the name of a text file preceded by an up-arrow character
"
.
Such text files should contain further comma-separated lists which will be read and
interpreted in the same manner. Attribute settings are applied in the order in which
they occur within the list, with later settings overriding any earlier settings given
for the same attribute.
"
Each individual attribute setting should be of the form:
<name>=<value>
where <name>
is the name of a plotting attribute, and
<value>
is the value to assign to the attribute. Default values will be used for any
unspecified attributes. All attributes will be defaulted if a null value (!
)–-the
initial default–-is supplied. To apply changes of style to only the current invocation,
begin these attributes with a plus sign. A mixture of persistent and temporary style
changes is achieved by listing all the persistent attributes followed by a plus sign
then the list of temporary attributes.
See Section E for a description of the available attributes. Any unrecognised attributes are ignored (no error is reported).
The appearance of the lines forming the edges of each polygon is controlled by the
attributes Colour(Curves), Width(Curves), etc. (either of the synonyms Lines and Edges may
be used in place of Curves). The appearance of the vertex markers is controlled by the
attributes Colour(Markers), Size(Markers), etc. (the synonyms Vertices may be used in place
of Markers). [
current value]
An integer index of an axis within the current Frame of the output NDF (in the range 1 to the number of axes in the current Frame).
An axis Symbol string such as "RA"
or "VRAD"
.
A generic option where "SPEC"
requests the spectral axis, "TIME"
selects the time axis,
"SKYLON"
and "SKYLAT"
picks the sky longitude and latitude axes respectively. Only
those axis domains present are available as options.
A list of acceptable values is displayed if an illegal value is supplied. If a null (!
)
value is supplied, the axes with the same indices as the first two significant
NDF pixel axes are used. [!]
TRUE
value
is supplied for Parameter VARIANCE then variance information is copied from
the input NDFs to the output NDFs. Otherwise, the variance information is not
copied. This parameter is only accessed if all supplied input NDFs have defined
VARIANCE components. If any of the supplied input NDFs do not have defined
VARIANCE components, then no variances are copied. Note, if a null input NDF is
given then the corresponding output variance values are set bad. [TRUE]
coords.FIT
. All pixels in the output NDF which fall outside this region
are given the corresponding pixel values from NDF m51b. Supplied positions are mapped into the pixel co-ordinate Frame of the output NDF before being used. This means that the two input NDFs (if supplied) must be aligned in pixel space before using this application.
The routine can handle NDFs of arbitrary dimensionality. If either input has three or more dimensions then all planes in the NDF pixel arrays are processed in the same way, that is the same polygonal regions are extracted from each plane and copied to the corresponding plane of the output NDF. The plane containing the polygons must be defined using Parameter USEAXIS. This plane is a plane within the current co-ordinate Frame of the output NDF (which is inherited from the first supplied input NDF). This scheme will only work correctly if the selected plane in the current co-ordinate Frame is parallel to one of the planes of the pixel array.
This routine will propagate VARIANCE component values so long as all supplied
input NDFs have defined VARIANCE components, and Parameter VARIANCE is not
FALSE
.
This routine will propagate QUALITY component values so long as all supplied input
NDFs have defined QUALITY components, and Parameter QUALITY is not FALSE
.
The UNITS, AXIS, LABEL, TITLE, WCS, and HISTORY components are propagated from the first supplied input NDF, together with all extensions.
All non-complex numeric types are supported. The following data types are processed directly: _WORD, _INTEGER, _REAL, _DOUBLE.