The size and extent of the surface may be obtained from a template NDF or given explicitly.
Elements in the new NDF outside the defined range of the polynomial or spline will be set to bad values.
!). The suggested defaults are the lower bounds of the IN NDF.
!) is given, the label, units, axis labels, and axis units are taken from the IN NDF. The task prompts for the data type and bounds, using those of the IN NDF as defaults, and the axis ranges.
!) is given, the title will be propagated either from LIKE, or from IN if LIKE=
!). It must be one of the following:
"_UBYTE". The suggested default is the data type of the data array in the IN NDF.
!). The suggested defaults are the upper bounds of the IN NDF.
TRUE, a uniform variance array equated to the mean squared residual of the fit is created in the output NDF, provided the SURFACEFIT structure contains the RMS component.
!). The suggested defaults are respectively the minimum and maximum x co-ordinates of the IN NDF.
!). The suggested defaults are respectively the minimum and maximum y co-ordinates of the IN NDF.
"Data"and either or both of the axes are inverted (values decrease with increasing pixel index), the output image will be correctly oriented.
The polynomial surface fit is stored in SURFACEFIT extension, component FIT of type POLYNOMIAL, variant CHEBYSHEV or BSPLINE. This extension is created by FITSURFACE. Also read from the SURFACEFIT extension is the co-ordinate system (component COSYS), and the fit RMS (component RMS).
"Axis" and the original NDF had an axis that decreased
with increasing pixel index, you may want to flip the co-ordinate limits (via
Parameters XLIMIT or YLIMIT) to match the original sense of the axis, otherwise the
created surface will be flipped with respect to the image from which it was fitted.
This routine correctly processes the AXIS, DATA, QUALITY, VARIANCE, LABEL, TITLE, UNITS, WCS, and HISTORY components of an NDF data structure and propagates all extensions. However, neither QUALITY nor a SURFACEFIT extension is propagated when LIKE is not null.
All non-complex numeric data types can be handled. Processing is performed in single- or double-precision floating point, as appropriate.