GammaLib
2.1.0.dev
|
Abstract world coordinate system base class. More...
#include <GWcs.hpp>
Public Member Functions | |
GWcs (void) | |
Void constructor. More... | |
GWcs (const std::string &coords, const double &crval1, const double &crval2, const double &crpix1, const double &crpix2, const double &cdelt1, const double &cdelt2) | |
Standard WCS sky map constructor. More... | |
GWcs (const GFitsHDU &hdu) | |
Construct from FITS HDU table. More... | |
GWcs (const GWcs &wcs) | |
Copy constructor. More... | |
virtual | ~GWcs (void) |
Destructor. More... | |
virtual GWcs & | operator= (const GWcs &wcs) |
Assignment operator. More... | |
virtual void | clear (void)=0 |
Clear object. More... | |
virtual GWcs * | clone (void) const =0 |
Clones object. More... | |
virtual std::string | classname (void) const =0 |
Return class name. More... | |
virtual std::string | code (void) const =0 |
virtual std::string | name (void) const =0 |
virtual std::string | print (const GChatter &chatter=NORMAL) const =0 |
Print content of object. More... | |
virtual int | size (void) const |
Return dimension of projection. More... | |
virtual void | read (const GFitsHDU &hdu) |
Read WCS definition from FITS header. More... | |
virtual void | write (GFitsHDU &hdu) const |
Write WCS definition into FITS HDU header. More... | |
virtual double | solidangle (const GSkyPixel &pixel) const |
Returns solid angle of pixel in units of steradians. More... | |
virtual GSkyDir | pix2dir (const GSkyPixel &pixel) const |
Returns sky direction of sky map pixel. More... | |
virtual GSkyPixel | dir2pix (const GSkyDir &dir) const |
Returns sky map pixel of sky direction. More... | |
void | set (const std::string &coords, const double &crval1, const double &crval2, const double &crpix1, const double &crpix2, const double &cdelt1, const double &cdelt2) |
Set World Coordinate System parameters. More... | |
double | crval (const int &inx) const |
Return value of reference pixel. More... | |
double | crpix (const int &inx) const |
Return reference pixel. More... | |
double | cdelt (const int &inx) const |
Return pixel size. More... | |
Public Member Functions inherited from GSkyProjection | |
GSkyProjection (void) | |
Void constructor. More... | |
GSkyProjection (const GSkyProjection &proj) | |
Copy constructor. More... | |
virtual | ~GSkyProjection (void) |
Destructor. More... | |
virtual GSkyProjection & | operator= (const GSkyProjection &proj) |
Assignment operator. More... | |
virtual std::string | coordsys (void) const |
Returns coordinate system. More... | |
virtual void | coordsys (const std::string &coordsys) |
Set coordinate system. More... | |
Public Member Functions inherited from GBase | |
virtual | ~GBase (void) |
Destructor. More... | |
Protected Member Functions | |
void | init_members (void) |
Initialise class members. More... | |
void | copy_members (const GWcs &wcs) |
Copy class members. More... | |
void | free_members (void) |
Delete class members. More... | |
void | set_members (const std::string &coords, const double &crval1, const double &crval2, const double &crpix1, const double &crpix2, const double &cdelt1, const double &cdelt2) |
Set World Coordinate System parameters. More... | |
virtual bool | compare (const GSkyProjection &proj) const |
Compares sky projection. More... | |
bool | undefined (const double &value) const |
Check if value is undefined. More... | |
void | wcs_ini (int naxis) |
Initialise World Coordinate System. More... | |
void | wcs_set (void) const |
Setup of World Coordinate System. More... | |
void | wcs_set_radesys (void) const |
Set radesys and equinox members. More... | |
void | wcs_set_ctype (void) const |
Set CTYPEa keywords. More... | |
void | wcs_p2s (int ncoord, int nelem, const double *pixcrd, double *imgcrd, double *phi, double *theta, double *world, int *stat) const |
Pixel-to-world transformation. More... | |
void | wcs_s2p (int ncoord, int nelem, const double *world, double *phi, double *theta, double *imgcrd, double *pixcrd, int *stat) const |
World-to-pixel transformation. More... | |
std::string | wcs_print (const GChatter &chatter=NORMAL) const |
Print WCS information. More... | |
std::string | wcs_print_value (const double &value) const |
Helper function for value printing. More... | |
void | cel_ini (void) const |
Initialise celestial transformation parameters. More... | |
void | cel_set (void) const |
Setup of celestial transformation. More... | |
void | cel_x2s (int nx, int ny, int sxy, int sll, const double *x, const double *y, double *phi, double *theta, double *lng, double *lat, int *stat) const |
Pixel-to-world celestial transformation. More... | |
void | cel_s2x (int nlng, int nlat, int sll, int sxy, const double *lng, const double *lat, double *phi, double *theta, double *x, double *y, int *stat) const |
World-to-pixel celestial transformation. More... | |
void | sph_x2s (int nphi, int ntheta, int spt, int sll, const double *phi, const double *theta, double *lng, double *lat) const |
Rotation in the pixel-to-world direction. More... | |
void | sph_s2x (int nlng, int nlat, int sll, int spt, const double *lng, const double *lat, double *phi, double *theta) const |
Rotation in the pixel-to-world direction. More... | |
void | spc_ini (void) |
Initialise spectral transformation parameters. More... | |
void | lin_ini (int naxis) |
Initialise linear transformation parameters. More... | |
void | lin_set (void) const |
Initialise linear transformation parameters. More... | |
void | lin_p2x (int ncoord, int nelem, const double *pixcrd, double *imgcrd) const |
Pixel-to-world linear transformation. More... | |
void | lin_x2p (int ncoord, int nelem, const double *imgcrd, double *pixcrd) const |
World-to-pixel linear transformation. More... | |
void | lin_matinv (const std::vector< double > &mat, std::vector< double > &inv) const |
Invert linear transformation matrix. More... | |
void | prj_ini (void) const |
Initialise projection parameters. More... | |
void | prj_off (const double &phi0, const double &theta0) const |
Compute fiducial offset to force (x,y) = (0,0) at (phi0,theta0) More... | |
int | prj_bchk (const double &tol, const int &nphi, const int &ntheta, const int &spt, double *phi, double *theta, int *stat) const |
Performs bounds checking on native spherical coordinates. More... | |
virtual void | prj_set (void) const =0 |
virtual void | prj_x2s (int nx, int ny, int sxy, int spt, const double *x, const double *y, double *phi, double *theta, int *stat) const =0 |
virtual void | prj_s2x (int nphi, int ntheta, int spt, int sxy, const double *phi, const double *theta, double *x, double *y, int *stat) const =0 |
void | init_lock (const int &lock_id=0) const |
Initializes an OpenMP lock with a specific name. More... | |
void | set_lock (const int &lock_id=0) const |
Sets an OpenMP lock with a specific name. More... | |
void | unset_lock (const int &lock_id=0) const |
Releases a previously set OpenMP lock. More... | |
Protected Member Functions inherited from GSkyProjection | |
void | init_members (void) |
Initialise class members. More... | |
void | copy_members (const GSkyProjection &proj) |
Copy class members. More... | |
void | free_members (void) |
Delete class members. More... | |
Protected Attributes | |
bool | m_wcsset |
WCS information is set. More... | |
int | m_naxis |
Number of axes. More... | |
std::vector< double > | m_crval |
CRVALia keyvalues for each coord axis. More... | |
std::vector< std::string > | m_cunit |
CUNITia keyvalues for each coord axis. More... | |
std::vector< std::string > | m_ctype |
CTYPEia keyvalues for each coord axis. More... | |
std::vector< std::string > | m_ctype_c |
CTYPEia comments for each coord axis. More... | |
double | m_lonpole |
LONPOLEa keyvalue. More... | |
double | m_latpole |
LATPOLEa keyvalue. More... | |
double | m_restfrq |
RESTFRQa keyvalue. More... | |
double | m_restwav |
RESTWAVa keyvalue. More... | |
std::string | m_radesys |
RADESYS keyvalue. More... | |
double | m_equinox |
EQUINOX keyvalue. More... | |
std::vector< double > | m_cd |
CDi_ja linear transformation matrix. More... | |
std::vector< double > | m_crota |
CROTAia keyvalues for each coord axis. More... | |
int | m_lng |
Longitude axis. More... | |
int | m_lat |
Latitude axis. More... | |
int | m_spec |
Spectral axis. More... | |
bool | m_linset |
Linear transformation is set. More... | |
bool | m_unity |
Signals unity PC matrix. More... | |
std::vector< double > | m_crpix |
CRPIXja keyvalues for each pixel axis. More... | |
std::vector< double > | m_pc |
PCi_ja linear transformation matrix. More... | |
std::vector< double > | m_cdelt |
CDELTia keyvalues for each coord axis. More... | |
std::vector< double > | m_piximg |
Pixel to image transformation matrix. More... | |
std::vector< double > | m_imgpix |
Image to pixel transformation matrix. More... | |
bool | m_celset |
Celestial transformation is set. More... | |
bool | m_offset |
Force (x,y) = (0,0) at (phi_0,theta_0) More... | |
double | m_phi0 |
Native azimuth angle of fiducial point. More... | |
double | m_theta0 |
Native zenith angle of fiducial point. More... | |
double | m_ref [4] |
Celestial coordinates of fiducial. More... | |
double | m_euler [5] |
Euler angles and functions thereof. More... | |
int | m_latpreq |
LATPOLEa requirement. More... | |
bool | m_isolat |
True if |latitude| is preserved. More... | |
bool | m_prjset |
Projection is set. More... | |
double | m_r0 |
Radius of the generating sphere. More... | |
double | m_pv [PVN] |
Projection parameters. More... | |
bool | m_bounds |
Enable strict bounds checking. More... | |
double | m_x0 |
Fiducial x offset. More... | |
double | m_y0 |
Fiducial y offset. More... | |
std::vector< double > | m_w |
Intermediate values. More... | |
bool | m_has_pix2dir_cache |
Has valid pix2dir cache value. More... | |
bool | m_has_dir2pix_cache |
Has valid dir2pix cache value. More... | |
GSkyDir | m_last_pix2dir_dir |
Last sky direction for pix2dir. More... | |
GSkyDir | m_last_dir2pix_dir |
Last sky direction for dir2pix. More... | |
GSkyPixel | m_last_pix2dir_pix |
Last pixel for pix2dir. More... | |
GSkyPixel | m_last_dir2pix_pix |
Last pixel for dir2pix. More... | |
Protected Attributes inherited from GSkyProjection | |
int | m_coordsys |
0=CEL, 1=GAL More... | |
Static Private Attributes | |
static const int | PVN = 32 |
static const double | UNDEFINED = 987654321.0e99 |
GWcs::GWcs | ( | void | ) |
GWcs::GWcs | ( | const std::string & | coords, |
const double & | crval1, | ||
const double & | crval2, | ||
const double & | crpix1, | ||
const double & | crpix2, | ||
const double & | cdelt1, | ||
const double & | cdelt2 | ||
) |
Standard WCS sky map constructor.
[in] | coords | Coordinate system. |
[in] | crval1 | X value of reference pixel. |
[in] | crval2 | Y value of reference pixel. |
[in] | crpix1 | X index of reference pixel (first pixel is 1). |
[in] | crpix2 | Y index of reference pixel (first pixel is 1). |
[in] | cdelt1 | Increment in x direction at reference pixel (deg). |
[in] | cdelt2 | Increment in y direction at reference pixel (deg). |
Construct standard WCS sky map from standard definition parameters.
Definition at line 103 of file GWcs.cpp.
References init_members(), and set_members().
|
explicit |
Construct from FITS HDU table.
[in] | hdu | FITS HDU. |
Definition at line 124 of file GWcs.cpp.
References init_members(), and read().
GWcs::GWcs | ( | const GWcs & | wcs | ) |
Copy constructor.
wcs | World Coordinate System. |
Definition at line 142 of file GWcs.cpp.
References copy_members(), and init_members().
|
virtual |
double GWcs::cdelt | ( | const int & | inx | ) | const |
Return pixel size.
[in] | inx | Coordinate index [0,...,m_naxis[. |
GException::out_of_range | Index is out of valid range. |
Definition at line 935 of file GWcs.cpp.
References G_CDELT, m_cdelt, and m_naxis.
Referenced by gammalib::com_wcs_mer2car(), GSkyMap::convolution_kernel(), GSkyMap::extract(), GSkyMap::is_same(), GCOMDri::print(), and gammalib::resolution().
|
protected |
|
protected |
World-to-pixel celestial transformation.
[in] | nlng | Longitude vector length. |
[in] | nlat | Latitude vector length (0=no replication, nlat=nlng). |
[in] | sll | Input vector step. |
[in] | sxy | Output vector step. |
[in] | lng | Celestial longitude of the projected point [deg]. |
[in] | lat | Celestial latitude of the projected point [deg]. |
[out] | phi | Longitude of the projected point in native spherical coordinates [deg]. |
[out] | theta | Latitude of the projected point in native spherical coordinates [deg]. |
[out] | x | Vector of projected x coordinates. |
[out] | y | Vector of projected y coordinates. |
[out] | stat | Status return value for each vector element (0=success, 1=invalid). |
This method transforms (x,y) coordinates in the plane of projection to celestial coordinates (lng,lat). The method has been adapted from the wcslib function cel.c::celx2s.
Definition at line 2247 of file GWcs.cpp.
References cel_set(), m_celset, m_isolat, prj_s2x(), and sph_s2x().
Referenced by wcs_s2p().
|
protected |
Setup of celestial transformation.
GException::runtime_error | Invalid values encountered. |
This method sets up the celestial transformation information. The method has been adapted from the wcslib function cel.c::celset. It:
The m_latpreq member is for informational purposes and indicates how the LATPOLEa keyword was used
The m_isolat flag is true if the spherical rotation preserves the magnitude of the latitude, which occurs if the axes of the native and celestial coordinates are coincident. It signals an opportunity to cache intermediate calculations common to all elements in a vector computation.
Definition at line 1921 of file GWcs.cpp.
References abs(), gammalib::acosd(), gammalib::atan2d(), gammalib::cosd(), G_CEL_SET, m_celset, m_euler, m_isolat, m_latpreq, m_offset, m_phi0, m_ref, m_theta0, prj_set(), gammalib::sincosd(), gammalib::sind(), sqrt(), gammalib::str(), UNDEFINED, and undefined().
|
protected |
Pixel-to-world celestial transformation.
[in] | nx | X pixel vector length. |
[in] | ny | Y pixel vector length (0=no replication, ny=nx). |
[in] | sxy | Input vector step. |
[in] | sll | Output vector step. |
[in] | x | Vector of projected x coordinates. |
[in] | y | Vector of projected y coordinates. |
[out] | phi | Longitude of the projected point in native spherical coordinates [deg]. |
[out] | theta | Latitude of the projected point in native spherical coordinates [deg]. |
[out] | lng | Celestial longitude of the projected point [deg]. |
[out] | lat | Celestial latitude of the projected point [deg]. |
[out] | stat | Status return value for each vector element (0=success, 1=invalid). |
This method transforms (x,y) coordinates in the plane of projection to celestial coordinates (lng,lat). The method has been adapted from the wcslib function cel.c::celx2s.
Definition at line 2194 of file GWcs.cpp.
References cel_set(), m_celset, prj_x2s(), and sph_x2s().
Referenced by wcs_p2s().
|
pure virtual |
|
pure virtual |
Clear object.
Sets the object to a clean initial state. After calling the method the object will be in the same state as it were if an empty instance of the object would have been created.
Implements GSkyProjection.
Implemented in GWcsGLS, GWcsAIT, GWcsARC, GWcsAZP, GWcsCAR, GWcsMER, GWcsMOL, GWcsSFL, GWcsSIN, GWcsSTG, and GWcsTAN.
Referenced by set().
|
pure virtual |
|
pure virtual |
Implements GSkyProjection.
Implemented in GWcsGLS, GWcsAIT, GWcsARC, GWcsAZP, GWcsCAR, GWcsMER, GWcsMOL, GWcsSFL, GWcsSIN, GWcsSTG, and GWcsTAN.
Referenced by gammalib::com_wcs_mer2car(), compare(), GWcsRegistry::GWcsRegistry(), wcs_print(), wcs_set(), and wcs_set_ctype().
|
protectedvirtual |
Compares sky projection.
[in] | proj | Sky projection. |
proj
is identical to the actual object.This method is a helper for the World Coordinate Comparison friends. It does not compare derived quantities as those may not have been initialised in both objects.
Implements GSkyProjection.
Definition at line 1129 of file GWcs.cpp.
References code(), m_cdelt, GSkyProjection::m_coordsys, m_crpix, m_crval, m_lat, and m_lng.
|
protected |
Copy class members.
[in] | wcs | GWcs instance from which members should be copied |
Definition at line 992 of file GWcs.cpp.
References m_bounds, m_cd, m_cdelt, m_celset, m_crota, m_crpix, m_crval, m_ctype, m_ctype_c, m_cunit, m_equinox, m_euler, m_has_dir2pix_cache, m_has_pix2dir_cache, m_imgpix, m_isolat, m_last_dir2pix_dir, m_last_dir2pix_pix, m_last_pix2dir_dir, m_last_pix2dir_pix, m_lat, m_latpole, m_latpreq, m_linset, m_lng, m_lonpole, m_naxis, m_offset, m_pc, m_phi0, m_piximg, m_prjset, m_pv, m_r0, m_radesys, m_ref, m_restfrq, m_restwav, m_spec, m_theta0, m_unity, m_w, m_wcsset, m_x0, m_y0, and PVN.
Referenced by GWcs(), and operator=().
double GWcs::crpix | ( | const int & | inx | ) | const |
Return reference pixel.
[in] | inx | Coordinate index [0,...,m_naxis[. |
GException::out_of_range | Index is out of valid range. |
Definition at line 911 of file GWcs.cpp.
References G_CRPIX, m_crpix, and m_naxis.
Referenced by gammalib::com_wcs_mer2car(), GSkyMap::extract(), GSkyMap::is_same(), and GCOMDri::print().
double GWcs::crval | ( | const int & | inx | ) | const |
Return value of reference pixel.
[in] | inx | Coordinate index [0,...,m_naxis[. |
GException::out_of_range | Index is out of valid range. |
Definition at line 887 of file GWcs.cpp.
References G_CRVAL, m_crval, and m_naxis.
Referenced by gammalib::com_wcs_mer2car(), GSkyMap::extract(), GSkyMap::is_same(), and GCOMDri::print().
Returns sky map pixel of sky direction.
[in] | dir | Sky direction. |
Returns the sky map pixel for a given sky direction. Note that the sky map pixel values start from 0 while the WCS pixel reference starts from 1.
A pre-computation cache is implemented so that successive calls with the same dir
value will returned the cached sky pixel. The pre-computation cache is OMP thread safe.
Implements GSkyProjection.
Definition at line 776 of file GWcs.cpp.
References GSkyDir::b_deg(), GSkyDir::dec_deg(), GSkyDir::l_deg(), GSkyProjection::m_coordsys, m_has_dir2pix_cache, m_last_dir2pix_dir, m_last_dir2pix_pix, GSkyDir::ra_deg(), set_lock(), unset_lock(), wcs_s2p(), and GSkyPixel::xy().
|
protected |
Delete class members.
Definition at line 1066 of file GWcs.cpp.
Referenced by GWcsAIT::clear(), GWcsTAN::clear(), GWcsSTG::clear(), GWcsARC::clear(), GWcsSFL::clear(), GWcsMER::clear(), GWcsMOL::clear(), GWcsAZP::clear(), GWcsCAR::clear(), GWcsSIN::clear(), GWcsGLS::clear(), operator=(), read(), and ~GWcs().
|
inlineprotected |
Initializes an OpenMP lock with a specific name.
[in] | lock_id | Identifier of the lock that should be initialized |
Definition at line 274 of file GWcs.hpp.
Referenced by init_members().
|
protected |
Initialise class members.
Code adapted from wcs.c::wcsini(). In addition, the method sets up the World Coordinate System by calling wcs_set().
Definition at line 962 of file GWcs.cpp.
References GSkyDir::clear(), GSkyPixel::clear(), init_lock(), m_has_dir2pix_cache, m_has_pix2dir_cache, m_last_dir2pix_dir, m_last_dir2pix_pix, m_last_pix2dir_dir, m_last_pix2dir_pix, wcs_ini(), and wcs_set().
Referenced by GWcsAIT::clear(), GWcsTAN::clear(), GWcsSTG::clear(), GWcsARC::clear(), GWcsSFL::clear(), GWcsMER::clear(), GWcsMOL::clear(), GWcsAZP::clear(), GWcsCAR::clear(), GWcsSIN::clear(), GWcsGLS::clear(), GWcs(), operator=(), and read().
|
protected |
|
protected |
Invert linear transformation matrix.
[in] | mat | Matrix |
[out] | inv | Inverted matrix |
GException::runtime_error | Singular matrix encountered. |
Inverts a linear transformation matrix that is stored in a vector. The matrix dimension is assumed to be m_naxis*m_naxis. This method has been adapted from lin.c::matinv().
Definition at line 3052 of file GWcs.cpp.
References abs(), G_LIN_MATINV, m_naxis, and gammalib::str().
Referenced by lin_set().
|
protected |
Pixel-to-world linear transformation.
[in] | ncoord | Number of coordinates. |
[in] | nelem | Vector length of each coordinate (>=m_naxis). |
[in] | pixcrd | Array of pixel coordinates (ncoord*nelem). |
[out] | imgcrd | Array of intermediate world coordinates (ncoord*nelem). |
Transforms pixel coordinates to intermediate world coordinates. This method has been adapted from lin.c::linp2x(). The method performs distinct computations depending of whether the PC matrix is unity or not, avoiding a matrix multiplication when it is not necessary.
Definition at line 2899 of file GWcs.cpp.
References lin_set(), m_cdelt, m_crpix, m_linset, m_naxis, m_piximg, and m_unity.
Referenced by wcs_p2s().
|
protected |
|
protected |
World-to-pixel linear transformation.
[in] | ncoord | Number of coordinates. |
[in] | nelem | Vector length of each coordinate (>=m_naxis). |
[in] | imgcrd | Array of intermediate world coordinates (ncoord*nelem). |
[out] | pixcrd | Array of pixel coordinates (ncoord*nelem). |
Transforms intermediate world coordinates to pixel coordinates. This method has been adapted from lin.c::linx2p(). The method performs distinct computations depending of whether the PC matrix is unity or not, avoiding a matrix multiplication when it is not necessary.
Definition at line 2978 of file GWcs.cpp.
References lin_set(), m_cdelt, m_crpix, m_imgpix, m_linset, m_naxis, and m_unity.
Referenced by wcs_s2p().
|
pure virtual |
Implements GSkyProjection.
Implemented in GWcsGLS, GWcsAIT, GWcsARC, GWcsAZP, GWcsCAR, GWcsMER, GWcsMOL, GWcsSFL, GWcsSIN, GWcsSTG, and GWcsTAN.
Referenced by GWcsRegistry::GWcsRegistry(), wcs_print(), and wcs_set_ctype().
Assignment operator.
[in] | wcs | World Coordinate System. |
Definition at line 180 of file GWcs.cpp.
References copy_members(), free_members(), init_members(), and GSkyProjection::operator=().
Referenced by GWcsAIT::operator=(), GWcsTAN::operator=(), GWcsSTG::operator=(), GWcsSIN::operator=(), GWcsSFL::operator=(), GWcsMOL::operator=(), GWcsMER::operator=(), GWcsCAR::operator=(), GWcsAZP::operator=(), and GWcsARC::operator=().
Returns sky direction of sky map pixel.
[in] | pixel | Sky map pixel. |
Returns the sky direction of a sky map pixel
. Note that the sky map pixel values start from 0 while the WCS pixel reference starts from 1.
A pre-computation cache is implemented so that successive calls with the same pixel
value will returned the cached sky direction. The pre-computation cache is OMP thread safe.
Implements GSkyProjection.
Definition at line 692 of file GWcs.cpp.
References GSkyDir::lb_deg(), GSkyProjection::m_coordsys, m_has_pix2dir_cache, m_last_pix2dir_dir, m_last_pix2dir_pix, GSkyDir::radec_deg(), set_lock(), unset_lock(), wcs_p2s(), GSkyPixel::x(), and GSkyPixel::y().
Referenced by solidangle().
Print content of object.
[in] | chatter | Chattiness (defaults to NORMAL). |
Formats the content in a standard way and puts this content in a C++ string that is returned.
Implements GSkyProjection.
Implemented in GWcsGLS, GWcsAIT, GWcsARC, GWcsAZP, GWcsCAR, GWcsMER, GWcsMOL, GWcsSFL, GWcsSIN, GWcsSTG, and GWcsTAN.
|
protected |
Performs bounds checking on native spherical coordinates.
[in] | tol | Tolerance for the bounds check [deg] |
[in] | nphi | Number of bins in phi. |
[in] | ntheta | Number of bins in theta. |
[in] | spt | Step size. |
[in,out] | phi | Pointer to phi array [deg] |
[in,out] | theta | Pointer to theta array [deg] |
[in,out] | stat | Pointer to status array. |
Performs bounds checking on native spherical coordinates. As returned by the deprojection (x2s) routines, native longitude is expected to lie in the closed interval [-180,180], with latitude in [-90,90].
A tolerance may be specified to provide a small allowance for numerical imprecision. Values that lie outside the allowed range by not more than the specified tolerance will be adjusted back into range.
Code adapted from prj.c::prjbchk().
Definition at line 3281 of file GWcs.cpp.
References m_bounds.
Referenced by GWcsARC::prj_x2s(), GWcsSFL::prj_x2s(), GWcsMOL::prj_x2s(), GWcsMER::prj_x2s(), and GWcsCAR::prj_x2s().
|
protected |
|
protected |
Compute fiducial offset to force (x,y) = (0,0) at (phi0,theta0)
[in] | phi0 | Fiducial longitude |
[in] | theta0 | Fiducial latitude |
Code adapted from prj.c::prjoff().
Definition at line 3232 of file GWcs.cpp.
References m_phi0, m_theta0, m_x0, m_y0, prj_s2x(), and undefined().
Referenced by GWcsAIT::prj_set(), GWcsTAN::prj_set(), GWcsSTG::prj_set(), GWcsSIN::prj_set(), GWcsSFL::prj_set(), GWcsMOL::prj_set(), GWcsMER::prj_set(), GWcsCAR::prj_set(), GWcsAZP::prj_set(), and GWcsARC::prj_set().
|
protectedpure virtual |
|
protectedpure virtual |
|
protectedpure virtual |
|
virtual |
Read WCS definition from FITS header.
[in] | hdu | FITS HDU. |
GException::invalid_value | Coordinate system is not of valid type. |
This method reads the WCS definition from the FITS header.
Implements GSkyProjection.
Definition at line 220 of file GWcs.cpp.
References GSkyProjection::free_members(), free_members(), G_READ, GFitsHDU::has_card(), GSkyProjection::init_members(), init_members(), m_equinox, m_lat, m_lng, m_radesys, GFitsHDU::real(), set_members(), GFitsHDU::string(), and wcs_set().
Referenced by GWcs().
void GWcs::set | ( | const std::string & | coords, |
const double & | crval1, | ||
const double & | crval2, | ||
const double & | crpix1, | ||
const double & | crpix2, | ||
const double & | cdelt1, | ||
const double & | cdelt2 | ||
) |
Set World Coordinate System parameters.
[in] | coords | Coordinate system. |
[in] | crval1 | X value of reference pixel. |
[in] | crval2 | Y value of reference pixel. |
[in] | crpix1 | X index of reference pixel (first pixel is 1). |
[in] | crpix2 | Y index of reference pixel (first pixel is 1). |
[in] | cdelt1 | Increment in x direction at reference pixel (deg). |
[in] | cdelt2 | Increment in y direction at reference pixel (deg). |
This method sets the WCS parameters.
Definition at line 859 of file GWcs.cpp.
References clear(), set_members(), and wcs_set().
Referenced by GSkyMap::extract(), and GSkyMap::set_wcs().
|
inlineprotected |
|
protected |
Set World Coordinate System parameters.
[in] | coords | Coordinate system. |
[in] | crval1 | X value of reference pixel. |
[in] | crval2 | Y value of reference pixel. |
[in] | crpix1 | X index of reference pixel (first pixel is 1). |
[in] | crpix2 | Y index of reference pixel (first pixel is 1). |
[in] | cdelt1 | Increment in x direction at reference pixel (deg). |
[in] | cdelt2 | Increment in y direction at reference pixel (deg). |
This method sets the WCS parameters. It does not call wcs_set(), however, as wcs_set() may depend on the availability of derived class methods which can not be used in a base class constructor.
Definition at line 1090 of file GWcs.cpp.
References GSkyProjection::coordsys(), m_cdelt, m_crpix, m_crval, m_lat, m_lng, and wcs_ini().
|
inlinevirtual |
Return dimension of projection.
Returns the dimension of the projection.
Implements GSkyProjection.
|
virtual |
Returns solid angle of pixel in units of steradians.
[in] | pixel | Pixel index (x,y) |
Estimates solid angles of pixels using the Girard equation for excess area - see: http://mathworld.wolfram.com/SphericalPolygon.html
Below, the definiton of the pixel cornes and sides are shown as used within the code.
a12 1---------2 |\ /| | \a13 / | | \ / | | \ / | a14| X |a23 | / \ | | / \ | | /a24 \ | |/ \| 4---------3 a34
Implements GSkyProjection.
Definition at line 487 of file GWcs.cpp.
References gammalib::acos(), atan(), GSkyDir::celvector(), cos(), cross(), gammalib::deg2rad, GSkyDir::dist(), gammalib::pi, pix2dir(), sin(), sqrt(), tan(), gammalib::twopi, GSkyPixel::x(), and GSkyPixel::y().
|
protected |
|
protected |
Rotation in the pixel-to-world direction.
[in] | nlng | Longitude vector length. |
[in] | nlat | Latitude vector length (0=no replication). |
[in] | sll | Input vector step. |
[in] | spt | Output vector step. |
[in] | lng | Celestial longitude [deg]. |
[in] | lat | Celestial latitude [deg]. |
[out] | phi | Longitude in the native coordinate system of the projection [deg]. |
[out] | theta | Latitude in the native coordinate system of the projection [deg]. |
This method has been adapted from the wcslib function sph.c::sphs2x(). The interface follows very closely that of wcslib.
Definition at line 2551 of file GWcs.cpp.
References abs(), gammalib::acosd(), gammalib::asind(), gammalib::atan2d(), gammalib::cosd(), m_euler, gammalib::sincosd(), and sqrt().
Referenced by cel_s2x().
|
protected |
Rotation in the pixel-to-world direction.
[in] | nphi | Phi vector length. |
[in] | ntheta | Theta vector length (0=no replication). |
[in] | spt | Input vector step. |
[in] | sll | Output vector step. |
[in] | phi | Longitude in the native coordinate system of the projection [deg]. |
[in] | theta | Latitude in the native coordinate system of the projection [deg]. |
[out] | lng | Celestial longitude [deg]. |
[out] | lat | Celestial latitude [deg]. |
This method has been adapted from the wcslib function sph.c::sphx2s(). The interface follows very closely that of wcslib.
Definition at line 2310 of file GWcs.cpp.
References abs(), gammalib::acosd(), gammalib::asind(), gammalib::atan2d(), gammalib::cosd(), m_euler, gammalib::sincosd(), and sqrt().
Referenced by cel_x2s().
|
inlineprotected |
Check if value is undefined.
[in] | value | Value to check |
value
is undefined, false otherwise Definition at line 262 of file GWcs.hpp.
References UNDEFINED.
Referenced by cel_set(), prj_off(), GWcsSIN::prj_set(), GWcsAZP::prj_set(), wcs_print_value(), wcs_set_radesys(), and write().
|
inlineprotected |
|
protected |
Initialise World Coordinate System.
[in] | naxis | Number of axes |
This method initialises the World Coordinate System information. The method has been adapted from the wcslib function wcs.c::wcsini. In contrast to the wcslib function, however, this method accepts naxis=0. In this case, all vectors are cleared.
Definition at line 1170 of file GWcs.cpp.
References cel_ini(), lin_ini(), m_cd, m_cdelt, m_crota, m_crpix, m_crval, m_ctype, m_ctype_c, m_cunit, m_equinox, m_lat, m_latpole, m_lng, m_lonpole, m_naxis, m_pc, m_radesys, m_restfrq, m_restwav, m_spec, m_wcsset, spc_ini(), and UNDEFINED.
Referenced by init_members(), and set_members().
|
protected |
Pixel-to-world transformation.
[in] | ncoord | Number of coordinates. |
[in] | nelem | Vector length of each coordinate (>=m_naxis). |
[in] | pixcrd | Array [ncoord][nelem] of pixel coordinates. |
[out] | imgcrd | Array [ncoord][nelem] of intermediate world coordinates. |
[out] | phi | Array [ncoord] of longitudes in native coordinate system. |
[out] | theta | Array [ncoord] of latitudes in native coordinate system. |
[out] | world | Array [ncoord][nelem] of world coordinates. |
[out] | stat | Array [ncoord] of pixel coordinates validity. |
GException::invalid_argument | Invalid input parameters provided |
This method transforms pixel coordinates to world coordinates. The method has been adapted from wcs.c::wcsp2s(). Note that this method is extremely simplified with respect to wcslib, but it does the job for now.
For celestial axes, imgcrd[][wcs.lng] and imgcrd[][wcs.lat] are the projected x-, and y-coordinates in pseudo "degrees" and world[][wcs.lng] and world[][wcs.lat] are the celestial longitude and latitude [deg] For spectral axes, imgcrd[][wcs.spec] is the intermediate spectral coordinate, in SI units and world[][wcs.spec] is ...
Check for constant x and/or y to speed-up computations
Zero the unused world coordinate elements
Definition at line 1514 of file GWcs.cpp.
References cel_x2s(), G_WCS_P2S, lin_p2x(), m_lat, m_lng, m_naxis, m_wcsset, gammalib::str(), and wcs_set().
Referenced by pix2dir().
Print WCS information.
[in] | chatter | Chattiness. |
Definition at line 1642 of file GWcs.cpp.
References code(), GSkyProjection::coordsys(), EXPLICIT, m_bounds, m_cdelt, m_crpix, m_crval, m_cunit, m_euler, m_imgpix, m_isolat, m_lat, m_latpole, m_latpreq, m_lng, m_lonpole, m_naxis, m_offset, m_phi0, m_piximg, m_r0, m_ref, m_restfrq, m_restwav, m_spec, m_theta0, m_unity, m_x0, m_y0, name(), gammalib::parformat(), SILENT, gammalib::str(), and wcs_print_value().
Referenced by GWcsAIT::print(), GWcsTAN::print(), GWcsARC::print(), GWcsSIN::print(), GWcsCAR::print(), GWcsMOL::print(), GWcsMER::print(), GWcsSTG::print(), GWcsSFL::print(), GWcsAZP::print(), and GWcsGLS::print().
|
protected |
Helper function for value printing.
[in] | value | Double precision value |
This helper function either prints a double precision value or the word 'UNDEFINED', depending on whether the value is defined or not.
Definition at line 1837 of file GWcs.cpp.
References gammalib::str(), and undefined().
Referenced by wcs_print().
|
protected |
World-to-pixel transformation.
[in] | ncoord | Number of coordinates. |
[in] | nelem | Vector length of each coordinate (>=m_naxis). |
[in] | world | Array [ncoord][nelem] of world coordinates. |
[out] | phi | Array [ncoord] of longitudes in native coordinate system. |
[out] | theta | Array [ncoord] of latitudes in native coordinate system. |
[out] | imgcrd | Array [ncoord][nelem] of intermediate world coordinates. |
[out] | pixcrd | Array [ncoord][nelem] of pixel coordinates. |
[out] | stat | Array [ncoord] of pixel coordinates validity. |
GException::wcs_invalid_parameter | Invalid input parameters provided |
This method transforms world coordinates to pixel coordinates. The method has been adapted from wcs.c::wcss2p(). Note that this method is extremely simplified with respect to wcslib, but it does the job for now.
For celestial axes, imgcrd[][wcs.lng] and imgcrd[][wcs.lat] are the projected x-, and y-coordinates in pseudo "degrees" and world[][wcs.lng] and world[][wcs.lat] are the celestial longitude and latitude [deg] For spectral axes, imgcrd[][wcs.spec] is the intermediate spectral coordinate, in SI units and world[][wcs.spec] is ...
Check for constant x and/or y to speed-up computations
Zero the unused world coordinate elements
Definition at line 1589 of file GWcs.cpp.
References cel_s2x(), G_WCS_S2P, lin_x2p(), m_lat, m_lng, m_naxis, m_wcsset, gammalib::str(), and wcs_set().
Referenced by dir2pix().
|
protected |
Setup of World Coordinate System.
This method sets up the World Coordinate System information. In particular it:
Determine axis types from CTYPEia
Convert to canonical units
Do we have PVi_ma keyvalues?
Do simple alias translations
Update PVi_ma keyvalues
Non-linear spectral axis present?
Tabular axes present?
Definition at line 1262 of file GWcs.cpp.
References cel_ini(), cel_set(), code(), lin_set(), m_crval, m_lat, m_latpole, m_lng, m_lonpole, m_offset, m_phi0, m_r0, m_ref, m_theta0, m_wcsset, and wcs_set_radesys().
Referenced by GWcsAIT::GWcsAIT(), GWcsARC::GWcsARC(), GWcsAZP::GWcsAZP(), GWcsCAR::GWcsCAR(), GWcsGLS::GWcsGLS(), GWcsMER::GWcsMER(), GWcsMOL::GWcsMOL(), GWcsSFL::GWcsSFL(), GWcsSIN::GWcsSIN(), GWcsSTG::GWcsSTG(), GWcsTAN::GWcsTAN(), init_members(), read(), set(), wcs_p2s(), and wcs_s2p().
|
protected |
Set CTYPEa keywords.
GException::invalid_value | WCS projection not valid. |
GException::wcs_bad_coords | Coordinate system is not of valid type. |
This method has been inspired by code from wcshdr.c::wcshdo.
Definition at line 1391 of file GWcs.cpp.
References code(), G_WCS_SET_CTYPE, GSkyProjection::m_coordsys, m_ctype, m_ctype_c, m_lat, m_lng, m_spec, name(), and gammalib::str().
Referenced by write().
|
protected |
Set radesys and equinox members.
Set default values for radesys and equinox for equatorial, ecliptic or helioecliptic coordinates. For other coordinates the radesys and equinox members are set to empty/undefined values.
This method has been inspired by code from wcs.c::wcsset.
Definition at line 1328 of file GWcs.cpp.
References GSkyProjection::m_coordsys, m_equinox, m_radesys, UNDEFINED, and undefined().
Referenced by wcs_set().
|
virtual |
Write WCS definition into FITS HDU header.
[in] | hdu | FITS HDU. |
This method writes the World Coordinate System definition into the FITS HDU header.
This method has been adapted from wcshdr.c::wcshdo().
Implements GSkyProjection.
Definition at line 342 of file GWcs.cpp.
References GFitsHDU::card(), m_cdelt, m_crpix, m_crval, m_ctype, m_ctype_c, m_cunit, m_equinox, m_lat, m_latpole, m_lng, m_lonpole, m_naxis, m_radesys, m_restfrq, m_restwav, m_spec, gammalib::str(), gammalib::strip_whitespace(), undefined(), and wcs_set_ctype().
|
mutableprotected |
Enable strict bounds checking.
Definition at line 214 of file GWcs.hpp.
Referenced by copy_members(), prj_bchk(), prj_ini(), GWcsAZP::prj_s2x(), GWcsTAN::prj_s2x(), GWcsSIN::prj_s2x(), and wcs_print().
|
protected |
CDi_ja linear transformation matrix.
Definition at line 183 of file GWcs.hpp.
Referenced by copy_members(), and wcs_ini().
|
protected |
CDELTia keyvalues for each coord axis.
Definition at line 194 of file GWcs.hpp.
Referenced by cdelt(), compare(), copy_members(), lin_ini(), lin_p2x(), lin_set(), lin_x2p(), set_members(), wcs_ini(), wcs_print(), and write().
|
mutableprotected |
|
protected |
CROTAia keyvalues for each coord axis.
Definition at line 184 of file GWcs.hpp.
Referenced by copy_members(), and wcs_ini().
|
protected |
CRPIXja keyvalues for each pixel axis.
Definition at line 192 of file GWcs.hpp.
Referenced by compare(), copy_members(), crpix(), lin_ini(), lin_p2x(), lin_x2p(), set_members(), wcs_ini(), wcs_print(), and write().
|
protected |
CRVALia keyvalues for each coord axis.
Definition at line 173 of file GWcs.hpp.
Referenced by compare(), copy_members(), crval(), set_members(), wcs_ini(), wcs_print(), wcs_set(), and write().
|
mutableprotected |
CTYPEia keyvalues for each coord axis.
Definition at line 175 of file GWcs.hpp.
Referenced by copy_members(), wcs_ini(), wcs_set_ctype(), and write().
|
mutableprotected |
CTYPEia comments for each coord axis.
Definition at line 176 of file GWcs.hpp.
Referenced by copy_members(), wcs_ini(), wcs_set_ctype(), and write().
|
protected |
CUNITia keyvalues for each coord axis.
Definition at line 174 of file GWcs.hpp.
Referenced by copy_members(), wcs_ini(), wcs_print(), and write().
|
mutableprotected |
EQUINOX keyvalue.
Definition at line 182 of file GWcs.hpp.
Referenced by copy_members(), read(), wcs_ini(), wcs_set_radesys(), and write().
|
mutableprotected |
Euler angles and functions thereof.
Definition at line 206 of file GWcs.hpp.
Referenced by cel_ini(), cel_set(), copy_members(), sph_s2x(), sph_x2s(), and wcs_print().
|
mutableprotected |
Has valid dir2pix cache value.
Definition at line 224 of file GWcs.hpp.
Referenced by copy_members(), dir2pix(), and init_members().
|
mutableprotected |
Has valid pix2dir cache value.
Definition at line 223 of file GWcs.hpp.
Referenced by copy_members(), init_members(), and pix2dir().
|
mutableprotected |
Image to pixel transformation matrix.
Definition at line 196 of file GWcs.hpp.
Referenced by copy_members(), lin_ini(), lin_set(), lin_x2p(), and wcs_print().
|
mutableprotected |
True if |latitude| is preserved.
Definition at line 208 of file GWcs.hpp.
Referenced by cel_ini(), cel_s2x(), cel_set(), copy_members(), and wcs_print().
|
mutableprotected |
Last sky direction for dir2pix.
Definition at line 226 of file GWcs.hpp.
Referenced by copy_members(), dir2pix(), and init_members().
|
mutableprotected |
Last pixel for dir2pix.
Definition at line 228 of file GWcs.hpp.
Referenced by copy_members(), dir2pix(), and init_members().
|
mutableprotected |
Last sky direction for pix2dir.
Definition at line 225 of file GWcs.hpp.
Referenced by copy_members(), init_members(), and pix2dir().
|
mutableprotected |
Last pixel for pix2dir.
Definition at line 227 of file GWcs.hpp.
Referenced by copy_members(), init_members(), and pix2dir().
|
protected |
Latitude axis.
Definition at line 186 of file GWcs.hpp.
Referenced by compare(), copy_members(), read(), set_members(), wcs_ini(), wcs_p2s(), wcs_print(), wcs_s2p(), wcs_set(), wcs_set_ctype(), and write().
|
mutableprotected |
LATPOLEa keyvalue.
Definition at line 178 of file GWcs.hpp.
Referenced by copy_members(), wcs_ini(), wcs_print(), wcs_set(), and write().
|
mutableprotected |
LATPOLEa requirement.
Definition at line 207 of file GWcs.hpp.
Referenced by cel_ini(), cel_set(), copy_members(), and wcs_print().
|
mutableprotected |
|
protected |
Longitude axis.
Definition at line 185 of file GWcs.hpp.
Referenced by compare(), copy_members(), read(), set_members(), wcs_ini(), wcs_p2s(), wcs_print(), wcs_s2p(), wcs_set(), wcs_set_ctype(), and write().
|
mutableprotected |
LONPOLEa keyvalue.
Definition at line 177 of file GWcs.hpp.
Referenced by copy_members(), wcs_ini(), wcs_print(), wcs_set(), and write().
|
protected |
Number of axes.
Definition at line 172 of file GWcs.hpp.
Referenced by cdelt(), copy_members(), crpix(), crval(), lin_matinv(), lin_p2x(), lin_set(), lin_x2p(), wcs_ini(), wcs_p2s(), wcs_print(), wcs_s2p(), and write().
|
mutableprotected |
Force (x,y) = (0,0) at (phi_0,theta_0)
Definition at line 200 of file GWcs.hpp.
Referenced by cel_ini(), cel_set(), copy_members(), wcs_print(), and wcs_set().
|
protected |
|
mutableprotected |
Native azimuth angle of fiducial point.
Definition at line 201 of file GWcs.hpp.
Referenced by cel_ini(), cel_set(), copy_members(), prj_off(), wcs_print(), and wcs_set().
|
mutableprotected |
Pixel to image transformation matrix.
Definition at line 195 of file GWcs.hpp.
Referenced by copy_members(), lin_ini(), lin_p2x(), lin_set(), and wcs_print().
|
mutableprotected |
Projection is set.
Definition at line 211 of file GWcs.hpp.
Referenced by copy_members(), prj_ini(), GWcsARC::prj_s2x(), GWcsMER::prj_s2x(), GWcsTAN::prj_s2x(), GWcsAIT::prj_s2x(), GWcsMOL::prj_s2x(), GWcsAZP::prj_s2x(), GWcsSFL::prj_s2x(), GWcsCAR::prj_s2x(), GWcsSIN::prj_s2x(), GWcsSTG::prj_s2x(), GWcsTAN::prj_set(), GWcsAZP::prj_set(), GWcsMOL::prj_set(), GWcsSFL::prj_set(), GWcsSTG::prj_set(), GWcsSIN::prj_set(), GWcsMER::prj_set(), GWcsCAR::prj_set(), GWcsARC::prj_set(), GWcsAIT::prj_set(), GWcsMOL::prj_x2s(), GWcsCAR::prj_x2s(), GWcsARC::prj_x2s(), GWcsTAN::prj_x2s(), GWcsMER::prj_x2s(), GWcsSTG::prj_x2s(), GWcsSIN::prj_x2s(), GWcsAZP::prj_x2s(), GWcsSFL::prj_x2s(), and GWcsAIT::prj_x2s().
|
mutableprotected |
Projection parameters.
Definition at line 213 of file GWcs.hpp.
Referenced by copy_members(), prj_ini(), GWcsSIN::prj_s2x(), GWcsAZP::prj_s2x(), GWcsSIN::prj_set(), GWcsAZP::prj_set(), GWcsAZP::prj_x2s(), and GWcsSIN::prj_x2s().
|
mutableprotected |
Radius of the generating sphere.
Definition at line 212 of file GWcs.hpp.
Referenced by copy_members(), prj_ini(), GWcsSIN::prj_s2x(), GWcsTAN::prj_s2x(), GWcsMER::prj_s2x(), GWcsSIN::prj_set(), GWcsAZP::prj_set(), GWcsCAR::prj_set(), GWcsMER::prj_set(), GWcsTAN::prj_set(), GWcsMOL::prj_set(), GWcsAIT::prj_set(), GWcsSTG::prj_set(), GWcsARC::prj_set(), GWcsSFL::prj_set(), GWcsSFL::prj_x2s(), GWcsMER::prj_x2s(), GWcsAIT::prj_x2s(), GWcsMOL::prj_x2s(), GWcsTAN::prj_x2s(), wcs_print(), and wcs_set().
|
mutableprotected |
RADESYS keyvalue.
Definition at line 181 of file GWcs.hpp.
Referenced by copy_members(), read(), wcs_ini(), wcs_set_radesys(), and write().
|
mutableprotected |
Celestial coordinates of fiducial.
Definition at line 203 of file GWcs.hpp.
Referenced by cel_ini(), cel_set(), copy_members(), wcs_print(), and wcs_set().
|
protected |
RESTFRQa keyvalue.
Definition at line 179 of file GWcs.hpp.
Referenced by copy_members(), wcs_ini(), wcs_print(), and write().
|
protected |
RESTWAVa keyvalue.
Definition at line 180 of file GWcs.hpp.
Referenced by copy_members(), wcs_ini(), wcs_print(), and write().
|
protected |
Spectral axis.
Definition at line 187 of file GWcs.hpp.
Referenced by copy_members(), wcs_ini(), wcs_print(), wcs_set_ctype(), and write().
|
mutableprotected |
Native zenith angle of fiducial point.
Definition at line 202 of file GWcs.hpp.
Referenced by cel_ini(), cel_set(), copy_members(), prj_off(), wcs_print(), and wcs_set().
|
mutableprotected |
Signals unity PC matrix.
Definition at line 191 of file GWcs.hpp.
Referenced by copy_members(), lin_ini(), lin_p2x(), lin_set(), lin_x2p(), and wcs_print().
|
mutableprotected |
Intermediate values.
Definition at line 217 of file GWcs.hpp.
Referenced by copy_members(), prj_ini(), GWcsARC::prj_s2x(), GWcsMER::prj_s2x(), GWcsAIT::prj_s2x(), GWcsMOL::prj_s2x(), GWcsAZP::prj_s2x(), GWcsSFL::prj_s2x(), GWcsCAR::prj_s2x(), GWcsSIN::prj_s2x(), GWcsSTG::prj_s2x(), GWcsSIN::prj_set(), GWcsTAN::prj_set(), GWcsAZP::prj_set(), GWcsMOL::prj_set(), GWcsSFL::prj_set(), GWcsMER::prj_set(), GWcsSTG::prj_set(), GWcsCAR::prj_set(), GWcsARC::prj_set(), GWcsAIT::prj_set(), GWcsSIN::prj_x2s(), GWcsMOL::prj_x2s(), GWcsARC::prj_x2s(), GWcsCAR::prj_x2s(), GWcsSTG::prj_x2s(), GWcsMER::prj_x2s(), GWcsAZP::prj_x2s(), GWcsAIT::prj_x2s(), and GWcsSFL::prj_x2s().
|
mutableprotected |
|
mutableprotected |
Fiducial x offset.
Definition at line 215 of file GWcs.hpp.
Referenced by copy_members(), prj_ini(), prj_off(), GWcsARC::prj_s2x(), GWcsMOL::prj_s2x(), GWcsSFL::prj_s2x(), GWcsAZP::prj_s2x(), GWcsSIN::prj_s2x(), GWcsSTG::prj_s2x(), GWcsTAN::prj_s2x(), GWcsAIT::prj_s2x(), GWcsCAR::prj_s2x(), GWcsMER::prj_s2x(), GWcsSFL::prj_x2s(), GWcsSIN::prj_x2s(), GWcsAIT::prj_x2s(), GWcsCAR::prj_x2s(), GWcsSTG::prj_x2s(), GWcsARC::prj_x2s(), GWcsMOL::prj_x2s(), GWcsAZP::prj_x2s(), GWcsTAN::prj_x2s(), GWcsMER::prj_x2s(), and wcs_print().
|
mutableprotected |
Fiducial y offset.
Definition at line 216 of file GWcs.hpp.
Referenced by copy_members(), prj_ini(), prj_off(), GWcsARC::prj_s2x(), GWcsMOL::prj_s2x(), GWcsSFL::prj_s2x(), GWcsAZP::prj_s2x(), GWcsSIN::prj_s2x(), GWcsSTG::prj_s2x(), GWcsTAN::prj_s2x(), GWcsAIT::prj_s2x(), GWcsCAR::prj_s2x(), GWcsMER::prj_s2x(), GWcsSFL::prj_x2s(), GWcsSIN::prj_x2s(), GWcsAIT::prj_x2s(), GWcsCAR::prj_x2s(), GWcsSTG::prj_x2s(), GWcsARC::prj_x2s(), GWcsMOL::prj_x2s(), GWcsAZP::prj_x2s(), GWcsTAN::prj_x2s(), GWcsMER::prj_x2s(), and wcs_print().
|
staticprivate |
Definition at line 94 of file GWcs.hpp.
Referenced by copy_members(), and prj_ini().
|
staticprivate |
Definition at line 95 of file GWcs.hpp.
Referenced by cel_ini(), cel_set(), prj_ini(), undefined(), wcs_ini(), and wcs_set_radesys().