722#define PRJX2S_ARGS struct prjprm *prj, int nx, int ny, int sxy, int spt, \
723const double x[], const double y[], double phi[], double theta[], int stat[]
726#define PRJS2X_ARGS struct prjprm *prj, int nx, int ny, int sxy, int spt, \
727const double phi[], const double theta[], double x[], double y[], int stat[]
772#define PRJLEN (sizeof(struct prjprm)/sizeof(int))
787int prjbchk(
double tol,
int nphi,
int ntheta,
int spt,
double phi[],
788 double theta[],
int stat[]);
909#define prjini_errmsg prj_errmsg
910#define prjprt_errmsg prj_errmsg
911#define prjset_errmsg prj_errmsg
912#define prjx2s_errmsg prj_errmsg
913#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:696
@ PRJERR_BAD_WORLD
Definition prj.h:702
@ PRJERR_NULL_POINTER
Definition prj.h:698
@ PRJERR_BAD_PARAM
Definition prj.h:699
@ PRJERR_SUCCESS
Definition prj.h:697
@ PRJERR_BAD_PIX
Definition prj.h:700
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:722
int bons2x(PRJS2X_ARGS)
Spherical-to-Cartesian transformation for Bonne's (BON) projection.
const int ZENITHAL
Identifier for zenithal/azimuthal projections.
Definition prj.h:707
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:707
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:707
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:707
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.
const char prj_codes[28][4]
Recognized three-letter projection codes.
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:706
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 prjenq(const struct prjprm *prj, int enquiry)
enquire about the state of a prjprm struct.
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:726
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:706
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.
const char * prj_errmsg[]
Status return messages.
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:692
const int CONVENTIONAL
Identifier for conventional projections.
Definition prj.h:706
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.
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.
prjenq_enum
Definition prj.h:686
@ PRJENQ_BYP
Definition prj.h:688
@ PRJENQ_SET
Definition prj.h:687
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:730
char name[40]
Definition prj.h:745
double y0
Definition prj.h:753
double pv[PVN]
Definition prj.h:739
char code[4]
Definition prj.h:737
void * padding
Definition prj.h:762
double r0
Definition prj.h:738
double w[10]
Definition prj.h:764
int divergent
Definition prj.h:752
double phi0
Definition prj.h:740
int(* prjs2x)(PRJS2X_ARGS)
Definition prj.h:768
struct wcserr * err
Definition prj.h:757
int n
Definition prj.h:765
double x0
Definition prj.h:753
int equiareal
Definition prj.h:749
int bounds
Definition prj.h:741
int pvrange
Definition prj.h:747
int flag
Definition prj.h:733
int conformal
Definition prj.h:750
int(* prjx2s)(PRJX2S_ARGS)
Definition prj.h:767
int global
Definition prj.h:751
double theta0
Definition prj.h:740
int category
Definition prj.h:746
int m
Definition prj.h:765
int simplezen
Definition prj.h:748
Error message handling.
Definition wcserr.h:243