690#define PRJX2S_ARGS struct prjprm *prj, int nx, int ny, int sxy, int spt, \
691const double x[], const double y[], double phi[], double theta[], int stat[]
694#define PRJS2X_ARGS struct prjprm *prj, int nx, int ny, int sxy, int spt, \
695const double phi[], const double theta[], double x[], double y[], int stat[]
738#define PRJLEN (sizeof(struct prjprm)/sizeof(int))
751int prjbchk(
double tol,
int nphi,
int ntheta,
int spt,
double phi[],
752 double theta[],
int stat[]);
873#define prjini_errmsg prj_errmsg
874#define prjprt_errmsg prj_errmsg
875#define prjset_errmsg prj_errmsg
876#define prjx2s_errmsg prj_errmsg
877#define prjs2x_errmsg prj_errmsg
int airset(struct prjprm *prj)
Set up a prjprm struct for Airy's (AIR) projection.
int codx2s(PRJX2S_ARGS)
Cartesian-to-spherical transformation for the conic equidistant (COD) projection.
int cyps2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for the cylindrical perspective (CYP) projection.
int molset(struct prjprm *prj)
Set up a prjprm struct for Mollweide's (MOL) projection.
int tscs2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for the tangential spherical cube (TSC) projection.
int parx2s(PRJX2S_ARGS)
Cartesian-to-spherical transformation for the parabolic (PAR) projection.
int pcos2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for the polyconic (PCO) projection.
int pcox2s(PRJX2S_ARGS)
Cartesian-to-spherical transformation for the polyconic (PCO) projection.
int ceas2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for the cylindrical equal area (CEA) projection.
prj_errmsg_enum
Definition prj.h:664
@ PRJERR_BAD_WORLD
Definition prj.h:670
@ PRJERR_NULL_POINTER
Definition prj.h:666
@ PRJERR_BAD_PARAM
Definition prj.h:667
@ PRJERR_SUCCESS
Definition prj.h:665
@ PRJERR_BAD_PIX
Definition prj.h:668
int airx2s(PRJX2S_ARGS)
Cartesian-to-spherical transformation for Airy's (AIR) projection.
const int prj_ncode
The number of recognized three-letter projection codes.
int aitx2s(PRJX2S_ARGS)
Cartesian-to-spherical transformation for the Hammer-Aitoff (AIT) projection.
int coox2s(PRJX2S_ARGS)
Cartesian-to-spherical transformation for the conic orthomorphic (COO) projection.
int szpx2s(PRJX2S_ARGS)
Cartesian-to-spherical transformation for the slant zenithal perspective (SZP) projection.
int sflx2s(PRJX2S_ARGS)
Cartesian-to-spherical transformation for the Sanson-Flamsteed (SFL) projection.
int zeaset(struct prjprm *prj)
Set up a prjprm struct for the zenithal/azimuthal equal area (ZEA) projection.
int aitset(struct prjprm *prj)
Set up a prjprm struct for the Hammer-Aitoff (AIT) projection.
int cooset(struct prjprm *prj)
Set up a prjprm struct for the conic orthomorphic (COO) projection.
int tanset(struct prjprm *prj)
Set up a prjprm struct for the gnomonic (TAN) projection.
int carset(struct prjprm *prj)
Set up a prjprm struct for the plate carrée (CAR) projection.
int cypset(struct prjprm *prj)
Set up a prjprm struct for the cylindrical perspective (CYP) projection.
#define PRJX2S_ARGS
For use in declaring deprojection function prototypes.
Definition prj.h:690
int bons2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for Bonne's (BON) projection.
const int ZENITHAL
Identifier for zenithal/azimuthal projections.
Definition prj.h:675
int hpxx2s(PRJX2S_ARGS)
Cartesian-to-spherical transformation for the HEALPix (HPX) projection.
int prjfree(struct prjprm *prj)
Destructor for the prjprm struct.
int bonx2s(PRJX2S_ARGS)
Cartesian-to-spherical transformation for Bonne's (BON) projection.
int merx2s(PRJX2S_ARGS)
Cartesian-to-spherical transformation for Mercator's (MER) projection.
int sfls2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for the Sanson-Flamsteed (SFL) projection.
int zpnx2s(PRJX2S_ARGS)
Cartesian-to-spherical transformation for the zenithal/azimuthal polynomial (ZPN) projection.
int copx2s(PRJX2S_ARGS)
Cartesian-to-spherical transformation for the conic perspective (COP) projection.
const int PSEUDOCYLINDRICAL
Identifier for pseudocylindrical projections.
Definition prj.h:675
const char prj_codes[28][4]
Recognized three-letter projection codes.
int prjperr(const struct prjprm *prj, const char *prefix)
Print error messages from a prjprm struct.
int arcx2s(PRJX2S_ARGS)
Cartesian-to-spherical transformation for the zenithal/azimuthal equidistant (ARC) projection.
int stgset(struct prjprm *prj)
Set up a prjprm struct for the stereographic (STG) projection.
int ceaset(struct prjprm *prj)
Set up a prjprm struct for the cylindrical equal area (CEA) projection.
int qscset(struct prjprm *prj)
Set up a prjprm struct for the quadrilateralized spherical cube (QSC) projection.
const int HEALPIX
Identifier for the HEALPix projection.
Definition prj.h:675
int mols2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for Mollweide's (MOL) projection.
int szps2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for the slant zenithal perspective (SZP) projection.
const int QUADCUBE
Identifier for quadcube projections.
Definition prj.h:675
int airs2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for Airy's (AIR) projection.
int cops2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for the conic perspective (COP) projection.
int zpns2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for the zenithal/azimuthal polynomial (ZPN) projection.
int prjbchk(double tol, int nphi, int ntheta, int spt, double phi[], double theta[], int stat[])
Bounds checking on native coordinates.
int sflset(struct prjprm *prj)
Set up a prjprm struct for the Sanson-Flamsteed (SFL) projection.
int qscs2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for the quadrilateralized spherical cube (QSC) projection.
int zeax2s(PRJX2S_ARGS)
Cartesian-to-spherical transformation for the zenithal/azimuthal equal area (ZEA) projection.
int molx2s(PRJX2S_ARGS)
Cartesian-to-spherical transformation for Mollweide's (MOL) projection.
const int CYLINDRICAL
Identifier for cylindrical projections.
Definition prj.h:674
int prjprt(const struct prjprm *prj)
Print routine for the prjprm struct.
int stgx2s(PRJX2S_ARGS)
Cartesian-to-spherical transformation for the stereographic (STG) projection.
int cscset(struct prjprm *prj)
Set up a prjprm struct for the COBE spherical cube (CSC) projection.
int aits2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for the Hammer-Aitoff (AIT) projection.
int azpx2s(PRJX2S_ARGS)
Cartesian-to-spherical transformation for the zenithal/azimuthal perspective (AZP) projection.
int prjx2s(PRJX2S_ARGS)
Generic Cartesian-to-spherical deprojection.
const char prj_categories[9][32]
Projection categories.
int tans2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for the gnomonic (TAN) projection.
int hpxset(struct prjprm *prj)
Set up a prjprm struct for the HEALPix (HPX) projection.
int arcs2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for the zenithal/azimuthal equidistant (ARC) projection.
int pcoset(struct prjprm *prj)
Set up a prjprm struct for the polyconic (PCO) projection.
#define PRJS2X_ARGS
For use in declaring projection function prototypes.
Definition prj.h:694
int tscset(struct prjprm *prj)
Set up a prjprm struct for the tangential spherical cube (TSC) projection.
int bonset(struct prjprm *prj)
Set up a prjprm struct for Bonne's (BON) projection.
const int POLYCONIC
Identifier for polyconic projections.
Definition prj.h:674
int coeset(struct prjprm *prj)
Set up a prjprm struct for the conic equal area (COE) projection.
int cars2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for the plate carrée (CAR) projection.
int stgs2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for the stereographic (STG) projection.
int sinset(struct prjprm *prj)
Set up a prjprm struct for the orthographic/synthesis (SIN) projection.
int tscx2s(PRJX2S_ARGS)
Cartesian-to-spherical transformation for the tangential spherical cube (TSC) projection.
int azps2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for the zenithal/azimuthal perspective (AZP) projection.
int sins2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for the orthographic/synthesis (SIN) projection.
int prjs2x(PRJS2X_ARGS)
Generic spherical-to-Cartesian projection.
int azpset(struct prjprm *prj)
Set up a prjprm struct for the zenithal/azimuthal perspective (AZP) projection.
int arcset(struct prjprm *prj)
Set up a prjprm struct for the zenithal/azimuthal equidistant (ARC) projection.
int copset(struct prjprm *prj)
Set up a prjprm struct for the conic perspective (COP) projection.
#define PVN
Total number of projection parameters.
Definition prj.h:660
const int CONVENTIONAL
Identifier for conventional projections.
Definition prj.h:674
int zpnset(struct prjprm *prj)
Set up a prjprm struct for the zenithal/azimuthal polynomial (ZPN) projection.
int cscs2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for the COBE spherical cube (CSC) projection.
const char * prj_errmsg[]
Status return messages.
int tanx2s(PRJX2S_ARGS)
Cartesian-to-spherical transformation for the gnomonic (TAN) projection.
int merset(struct prjprm *prj)
Set up a prjprm struct for Mercator's (MER) projection.
int parset(struct prjprm *prj)
Set up a prjprm struct for the parabolic (PAR) projection.
int prjset(struct prjprm *prj)
Generic setup routine for the prjprm struct.
int coex2s(PRJX2S_ARGS)
Cartesian-to-spherical transformation for the conic equal area (COE) projection.
int prjini(struct prjprm *prj)
Default constructor for the prjprm struct.
int mers2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for Mercator's (MER) projection.
int zeas2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for the zenithal/azimuthal equal area (ZEA) projection.
const int CONIC
Identifier for conic projections.
int pars2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for the parabolic (PAR) projection.
int sinx2s(PRJX2S_ARGS)
Cartesian-to-spherical transformation for the orthographic/synthesis (SIN) projection.
int coos2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for the conic orthomorphic (COO) projection.
int prjsize(const struct prjprm *prj, int sizes[2])
Compute the size of a prjprm struct.
int carx2s(PRJX2S_ARGS)
Cartesian-to-spherical transformation for the plate carrée (CAR) projection.
int hpxs2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for the HEALPix (HPX) projection.
int coes2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for the conic equal area (COE) projection.
int szpset(struct prjprm *prj)
Set up a prjprm struct for the slant zenithal perspective (SZP) projection.
int codset(struct prjprm *prj)
Set up a prjprm struct for the conic equidistant (COD) projection.
int qscx2s(PRJX2S_ARGS)
Cartesian-to-spherical transformation for the quadrilateralized spherical cube (QSC) projection.
int cscx2s(PRJX2S_ARGS)
Cartesian-to-spherical transformation for the COBE spherical cube (CSC) projection.
int xphset(struct prjprm *prj)
int cods2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for the conic equidistant (COD) projection.
int ceax2s(PRJX2S_ARGS)
Cartesian-to-spherical transformation for the cylindrical equal area (CEA) projection.
int cypx2s(PRJX2S_ARGS)
Cartesian-to-spherical transformation for the cylindrical perspective (CYP) projection.
Projection parameters.
Definition prj.h:698
double y0
Definition prj.h:721
struct wcserr * err
Definition prj.h:725
double r0
Definition prj.h:706
double w[10]
Definition prj.h:730
double pv[PVN]
Definition prj.h:707
char code[4]
Definition prj.h:705
int divergent
Definition prj.h:720
double phi0
Definition prj.h:708
void * padding
Definition prj.h:729
int n
Definition prj.h:731
double x0
Definition prj.h:721
char name[40]
Definition prj.h:713
int equiareal
Definition prj.h:717
int bounds
Definition prj.h:709
int pvrange
Definition prj.h:715
int flag
Definition prj.h:701
int conformal
Definition prj.h:718
int global
Definition prj.h:719
int(* prjs2x)(PRJS2X_ARGS)
Definition prj.h:734
double theta0
Definition prj.h:708
int(* prjx2s)(PRJX2S_ARGS)
Definition prj.h:733
int category
Definition prj.h:714
int m
Definition prj.h:731
int simplezen
Definition prj.h:716
Error message handling.
Definition wcserr.h:243