- ←Prev
- KAPLIBS – Internal subroutines used within the KAPPA package.
- Next→
- TOC ↑
Description:
This routine
expands an input array by pixel duplication along each dimension. The duplication factors may be
different for each dimension.
Invocation
CALL KPG1_PXDPx( IDIMS, INARR, EXPAND, USEMSK,
MASK, ODIMS, OUTARR, STATUS )
Arguments
IDIMS( NDF__MXDIM ) = INTEGER (Given)
The
dimensions of the input array. Unused dimensions up to NDF__MXDIM should be set to one.
INARR(
) = ?
(Given)
The input data array that is to be enlarged by duplication.
EXPAND( NDF__MXDIM
) = INTEGER (Given)
The linear expansion factor applied along each dimension.
Factors for unused dimensions up to NDF__MXDIM should be set to one.
USEMSK =
LOGICAL (Given)
Should the mask array supplied by argument MASK be used?
MASK(
) =
REAL (Given)
Only accessed if USEMSK is .TRUE. The MASK array corresponds to a single
expansion block in the output array, and so should have a size equal to the product of the
values supplied in the EXPAND argument. If USEMSK is .TRUE., the value stored for
each output pixel equals the product of the input pixel which is being duplicated, and
the corresponding mask pixel (that is, the mask pixel that is at the same position as the
output position is within its current block of output pixels). If USEMSK is .FALSE. each
output pixel value is simply equal to the input pixel value that is being duplicated. This is
equivalent to using a mask that is filled with the value 1.0. The supplied mask array may
contain VAL__BADR values in which case the corresponding output pixel will be set to
VAL__BADT.
ODIMS( NDF__MXDIM ) = INTEGER (Given)
The dimensions of the expanded
array. Unused dimensions up to NDF__MXDIM should be set to one.
OUTARR(
) = ?
(Returned)
The expanded array.
STATUS = INTEGER (Given and Returned)
Global status value
Notes:
-
This routine works in n-D, where n is 1 to 7. Even if the array has actually less dimensions there is
negligible loss of efficiency to supply dummy (=1) higher dimensions.
-
There is a routine for each numeric data type: replace "
x"
in the routine name by D, R, I, W, UW, B or
UB as appropriate. The base and paste arrays supplied to the routine must have the data type
specified.
- ←Prev
- KAPLIBS – Internal subroutines used within the KAPPA package.
- Next→
- TOC ↑