Class WcsData
Representations of the mapping between image coordinates and physical(i.e., world) coordinate systems(WCSs) may be repre- sented within FITS HDUs.
Rather than store world coordinates separately for each datum, the regular lattice structure of a FITS image offers the possibil- ity of defining rules for computing world coordinates at each point.As stated in Sect. 3.3.2 and depicted in Fig. 1, image ar- ray data are addressed via integral array indices that range in value from 1 to NAXISj on Axis j.Recognizing that image data values may have an extent, for example an angular separation, spectral channel width or time span, and thus that it may make sense to interpolate between them, these integral array indices may be generalized to floating-point pixel coordinates. Integral pixel-coordinate values coincide with the corresponding array indices, while fractional pixel-coordinate values lie between ar- ray indices and thus imply interpolation.Pixel-coordinate val- ues are defined at all points within the image lattice and outside it (except along conventional axes, see Sect. 8.5). They form the basis of the world-coordinate formalism in FITS depicted schematically in Fig. 2.
public class WcsData
- Inheritance
-
WcsData
- Inherited Members
Constructors
WcsData()
public WcsData()
Properties
CD
CDi j – [floating point; defaults: 0.0, but see below]. Linear
transformation matrix(with scale) between Pixel Axes j
and Intermediate-coordinate Axes i.This nomenclature is
equivalent to PCi j when CDELTi is unity. The CDi j matrix
must not be singular.Note that the CDi j formalism is an ex-
clusive alternative to PCi j, and the CDi j and PCi j keywords
must not appear together within an HDU.
In addition to the restrictions noted above, if any CDi j keywords
are present in the HDU, all other unspecified CDi j keywords
shall default to zero.If no CDi j keywords are present then the
header shall be interpreted as being in PCi j form whether or not
any PCi j keywords are actually present in the HDU.
Some non-linear algorithms that describe the transformation
between pixel and intermediate-coordinate axes require param-
eter values. A few non-linear algorithms also require character-
valued parameters, e.g., table lookups require the names of the
table extension and the columns to be used.Where necessary
parameter values must be specified via the following keywords.
public List<List<double>> CD { get; }
Property Value
CRDER
CRDERi – [floating point; default: 0.0]. Random error in
Coordinate i, which must be non-negative.
While not essential for a complete
specification of an image WCS, can be extremely useful for read-
ers to interpret the accuracy of the WCS representation of the
image.
These values should give a representative average value of the
error over the range of the coordinate in the HDU.The total error
in the coordinates would be given by summing the individual
errors in quadrature.
public List<double> CRDER { get; }
Property Value
CROTA
CROTAi – [floating point; indexed; default: 0.0]. The amount of rotation from the standard coordinate system to a different coordinate system.Further use of this of this keyword is dep- recated, in favor of the newer formalisms that use the CDi j or PCi j keywords to define the rotation.
public List<double> CROTA { get; }
Property Value
CRPIX
CRPIXj – [floating point; indexed; default: 0.0]. Location of the reference point in the image for Axis j corresponding to r j in Eq. (9). Note that the reference point may lie outside the image and that the first pixel in the image has pixel coordi- nates(1.0, 1.0, . . .).
public List<double> CRPIX { get; }
Property Value
CRVAL
CRVALi – [floating point; indexed; default: 0.0]. World- coordinate value at the reference point of Axis i.
public List<double> CRVAL { get; }
Property Value
CSYER
CSYERi – [floating point; default: 0.0]. Systematic error in
Coordinate i, which must be non-negative.
While not essential for a complete
specification of an image WCS, can be extremely useful for read-
ers to interpret the accuracy of the WCS representation of the
image.
These values should give a representative average value of the
error over the range of the coordinate in the HDU.The total error
in the coordinates would be given by summing the individual
errors in quadrature.
public List<double> CSYER { get; }
Property Value
CTYPE
CTYPEi – [string; indexed; default: ' ' (i.e. a linear, undefined axis)]. Type for the Intermediate-coordinate Axis i.Any co- ordinate type that is not covered by this Standard or an offi- cially recognized FITS convention shall be taken to be linear. All non-linear coordinate system names must be expressed in ‘4–3’ form: the first four characters specify the coordinate type, the fifth character is a hyphen (‘-’), and the remain- ing three characters specify an algorithm code for computing the world coordinate value. Coordinate types with names of fewer than four characters are padded on the right with hy- phens, and algorithm codes with fewer than three charac- ters are padded on the right with blanks11. Algorithm codes should be three characters
public List<string> CTYPE { get; }
Property Value
CUNIT
CUNITi – [string; indexed; default: ' ' (i.e., undefined)]. Physical units of CRVAL and CDELT for Axis i.Note that units should always be specified (see Sect. 4.3). Units for celestial coordinate systems defined in this Standard must be degrees.
public List<string> CUNIT { get; }
Property Value
PC
PCi j – [floating point; defaults: 1.0 when i = j, 0.0 oth- erwise]. Linear transformation matrix between Pixel Axes j and Intermediate-coordinate Axes i.The PCi j matrix must not be singular.
public List<List<double>> PC { get; }
Property Value
PS
PSi m – [string]. Character-valued parameters for Intermediate- world-coordinate Axis i, where m is the parameter number. Leading zeros must not be used, and m may have only val- ues in the range 0 through 99, and that are defined for the particular non-linear algorithm.
public List<List<string>> PS { get; }
Property Value
PV
PVi m – [floating point]. Numeric parameter values for Intermediate-world-coordinate Axis i, where m is the param- eter number.Leading zeros must not be used, and m may have only values in the range 0 through 99, and that are de- fined for the particular non-linear algorithm.
public List<List<double>> PV { get; }
Property Value
WCSAXES
WCSAXES – [integer; default: NAXIS, or larger of WCS indices i or j]. Number of axes in the WCS description.This keyword, if present, must precede all WCS keywords except NAXIS in the HDU.The value of WCSAXES may exceed the number of pixel axes for the HDU.
public int WCSAXES { get; set; }
Property Value
Methods
Equals(object?)
Returns true if all WCS fields are equal.
public override bool Equals(object? obj)
Parameters
objobjectObject to check equality.
Returns
- bool
True if all WCS fields are equal.
GetHashCode()
Combines all hashcodes for all WCS properties.
public override int GetHashCode()
Returns
ToString()
Prints a human-readable representation of the WCS data.
public override string ToString()
Returns
Update(FitsHeaderEntry)
Checks the provided header entry and updates the relevant WCS property if applicable.
public void Update(FitsHeaderEntry headerEntry)
Parameters
headerEntryFitsHeaderEntry