diff options
| author | Thomas Knudsen <busstoptaktik@users.noreply.github.com> | 2017-11-20 13:20:02 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2017-11-20 13:20:02 +0100 |
| commit | 5f1522ad7652e562f98328b05d905c407bab99e9 (patch) | |
| tree | f8a73c0c5eb53ef4ba05eb5fd0ca5c9f0fa5d882 /src/projects.h | |
| parent | 3d6f36a2e10d103727a072d160fcf724daa871d5 (diff) | |
| download | PROJ-5f1522ad7652e562f98328b05d905c407bab99e9.tar.gz PROJ-5f1522ad7652e562f98328b05d905c407bab99e9.zip | |
Replace pj_ell_set with reimplementation... (#675)
* Replace pj_ell_set with reimplementation supporting ellipsoid inheritance
* remove unreachable code from pj_ell_set.c
* Swap steps, so ellps args are read first, in accordance with historical behaviour
* Add ellipsoid tests to CI targets
* Reduce some optimistic tolerances
OS/X appears to have a slightly off float handling, resulting in differences at the nanometer level. Switching to 10 nm.
Diffstat (limited to 'src/projects.h')
| -rw-r--r-- | src/projects.h | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/src/projects.h b/src/projects.h index 32b74b08..f8f1fa38 100644 --- a/src/projects.h +++ b/src/projects.h @@ -229,6 +229,11 @@ struct PJconsts { projCtx_t *ctx; const char *descr; /* From pj_list.h or individual PJ_*.c file */ paralist *params; /* Parameter list */ + char *def_size; /* Shape and size parameters extracted from params */ + char *def_shape; + char *def_spherification; + char *def_ellps; + struct geod_geodesic *geod; /* For geodesic computations */ struct pj_opaque *opaque; /* Projection specific parameters, Defined in PJ_*.c */ int inverted; /* Tell high level API functions to swap inv/fwd */ @@ -413,11 +418,6 @@ struct ARG_list { typedef union { double f; int i; char *s; } PROJVALUE; -struct PJ_SELFTEST_LIST { - char *id; /* projection keyword */ - int (* testfunc)(void); /* projection entry point */ -}; - struct PJ_ELLPS { char *id; /* ellipse keyword name */ char *major; /* a= value */ @@ -534,6 +534,7 @@ enum deprecated_constants_for_now_dropped_analytical_factors { #define PJD_ERR_LAT_0_IS_ZERO -55 #define PJD_ERR_ELLIPSOIDAL_UNSUPPORTED -56 #define PJD_ERR_TOO_MANY_INITS -57 +#define PJD_ERR_INVALID_ARG -58 struct projFileAPI_t; @@ -676,6 +677,7 @@ double aacos(projCtx,double), aasin(projCtx,double), asqrt(double), aatan2(doubl PROJVALUE pj_param(projCtx ctx, paralist *, const char *); paralist *pj_mkparam(char *); +int pj_ellipsoid (PJ *); int pj_ell_set(projCtx ctx, paralist *, double *, double *); int pj_datum_set(projCtx,paralist *, PJ *); int pj_prime_meridian_set(paralist *, PJ *); |
