diff options
| author | Thomas Knudsen <thokn@sdfe.dk> | 2017-10-07 17:48:25 +0200 |
|---|---|---|
| committer | Thomas Knudsen <thokn@sdfe.dk> | 2017-10-12 14:38:50 +0200 |
| commit | 973c87c5115e34c60d65f702815edee169fcdd1e (patch) | |
| tree | 7076a86ec452a1e327cd337a5c85a260825b2447 | |
| parent | faca621657c5c325c54e6f4f7ea2bc6df386b328 (diff) | |
| download | PROJ-973c87c5115e34c60d65f702815edee169fcdd1e.tar.gz PROJ-973c87c5115e34c60d65f702815edee169fcdd1e.zip | |
gie.c and builtins.gie now able to reproduce internal test results
improved docs, improved strtod - avoid precision loss for very long fractions
Switch gie.c to use same framework as cct.c
numerous improvements in proj_strtod.c and gie.c
Add gie to the build system
| -rw-r--r-- | src/CMakeLists.txt | 26 | ||||
| -rw-r--r-- | src/Makefile.am | 12 | ||||
| -rw-r--r-- | src/bin_gie.cmake | 9 | ||||
| -rw-r--r-- | src/gie.c | 722 | ||||
| -rw-r--r-- | src/makefile.vc | 9 | ||||
| -rw-r--r-- | src/optargpm.h | 21 | ||||
| -rw-r--r-- | src/proj_strtod.c | 54 | ||||
| -rw-r--r-- | test/gie/builtins.gie | 4678 |
8 files changed, 5501 insertions, 30 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 788273a9..494eef9b 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -3,11 +3,12 @@ include(lib_proj.cmake) # configure executable build -option(BUILD_CCT "Build cct (coordinate conversion and transformation tool)" ON) -option(BUILD_CS2CS "Build cs2cs (coordinate systems to coordinate systems translation tool)" ON) -option(BUILD_PROJ "Build proj (cartographic projection tool : latlong <-> projected coordinates" ON) -option(BUILD_GEOD "Build geod (computation of geodesic lines)" ON) -option(BUILD_NAD2BIN "Build nad2bin (format conversion tool) " ON) +option(BUILD_CCT "Build cct (coordinate conversion and transformation tool)" ON) +option(BUILD_CS2CS "Build cs2cs (coordinate systems to coordinate systems translation tool)" ON) +option(BUILD_GEOD "Build geod (computation of geodesic lines)" ON) +option(BUILD_GIE "Build gie (geospatial integrity investigation environment - a PROJ.4 test tool)" ON) +option(BUILD_NAD2BIN "Build nad2bin (format conversion tool)" ON) +option(BUILD_PROJ "Build proj (cartographic projection tool : latlong <-> projected coordinates)" ON) if(NOT MSVC) if (NOT APPLE) @@ -33,11 +34,6 @@ if(BUILD_CS2CS) set(BIN_TARGETS ${BIN_TARGETS} cs2cs) endif(BUILD_CS2CS) -if(BUILD_PROJ) - include(bin_proj.cmake) - set(BIN_TARGETS ${BIN_TARGETS} binproj) -endif(BUILD_PROJ) - if(BUILD_GEOD) include(bin_geod.cmake) include(bin_geodtest.cmake) @@ -49,6 +45,16 @@ if(BUILD_NAD2BIN) set(BIN_TARGETS ${BIN_TARGETS} nad2bin) endif(BUILD_NAD2BIN) +if(BUILD_PROJ) + include(bin_proj.cmake) + set(BIN_TARGETS ${BIN_TARGETS} binproj) +endif(BUILD_PROJ) + +if(BUILD_GIE) + include(bin_gie.cmake) + set(BIN_TARGETS ${BIN_TARGETS} gie) +endif(BUILD_GIE) + if (MSVC OR CMAKE_CONFIGURATION_TYPES) if(BIN_TARGETS) # Add _d suffix for your debug versions of the tools diff --git a/src/Makefile.am b/src/Makefile.am index 25b7456c..1a1f3270 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -12,7 +12,7 @@ AM_CPPFLAGS = -DPROJ_LIB=\"$(pkgdatadir)\" \ include_HEADERS = proj.h proj_api.h projects.h geodesic.h \ org_proj4_Projections.h org_proj4_PJ.h -EXTRA_DIST = makefile.vc proj.def bin_cct.cmake bin_cs2cs.cmake \ +EXTRA_DIST = makefile.vc proj.def bin_cct.cmake bin_gie.cmake bin_cs2cs.cmake \ bin_geod.cmake bin_nad2bin.cmake bin_proj.cmake \ lib_proj.cmake CMakeLists.txt bin_geodtest.cmake geodtest.c @@ -21,15 +21,19 @@ cs2cs_SOURCES = cs2cs.c gen_cheb.c p_series.c cct_SOURCES = cct.c proj_strtod.c optargpm.h nad2bin_SOURCES = nad2bin.c geod_SOURCES = geod.c geod_set.c geod_interface.c geod_interface.h + +gie_SOURCES = gie.c proj_strtod.c optargpm.h multistresstest_SOURCES = multistresstest.c test228_SOURCES = test228.c geodtest_SOURCES = geodtest.c -proj_LDADD = libproj.la -cs2cs_LDADD = libproj.la cct_LDADD = libproj.la -nad2bin_LDADD = libproj.la +cs2cs_LDADD = libproj.la geod_LDADD = libproj.la +proj_LDADD = libproj.la +nad2bin_LDADD = libproj.la + +gie_LDADD = libproj.la multistresstest_LDADD = libproj.la @THREAD_LIB@ test228_LDADD = libproj.la @THREAD_LIB@ geodtest_LDADD = libproj.la diff --git a/src/bin_gie.cmake b/src/bin_gie.cmake new file mode 100644 index 00000000..ca6dde0e --- /dev/null +++ b/src/bin_gie.cmake @@ -0,0 +1,9 @@ +set(GIE_SRC gie.c proj_strtod.c) +set(GIE_INCLUDE optargpm.h) + +source_group("Source Files\\Bin" FILES ${GIE_SRC}) + +add_executable(gie ${GIE_SRC} ${GIE_INCLUDE}) +target_link_libraries(gie ${PROJ_LIBRARIES}) +install(TARGETS gie + RUNTIME DESTINATION ${BINDIR}) diff --git a/src/gie.c b/src/gie.c new file mode 100644 index 00000000..adfc4e0f --- /dev/null +++ b/src/gie.c @@ -0,0 +1,722 @@ +/*********************************************************************** + + gie - The Geospatial Integrity Investigation Environment + +************************************************************************ + +The Geospatial Integrity Investigation Environment "gie" is a modest +regression testing environment for the PROJ.4 transformation library. + +Its primary design goal was to be able to replace those thousands of +lines of regression testing code that are (at time of writing) part +of PROJ.4, while not requiring any other kind of tooling than the same +C compiler already employed for compiling the library. + +The basic functionality of the gie command language is implemented +through just 3 command verbs: + +OPERATION, which defines the PROJ.4 operation to test, +ACCEPT, which defines the input coordinate to read, and +EXPECT, which defines the result to expect. + +E.g: + +operation +proj=utm +zone=32 +ellps=GRS80 +accept 12 55 +expect 691_875.632_14 6_098_907.825_05 + +Note that gie accepts the underscore ("_") as a thousands separator. +It is not required (in fact, it is entirely ignored by the input +routine), but it significantly improves the readability of the very +long strings of numbers typically required in projected coordinates. + +By default, gie considers the EXPECTation met, if the result comes to +within 0.5 mm of the expected. This default can be changed using the +TOLERANCE command verb (and yes, I know, linguistically speaking, both +"operation" and "tolerance" are nouns, not verbs). See the first +few hundred lines of the "builtins.gie" test file for more details of +the command verbs available (verbs of both the VERBal and NOUNistic +persuation). + +-- + +But more importantly than being an acronym for "Geospatial Integrity +Investigation Environment", gie were also the initials, user id, and +USGS email address of Gerald Ian Evenden (1935--2016), the geospatial +visionary, who, already in the 1980s, started what was to become the +PROJ.4 of today. + +Gerald's clear vision was that map projections are *just special +functions*. Some of them rather complex, most of them of two variables, +but all of them *just special functions*, and not particularly more +special than the sin(), cos(), tan(), and hypot() already available in +the C standard library. + +And hence, *they should not be particularly much harder to use*, for a +programmer, than the sin()s, tan()s and hypot()s so readily available. + +Gerald's ingenuity also showed in the implementation of the vision, +where he devised a highly comprehensible, yet simple, system of key-value +pairs for parameterising a map projection, and the highly flexible +PJ struct, storing run-time compiled versions of those key-value pairs, +hence making a map projection function call, pj_fwd(PJ, point), as easy +as a traditional function call like hypot(x,y). + +While today, we may have more formally well defined metadata systems +(most prominent the OGC WKT representation), nothing comes close being +as easily readable ("human compatible") as Gerald's key-value system. +This system in particular, and the PROJ.4 system in general, was +Gerald's great gift to anyone using and/or communicating about geodata. + +It is only reasonable to name a program keeping an eye on the integrity +of the PROJ.4 system in honour of Gerald. So in honour, and hopefully +also in the spirit, of Gerald Ian Evenden (1935--2016), this is the +Geospatial Integrity Investigation Environment. + +************************************************************************ + +Thomas Knudsen, thokn@sdfe.dk, 2017-10-01/2017-10-08 + +************************************************************************ + +* Copyright (c) 2017 Thomas Knudsen +* Copyright (c) 2017, SDFE +* +* Permission is hereby granted, free of charge, to any person obtaining a +* copy of this software and associated documentation files (the "Software"), +* to deal in the Software without restriction, including without limitation +* the rights to use, copy, modify, merge, publish, distribute, sublicense, +* and/or sell copies of the Software, and to permit persons to whom the +* Software is furnished to do so, subject to the following conditions: +* +* The above copyright notice and this permission notice shall be included +* in all copies or substantial portions of the Software. +* +* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL +* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +* DEALINGS IN THE SOFTWARE. + +***********************************************************************/ + +#include "optargpm.h" + +#include <proj.h> +#include "proj_internal.h" +#include "projects.h" + +#include <stdio.h> +#include <stdlib.h> +#include <stdarg.h> + +#include <string.h> +#include <ctype.h> + +#include <math.h> +#include <errno.h> + + + +/* from proj_strtod.c */ +double proj_strtod(const char *str, char **endptr); +double proj_atof(const char *str); + +static char *column (char *buf, int n); +int main(int argc, char **argv); + +static int process_file (char *fname); +static int errmsg (int errlev, char *msg, ...); +static int get_inp (FILE *f, char *inp, int size); +static int get_cmnd (char *inp, char *cmnd, int len); +static char *get_args (char *inp); +static int dispatch (char *cmnd, char *args); + + + +#define SKIP -1 + +typedef struct { + char operation[10000]; + PJ *P; + PJ_COORD a, b, c, e; + PJ_DIRECTION dir; + int verbosity; + int nargs; + int op_id; + int op_ok, op_ko; + int total_ok, total_ko; + int grand_ok, grand_ko; + double tolerance; + char *curr_file; + FILE *fout; +} gie_ctx; + +gie_ctx T = {{""}, 0, {{0,0,0,0}}, {{0,0,0,0}}, {{0,0,0,0}}, {{0,0,0,0}}, PJ_FWD, 1, 0, 0,0,0,0,0,0,0, 0.0005, 0, 0}; + +OPTARGS *o; + + + +size_t tol_lineno = 0; +size_t lineno = 0; +size_t level = 0; +char delim[] = {"-------------------------------------------------------------------------------\n"}; +char DELIM[] = {"===============================================================================\n"}; + + +#define CMDLEN 25000 + +int nfiles = 0; + + +static const char usage[] = { + "--------------------------------------------------------------------------------\n" + "Usage: %s [-options]... infile...\n" + "--------------------------------------------------------------------------------\n" + "Options:\n" + "--------------------------------------------------------------------------------\n" + " -h Help: print this usage information\n" + " -o /path/to/file Specify output file name\n" + " -v Verbose: Provide non-essential informational output.\n" + " Repeat -v for more verbosity (e.g. -vv)\n" + " -q Quiet: Opposite of verbose. In quiet mode not even errors\n" + " are reported. Only interaction is through the return code\n" + " (0 on success, non-zero indicates number of FAILED tests)\n" + "--------------------------------------------------------------------------------\n" + "Long Options:\n" + "--------------------------------------------------------------------------------\n" + " --output Alias for -o\n" + " --verbose Alias for -v\n" + " --help Alias for -h\n" + "--------------------------------------------------------------------------------\n" + "Examples:\n" + "--------------------------------------------------------------------------------\n" + "1. Run all tests in file \"corner-cases.gie\", providing much extra information\n" + " gie -vvvv corner-cases.gie\n" + "2. Run all tests in files \"foo\" and \"bar\", providing info on failures only\n" + " gie foo bar\n" + "--------------------------------------------------------------------------------\n" +}; + +int main (int argc, char **argv) { + int i; + const char *longflags[] = {"v=verbose", "q=quiet", "h=help", 0}; + const char *longkeys[] = {"o=output", 0}; + + o = opt_parse (argc, argv, "hvq", "o", longflags, longkeys); + if (0==o) + return 0; + + if (opt_given (o, "h")) { + printf (usage, o->progname); + return 0; + } + + + + T.verbosity = opt_given (o, "q"); + if (T.verbosity) + T.verbosity = -1; + if (T.verbosity != -1) + T.verbosity = opt_given (o, "v") + 1; + + T.fout = stdout; + if (opt_given (o, "o")) + T.fout = fopen (opt_arg (o, "output"), "rt"); + if (0==T.fout) { + fprintf (stderr, "%s: Cannot open '%s' for output\n", o->progname, opt_arg (o, "output")); + free (o); + return 1; + } + + if (0==o->fargc) { + if (T.verbosity==-1) + return -1; + fprintf (T.fout, "Nothing to do\n"); + return 0; + } + + for (i = 0; i < o->fargc; i++) + process_file (o->fargv[i]); + + if (T.verbosity > 0) { + if (o->fargc > 1) + fprintf (T.fout, "%sGrand total: %d. Success: %d, Failure: %d\n", delim, T.grand_ok+T.grand_ko, T.grand_ok, T.grand_ko); + printf (delim); + } + else + if (T.grand_ko) + fprintf (T.fout, "Failures: %d", T.grand_ko); + + if (stdout != T.fout) + fclose (T.fout); + + free (o); + return T.grand_ko; +} + + + + + +static int process_file (char *fname) { + FILE *f; + char inp[CMDLEN]; + char cmnd[1000]; + char *args; + + lineno = level = 0; + T.op_ok = T.total_ok = 0; + T.op_ko = T.total_ko = 0; + + f = fopen (fname, "rt"); + if (0==f) { + if (T.verbosity > 0) { + fprintf (T.fout, "%sCannot open spec'd input file '%s' - bye!\n", delim, fname); + return 2; + } + errmsg (2, "Cannot open spec'd input file '%s' - bye!\n", fname); + } + if (T.verbosity > 0) + fprintf (T.fout, "%sReading file '%s'\n", delim, fname); + T.curr_file = fname; + while (get_inp(f, inp, CMDLEN)) { + int len; + + if (feof(f)) + break; + len = get_cmnd (inp, cmnd, 1000); + if (len>=999) { + errmsg (2, "Command verb too long: '%s' - bye!\n", cmnd); + proj_destroy (T.P); + T.P = 0; + return 0; + + } + args = get_args (inp); + if (SKIP==dispatch (cmnd, args)) + return proj_destroy (T.P), T.P = 0, 0; + } + fclose (f); + + T.grand_ok += T.total_ok; + T.grand_ko += T.total_ko; + if (T.verbosity > 0) + fprintf (T.fout, "%stotal: %2d tests succeeded, %2d tests %s\n", delim, T.total_ok, T.total_ko, T.total_ko? "FAILED!": "failed."); + + if (level==0) + return errmsg (-3, "File '%s':Missing 'BEGIN' cmnd - bye!\n", fname); + if (level && level%2) + return errmsg (-4, "File '%s':Missing 'END' cmnd - bye!\n", fname); + return 0; +} + + + + + + +/* return a pointer to the n'th column of buf or a pointer to the terminating 0 if less than n */ +static char *column (char *buf, int n) { + int i; + if (n <= 0) + return buf; + for (i = 0; i < n; i++) { + while (isspace(*buf)) + buf++; + if (i == n - 1) + break; + while ((0 != *buf) && !isspace(*buf)) + buf++; + } + return buf; +} + + + + +static int banner (char *args) { + char dots[] = {"..."}, nodots[] = {""}, *thedots = nodots; + if (T.total_ko > 0 && T.op_ko==0) + printf ("\n\n"); + if (strlen(args) > 70) + thedots = dots; + fprintf (T.fout, "%s%-70.70s%s\n", delim, args, thedots); + return 0; +} + + + + + + +static int tolerance (char *args) { + char *endp = args; + T.tolerance = proj_strtod (endp, &endp); + if (HUGE_VAL==T.tolerance) { + T.tolerance = 0.0005; + return 1; + } + while (isspace (*endp)) + endp++; + + if (0==strcmp(endp, "km")) + T.tolerance *= 1000; + else if (0==strcmp(endp, "m")) + T.tolerance *= 1; + else if (0==strcmp(endp, "dm")) + T.tolerance /= 10; + else if (0==strcmp(endp, "cm")) + T.tolerance /= 100; + else if (0==strcmp(endp, "mm")) + T.tolerance /= 1000; + else if (0==strcmp(endp, "um")) + T.tolerance /= 1e6; + else if (0==strcmp(endp, "nm")) + T.tolerance /= 1e9; + else + T.tolerance /= 1000; /* If no unit, assume mm */ + return 0; +} + + +static int direction (char *args) { + char *endp = args; + while (isspace (*endp)) + endp++; + switch (*endp) { + case 'F': + case 'f': + T.dir = PJ_FWD; + break; + case 'I': + case 'i': + case 'R': + case 'r': + T.dir = PJ_INV; + break; + default: + return 1; + } + return 0; +} + + + + +static void finish_previous_operation () { + if (T.verbosity > 1 && T.op_id > 1 && T.op_ok+T.op_ko) + fprintf (T.fout, "%s %d tests succeeded, %d tests %s\n", delim, T.op_ok, T.op_ko, T.op_ko? "FAILED!": "failed."); +} + +static int operation (char *args) { + T.op_id++; + strcpy (&(T.operation[0]), args); + if (T.verbosity > 1) { + finish_previous_operation (args); + banner (args); + } + /* if (0==T.op_ko) + printf ("%d\n", (int) tol_lineno); */ + T.op_ok = 0; + T.op_ko = 0; + + direction ("forward"); + tolerance ("0.5"); + + if (T.P) + proj_destroy (T.P); + T.P = proj_create (0, args); + if (0==T.P) + return errmsg(3, "Invalid operation definition!\n"); + return 0; +} + + +static PJ_COORD torad_if_needed (PJ *P, PJ_DIRECTION dir, PJ_COORD a) { + enum pj_io_units u = P->left; + PJ_COORD c; + if (dir==PJ_INV) + u = P->right; + if (u==PJ_IO_UNITS_CLASSIC || u==PJ_IO_UNITS_METERS) + return a; + + if (u==PJ_IO_UNITS_RADIANS) { + c.lpz.lam = proj_torad (T.a.lpz.lam); + c.lpz.phi = proj_torad (T.a.lpz.phi); + } + + return c; +} + + +static int accept (char *args) { + int n, i; + char *endp = args; + T.a = proj_coord (0,0,0,0); + n = 4; + for (i = 0; i < 4; i++) { + T.a.v[i] = proj_strtod (endp, &endp); + if (HUGE_VAL==T.a.v[i]) { + n--; + T.a.v[i] = 0; + } + } + T.a = torad_if_needed (T.P, T.dir, T.a); + if (T.verbosity > 3) + printf ("# %s", args); + return 0; +} + + + +static int roundtrip (char *args) { + int ntrips; + double d, r, ans; + char *endp; + ans = proj_strtod (args, &endp); + ntrips = ans==HUGE_VAL? 100: fabs(ans); + d = proj_strtod (endp, &endp); + d = d==HUGE_VAL? T.tolerance: d / 1000; + r = proj_roundtrip (T.P, PJ_FWD, ntrips, T.a); + if (r > d) { + if (T.verbosity > -1) { + if (0==T.op_ko && T.verbosity < 2) + banner (T.operation); + fprintf (T.fout, T.op_ko? " -----\n": delim); + fprintf (T.fout, " FAILURE in %s(%d):\n", opt_strip_path (T.curr_file), (int) lineno); + fprintf (T.fout, " roundtrip deivation: %.3f mm, expected: %.3f mm\n", 1000*r, 1000*d); + } + T.op_ko++; + T.total_ko++; + } + return 0; +} + +static int expect (char *args) { + double d; + enum pj_io_units unit; + char *endp = args; + int i; + + T.e = proj_coord (0,0,0,0); + T.b = proj_coord (0,0,0,0); + T.nargs = 4; + for (i = 0; i < 4; i++) { + T.e.v[i] = proj_strtod (endp, &endp); + if (HUGE_VAL==T.e.v[i]) { + T.nargs--; + T.e.v[i] = 0; + } + } + T.e = torad_if_needed (T.P, T.dir==PJ_FWD? PJ_INV:PJ_FWD, T.e); + + T.b = proj_trans_coord (T.P, T.dir, T.a); + T.b = torad_if_needed (T.P, T.dir==PJ_FWD? PJ_INV:PJ_FWD, T.b); + + if (T.nargs < 2) { + T.op_ko++; + T.total_ko++; + if (T.verbosity > -1) { + if (0==T.op_ko && T.verbosity < 2) + banner (T.operation); + fprintf (T.fout, T.op_ko? " -----\n": delim); + fprintf (T.fout, " FAILURE in %s(%d):\n Too few args: %s\n", opt_strip_path (T.curr_file), (int) lineno, args); + } + return 1; + } + + unit = T.dir==PJ_FWD? T.P->right: T.P->left; + if (PJ_IO_UNITS_CLASSIC==unit) + unit = PJ_IO_UNITS_METERS; + + if (unit==PJ_IO_UNITS_RADIANS) + d = proj_lp_dist (T.P, T.b.lp, T.e.lp); + else + d = proj_xyz_dist (T.b.xyz, T.e.xyz); + + if (d > T.tolerance) { + if (d > 10) + d = 9.999999; + if (T.verbosity > -1) { + if (0==T.op_ko && T.verbosity < 2) + banner (T.operation); + fprintf (T.fout, T.op_ko? " -----\n": delim); + + fprintf (T.fout, " FAILURE in %s(%d):\n", opt_strip_path (T.curr_file), (int) lineno); + fprintf (T.fout, " expected: %s\n", args); + fprintf (T.fout, " got: %.9f %.9f", T.b.xy.x, T.b.xy.y); + if (T.nargs > 2) + fprintf (T.fout, " %.9f", T.b.xyz.z); + if (T.nargs > 3) + fprintf (T.fout, " %.9f", T.b.xyzt.t); + fprintf (T.fout, "\n"); + fprintf (T.fout, " deviation: %.3f mm, expected: %.3f mm\n", 1000*d, 1000*T.tolerance); + } + T.op_ko++; + T.total_ko++; + } + else { + T.op_ok++; + T.total_ok++; + } + return 0; +} + + + + + + +static int verbose (char *args) { + int i = proj_atof (args); + + /* if -q/--quiet flag has been given, we do nothing */ + if (T.verbosity < 0) + return 0; + + if (strlen (args)) + T.verbosity = i; + else + T.verbosity++; + return 0; +} + +static int comment (char *args) { + (void) args; + return 0; +} + + +static int echo (char *args) { + fprintf (T.fout, "%s\n", args); + return 0; +} + + + +static int dispatch (char *cmnd, char *args) { + if (0==level%2) { + if (0==strcmp (cmnd, "BEGIN")) + level++; + return 0; + } + if (0==stricmp (cmnd, "OPERATION")) return operation (args); + if (0==stricmp (cmnd, "ACCEPT")) return accept (args); + if (0==stricmp (cmnd, "EXPECT")) return expect (args); + if (0==stricmp (cmnd, "ROUNDTRIP")) return roundtrip (args); + if (0==stricmp (cmnd, "BANNER")) return banner (args); + if (0==stricmp (cmnd, "VERBOSE")) return verbose (args); + if (0==stricmp (cmnd, "DIRECTION")) return direction (args); + if (0==stricmp (cmnd, "TOLERANCE")) return tolerance (args); + if (0==stricmp (cmnd, "ECHO")) return echo (args); + if (0==strcmp (cmnd, "END")) return finish_previous_operation (args), level++, 0; + if ('#'==cmnd[0]) return comment (args); + return 0; +} + + + + + + + + +static int errmsg (int errlev, char *msg, ...) { + va_list args; + va_start(args, msg); + vfprintf(stdout, msg, args); + va_end(args); + if (errlev) + errno = errlev; + return errlev; +} + +#define skipspace(f, c) \ + do { \ + while (isspace (c=fgetc(f)) && !feof(f)){ \ + if ('\n'==c) lineno++; \ + } \ + if (feof(f)) \ + break; \ + } while (ungetc(c, f), 0) + +#define skipline(f, c) \ + do { \ + while ((c=fgetc(f)) && !feof(f)) { \ + if ((c=='\r') || (c=='\n')) \ + break; \ + } \ + skipspace (f, c); \ + } while (0) + + +/* skip whitespace at continuation line */ +#define continuation(f, buf, c) \ + if ((c=='\r')||(c=='\n')) { \ + if (c=='\n') lineno++; \ + next--; \ + while (isspace (c=fgetc(f)) && !feof(f)); \ + } + +static int get_inp (FILE *f, char *inp, int size) { + char *next; + int c, esc; + char *endp = inp + size - 2; + + skipspace (f, c); + + for (c = esc = 0, next = inp; !feof(f); ) { + c = fgetc(f); + if (esc) { + continuation (f, next, c); + esc = 0; + /* handle escape sequences here */ + switch (c) { + case '\\': c = '\\'; break; + default: (void) c; + } + } + if (c=='\r') + break; + if (c=='\n') { + lineno++; + break; + } + + *next++ = c; + if ('\\'==c) + esc = 1; + if (feof(f) || (next==endp)) + break; + } + *(next) = 0; + return strlen(inp); +} + +static int get_cmnd (char *inp, char *cmnd, int len) { + cmnd[0] = 0; + while (isspace(*inp++)); + inp--; + while (len-- && !isspace(*inp) && *inp) + *cmnd++ = *inp++; + *cmnd = 0; + return len; +} + +static char *get_args (char *inp) { + char *args = inp; + while (isspace(*args++)) + if (0==*args) + return args; + while (!isspace(*++args)) + if (0==*args) + return args; + while (isspace(*args++)) + if (0==*args) + return args; + return --args; +} diff --git a/src/makefile.vc b/src/makefile.vc index ac5acf15..fdf03bd3 100644 --- a/src/makefile.vc +++ b/src/makefile.vc @@ -71,12 +71,15 @@ PROJEXE_OBJ = proj.obj gen_cheb.obj p_series.obj emess.obj CS2CSEXE_OBJ = cs2cs.obj gen_cheb.obj p_series.obj emess.obj GEODEXE_OBJ = geod.obj geod_set.obj geod_interface.obj emess.obj CCTEXE_OBJ = cct.obj proj_strtod.obj +GIEEXE_OBJ = gie.obj proj_strtod.obj + MULTISTRESSTEST_OBJ = multistresstest.obj PROJ_DLL = proj$(VERSION).dll PROJ_EXE = proj.exe CS2CS_EXE = cs2cs.exe GEOD_EXE = geod.exe CCT_EXE = cct.exe +GIE_EXE = gie.exe NAD2BIN_EXE = nad2bin.exe MULTISTRESSTEST_EXE = multistresstest.exe @@ -85,7 +88,7 @@ CFLAGS = /nologo -I. -DPROJ_LIB=\"$(PROJ_LIB_DIR)\" \ default: all -all: proj.lib $(PROJ_EXE) $(CS2CS_EXE) $(GEOD_EXE) $(CCT_EXE) $(NAD2BIN_EXE) +all: proj.lib $(PROJ_EXE) $(CS2CS_EXE) $(GEOD_EXE) $(CCT_EXE) $(GIE_EXE) $(NAD2BIN_EXE) proj.lib: $(LIBOBJ) if exist proj.lib del proj.lib @@ -114,6 +117,10 @@ $(CCT_EXE): $(CCTEXE_OBJ) $(EXE_PROJ) cl $(CCTEXE_OBJ) $(EXE_PROJ) if exist $(CCT_EXE).manifest mt -manifest $(CCT_EXE).manifest -outputresource:$(CCT_EXE);1 +$(GIE_EXE): $(GIEEXE_OBJ) $(EXE_PROJ) + cl $(GIEEXE_OBJ) $(EXE_PROJ) + if exist $(GIE_EXE).manifest mt -manifest $(GIE_EXE).manifest -outputresource:$(GIE_EXE);1 + $(NAD2BIN_EXE): nad2bin.obj emess.obj $(EXE_PROJ) cl nad2bin.obj emess.obj $(EXE_PROJ) diff --git a/src/optargpm.h b/src/optargpm.h index 6be2c9ef..4933cd2d 100644 --- a/src/optargpm.h +++ b/src/optargpm.h @@ -372,7 +372,8 @@ static int opt_ordinal (OPTARGS *opt, char *option) { } } - + /* kill some potential compiler warnings about unused functions */ + (void) opt_eof (0); return 0; } @@ -397,12 +398,23 @@ char *opt_arg (OPTARGS *opt, char *option) { return opt->optarg[ordinal]; } +char *opt_strip_path (char *full_name) { + char *last_path_delim, *stripped_name = full_name; + + last_path_delim = strrchr (stripped_name, '\\'); + if (last_path_delim > stripped_name) + stripped_name = last_path_delim + 1; + + last_path_delim = strrchr (stripped_name, '/'); + if (last_path_delim > stripped_name) + stripped_name = last_path_delim + 1; + return stripped_name; +} /* split command line options into options/flags ("-" style), projdefs ("+" style) and input file args */ OPTARGS *opt_parse (int argc, char **argv, const char *flags, const char *keys, const char **longflags, const char **longkeys) { int i, j; OPTARGS *o; - char *last_path_delim; o = (OPTARGS *) calloc (1, sizeof(OPTARGS)); if (0==o) @@ -410,14 +422,15 @@ OPTARGS *opt_parse (int argc, char **argv, const char *flags, const char *keys, o->argc = argc; o->argv = argv; - o->progname = argv[0]; + o->progname = opt_strip_path (argv[0]); +/* o->progname = argv[0]; last_path_delim = strrchr (argv[0], '\\'); if (last_path_delim > o->progname) o->progname = last_path_delim; last_path_delim = strrchr (argv[0], '/'); if (last_path_delim > o->progname) o->progname = last_path_delim; - +*/ /* Reset all flags */ for (i = 0; i < (int) strlen (flags); i++) diff --git a/src/proj_strtod.c b/src/proj_strtod.c index e9942e5c..c771f2a6 100644 --- a/src/proj_strtod.c +++ b/src/proj_strtod.c @@ -86,6 +86,7 @@ Thomas Knudsen, thokn@sdfe.dk, 2017-01-17/2017-09-18 ***********************************************************************/ +#include <string.h> /* for strchr */ #include <errno.h> #include <ctype.h> #include <float.h> /* for HUGE_VAL */ @@ -96,14 +97,16 @@ double proj_atof(const char *str); double proj_strtod(const char *str, char **endptr) { - double number = 0; + double number = 0, integral_part = 0; int exponent = 0; + int fraction_is_nonzero = 0; int sign = 0; char *p = (char *) str; int n = 0; - int num_digits_total = 0; - int num_digits_after_comma = 0; - + int num_digits_total = 0; + int num_digits_after_comma = 0; + int num_prefixed_zeros = 0; + if (0==str) { errno = EFAULT; if (endptr) @@ -123,10 +126,10 @@ double proj_strtod(const char *str, char **endptr) { return HUGE_VAL; } - /* Then handle optional prefixed sign */ + /* Then handle optional prefixed sign and skip prefix zeros */ switch (*p) { case '-': - sign = -1, p++; break; + sign = -1, p++; break; case '+': sign = 1, p++; break; default: @@ -137,7 +140,11 @@ double proj_strtod(const char *str, char **endptr) { errno = EINVAL; return HUGE_VAL; } - + + /* skip prefixed zeros */ + while ('0'==*p || '_'==*p) + p++; + /* Now expect a (potentially zero-length) string of digits */ while (isdigit(*p) || ('_'==*p)) { if ('_'==*p) { @@ -148,23 +155,45 @@ double proj_strtod(const char *str, char **endptr) { p++; num_digits_total++; } - + integral_part = number; + /* Do we have a fractional part? */ if ('.'==*p) { p++; + + /* keep on skipping prefixed zeros (i.e. allow writing 1e-20 */ + /* as 0.00000000000000000001 without losing precision) */ + if (0==integral_part) + while ('0'==*p || '_'==*p) { + if ('0'==*p) + num_prefixed_zeros++; + p++; + } + /* if the next character is nonnumeric, we have reached the end */ + if (0==strchr ("0123456789eE+-", *p)) + return integral_part; + while (isdigit(*p) || '_'==*p) { - if ('_'==*p) { + /* Don't let pathologically long fractions destroy precision */ + if ('_'==*p || num_digits_total > 17) { p++; continue; } + number = number * 10. + (*p - '0'); + if (*p!='0') + fraction_is_nonzero = 1; p++; num_digits_total++; num_digits_after_comma++; } - exponent = -num_digits_after_comma; + /* Avoid having long zero-tails (4321.000...000) destroy precision */ + if (fraction_is_nonzero) + exponent = -(num_digits_after_comma + num_prefixed_zeros); + else + number = integral_part; } /* non-digit */ @@ -221,8 +250,11 @@ double proj_strtod(const char *str, char **endptr) { return HUGE_VAL; } - number *= pow (10, exponent); + /* on some platforms pow() is very slow - so don't call it if exponent==0 */ + if (exponent) + number *= pow (10, exponent); + /* Did we run into an infinity? */ if (fabs(number) > DBL_MAX) errno = ERANGE; diff --git a/test/gie/builtins.gie b/test/gie/builtins.gie new file mode 100644 index 00000000..26998db6 --- /dev/null +++ b/test/gie/builtins.gie @@ -0,0 +1,4678 @@ +BEGIN + +=============================================================================== +Albers Equal Area + Conic Sph&Ell + lat_1= lat_2= +=============================================================================== +------------------------------------------------------------------------------- +operation +proj=aea +ellps=GRS80 +lat_1=0 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222571.608757106 110653.326743030 +accept 2 -1 +expect 222706.306508391 -110484.267144400 +accept -2 1 +expect -222571.608757106 110653.326743030 +accept -2 -1 +expect -222706.306508391 -110484.267144400 + +direction inverse +accept 200 100 +expect 0.001796631 0.000904369 +accept 200 -100 +expect 0.001796630 -0.000904370 +accept -200 100 +expect -0.001796631 0.000904369 +accept -200 -100 +expect -0.001796630 -0.000904370 + +------------------------------------------------------------------------------- +operation +proj=aea +R=6400000 +lat_1=0 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223334.085170885 111780.431884472 +accept 2 -1 +expect 223470.154991687 -111610.339430990 +accept -2 1 +expect -223334.085170885 111780.431884472 +accept -2 -1 +expect -223470.154991687 -111610.339430990 + +direction inverse +accept 200 100 +expect 0.001790494 0.000895246 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790494 0.000895246 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Azimuthal Equidistant + Azi, Sph&Ell + lat_0 guam +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=aeqd +ellps=GRS80 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222616.522190052 110596.996549550 +accept 2 -1 +expect 222616.522190052 -110596.996549550 +accept -2 1 +expect -222616.522190052 110596.996549550 +accept -2 -1 +expect -222616.522190052 -110596.996549550 + +direction inverse +accept 200 100 +expect 0.001796631 0.000904369 +accept 200 -100 +expect 0.001796631 -0.000904369 +accept -200 100 +expect -0.001796631 0.000904369 +accept -200 -100 +expect -0.001796631 -0.000904369 + +------------------------------------------------------------------------------- +operation +proj=aeqd +R=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223379.456047271 111723.757570854 +accept 2 -1 +expect 223379.456047271 -111723.757570854 +accept -2 1 +expect -223379.456047271 111723.757570854 +accept -2 -1 +expect -223379.456047271 -111723.757570854 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Airy + Misc Sph, no inv. + no_cut lat_b= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=airy +a=6400000 +lat_1=0 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 189109.886908621 94583.752387504 +accept 2 -1 +expect 189109.886908621 -94583.752387504 +accept -2 1 +expect -189109.886908621 94583.752387504 +accept -2 -1 +expect -189109.886908621 -94583.752387504 + + +=============================================================================== +Aitoff + Misc Sph +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=aitoff +R=6400000 +lat_1=0 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223379.458811696 111706.742883853 +accept 2 -1 +expect 223379.458811696 -111706.742883853 +accept -2 1 +expect -223379.458811696 111706.742883853 +accept -2 -1 +expect -223379.458811696 -111706.742883853 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Mod. Stereographic of Alaska + Azi(mod) +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=alsk +ellps=clrk66 +------------------------------------------------------------------------------- +tolerance 0.00001 +accept -160.000000000 55.000000000 +expect -513253.146950842 -968928.031867943 +accept -160.000000000 70.000000000 +expect -305001.133897637 687494.464958651 +accept -145.000000000 70.000000000 +expect 266454.305088600 683423.477493031 +accept -145.000000000 60.000000000 +expect 389141.322439244 -423913.251230397 + +direction inverse +accept -500000.000000000 -950000.000000000 +expect -159.830804303 55.183195262 +accept -305000.000000000 700000.000000000 +expect -160.042203156 70.111086864 +accept 250000.000000000 700000.000000000 +expect -145.381043551 70.163900908 +accept 400000.000000000 -400000.000000000 +expect -144.758985461 60.202929201 + +------------------------------------------------------------------------------- +operation +proj=alsk +R=6370997 +------------------------------------------------------------------------------- +tolerance 0.0001 +accept -160.000000000 55.000000000 +expect -511510.319410844 -967150.991676078 +accept -160.000000000 70.000000000 +expect -303744.771290369 685439.745941123 +accept -145.000000000 70.000000000 +expect 265354.974019663 681386.892874573 +accept -145.000000000 60.000000000 +expect 387711.995394027 -422980.685505463 + +direction inverse +accept -500000.000000000 -950000.000000000 +expect -159.854014458 55.165653849 +accept -305000.000000000 700000.000000000 +expect -160.082332372 70.128307618 +accept 250000.000000000 700000.000000000 +expect -145.347827407 70.181566919 +accept 400000.000000000 -400000.000000000 +expect -144.734239827 60.193564733 + + +=============================================================================== +Apian Globular I + Misc Sph, no inv. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=apian +a=6400000 +lat_1=0 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223374.577355253 111701.072127637 +accept 2 -1 +expect 223374.577355253 -111701.072127637 +accept -2 1 +expect -223374.577355253 111701.072127637 +accept -2 -1 +expect -223374.577355253 -111701.072127637 + + +=============================================================================== +August Epicycloidal + Misc Sph, no inv. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=august +a=6400000 +lat_1=0 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223404.978180972 111722.340289763 +accept 2 -1 +expect 223404.978180972 -111722.340289763 +accept -2 1 +expect -223404.978180972 111722.340289763 +accept -2 -1 +expect -223404.978180972 -111722.340289763 + + +=============================================================================== +Bacon Globular + Misc Sph, no inv. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=bacon +a=6400000 +lat_1=0 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223334.132555965 175450.725922666 +accept 2 -1 +expect 223334.132555965 -175450.725922666 +accept -2 1 +expect -223334.132555965 175450.725922666 +accept -2 -1 +expect -223334.132555965 -175450.725922666 + + +=============================================================================== +Bipolar conic of western hemisphere + Conic Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=bipc +ellps=GRS80 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 2452160.217725756 -14548450.759654747 +accept 2 -1 +expect 2447915.213725341 -14763427.212798730 +accept -2 1 +expect 2021695.522934909 -14540413.695283702 +accept -2 -1 +expect 2018090.503004699 -14755620.651414108 + +direction inverse +accept 200 100 +expect -73.038700285 17.248118466 +accept 200 -100 +expect -73.037303739 17.249414978 +accept -200 100 +expect -73.035893173 17.245536403 +accept -200 -100 +expect -73.034496627 17.246832896 + +------------------------------------------------------------------------------- +operation +proj=bipc +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 2460565.740974965 -14598319.989330800 +accept 2 -1 +expect 2456306.185935200 -14814033.339502094 +accept -2 1 +expect 2028625.497819099 -14590255.375482792 +accept -2 -1 +expect 2025008.120589143 -14806200.018759441 + +direction inverse +accept 200 100 +expect -73.038693105 17.248116270 +accept 200 -100 +expect -73.037301330 17.249408353 +accept -200 100 +expect -73.035895582 17.245543028 +accept -200 -100 +expect -73.034503807 17.246835092 + + +=============================================================================== +Boggs Eumorphic + PCyl., no inv., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=boggs +a=6400000 +lat_1=0 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 211949.700808182 117720.998305411 +accept 2 -1 +expect 211949.700808182 -117720.998305411 +accept -2 1 +expect -211949.700808182 117720.998305411 +accept -2 -1 +expect -211949.700808182 -117720.998305411 + + +=============================================================================== +Bonne (Werner lat_1=90) + Conic Sph&Ell + lat_1= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=bonne +ellps=GRS80 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222605.296097157 55321.139565495 +accept 2 -1 +expect 222605.296099239 -165827.647799052 +accept -2 1 +expect -222605.296097157 55321.139565495 +accept -2 -1 +expect -222605.296099239 -165827.647799052 + +direction inverse +accept 200 100 +expect 0.001796699 0.500904369 +accept 200 -100 +expect 0.001796698 0.499095631 +accept -200 100 +expect -0.001796699 0.500904369 +accept -200 -100 +expect -0.001796698 0.499095631 + +------------------------------------------------------------------------------- +operation +proj=bonne +R=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223368.115572528 55884.555246394 +accept 2 -1 +expect 223368.115574632 -167517.599369694 +accept -2 1 +expect -223368.115572528 55884.555246394 +accept -2 -1 +expect -223368.115574632 -167517.599369694 + +direction inverse +accept 200 100 +expect 0.001790562 0.500895246 +accept 200 -100 +expect 0.001790561 0.499104753 +accept -200 100 +expect -0.001790562 0.500895246 +accept -200 -100 +expect -0.001790561 0.499104753 + + +=============================================================================== +Cal Coop Ocean Fish Invest Lines/Stations + Cyl, Sph&Ell +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=calcofi +ellps=GRS80 +lat_1=0.5 +lat_2=2 +no_defs +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 508.444872150 -1171.764860418 +accept 2 -1 +expect 514.999168152 -1145.821981468 +accept -2 1 +expect 500.685384125 -1131.445377920 +accept -2 -1 +expect 507.369719137 -1106.178201483 + +direction inverse +accept 200 100 +expect -110.363307925 12.032056976 +accept 200 -100 +expect -98.455008863 18.698723643 +accept -200 100 +expect -207.447024504 81.314089279 +accept -200 -100 +expect -62.486322854 87.980755945 + +------------------------------------------------------------------------------- +operation +proj=calcofi +R=6400000 +lat_1=0.5 +lat_2=2 +no_defs +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 507.090507488 -1164.727375198 +accept 2 -1 +expect 513.686136375 -1138.999268217 +accept -2 1 +expect 499.336261476 -1124.435130997 +accept -2 -1 +expect 506.060570393 -1099.375665067 + +direction inverse +accept 200 100 +expect -110.305190410 12.032056976 +accept 200 -100 +expect -98.322360950 18.698723643 +accept -200 100 +expect -207.544906814 81.314089279 +accept -200 -100 +expect -62.576950372 87.980755945 + + +=============================================================================== +Cassini + Cyl, Sph&Ell +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=cass +ellps=GRS80 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222605.285776991 110642.229253999 +accept 2 -1 +expect 222605.285776991 -110642.229253999 +accept -2 1 +expect -222605.285776991 110642.229253999 +accept -2 -1 +expect -222605.285776991 -110642.229253999 + +direction inverse +accept 200 100 +expect 0.001796631 0.000904369 +accept 200 -100 +expect 0.001796631 -0.000904369 +accept -200 100 +expect -0.001796631 0.000904369 +accept -200 -100 +expect -0.001796631 -0.000904369 + +------------------------------------------------------------------------------- +operation +proj=cass +R=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223368.105203484 111769.145040586 +accept 2 -1 +expect 223368.105203484 -111769.145040586 +accept -2 1 +expect -223368.105203484 111769.145040586 +accept -2 -1 +expect -223368.105203484 -111769.145040586 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Central Cylindrical + Cyl, Sph +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=cc +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223402.144255274 111712.415540593 +accept 2 -1 +expect 223402.144255274 -111712.415540593 +accept -2 1 +expect -223402.144255274 111712.415540593 +accept -2 -1 +expect -223402.144255274 -111712.415540593 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Equal Area Cylindrical + Cyl, Sph&Ell + lat_ts= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=cea +ellps=GRS80 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222638.981586547 110568.812396267 +accept 2 -1 +expect 222638.981586547 -110568.812396266 +accept -2 1 +expect -222638.981586547 110568.812396267 +accept -2 -1 +expect -222638.981586547 -110568.812396266 + +direction inverse +accept 200 100 +expect 0.001796631 0.000904369 +accept 200 -100 +expect 0.001796631 -0.000904369 +accept -200 100 +expect -0.001796631 0.000904369 +accept -200 -100 +expect -0.001796631 -0.000904369 + +------------------------------------------------------------------------------- +operation +proj=cea +R=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223402.144255274 111695.401198614 +accept 2 -1 +expect 223402.144255274 -111695.401198614 +accept -2 1 +expect -223402.144255274 111695.401198614 +accept -2 -1 +expect -223402.144255274 -111695.401198614 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Chamberlin Trimetric + Misc Sph, no inv. + lat_1= lon_1= lat_2= lon_2= lat_3= lon_3= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=chamb +R=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect -27864.779586801 -223364.324593274 +accept 2 -1 +expect -251312.283053493 -223402.145526208 +accept -2 1 +expect -27864.785649105 223364.327328827 +accept -2 -1 +expect -251312.289116443 223402.142197287 + + +=============================================================================== +Collignon + PCyl, Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=collg +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 249872.921577930 99423.174788460 +accept 2 -1 +expect 254272.532301245 -98559.307760743 +accept -2 1 +expect -249872.921577930 99423.174788460 +accept -2 -1 +expect -254272.532301245 -98559.307760743 + +direction inverse +accept 200 100 +expect 0.001586797 0.001010173 +accept 200 -100 +expect 0.001586769 -0.001010182 +accept -200 100 +expect -0.001586797 0.001010173 +accept -200 -100 +expect -0.001586769 -0.001010182 + + +=============================================================================== +Compact Miller + Cyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=comill +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223402.144255274 110611.859089459 +accept 2 -1 +expect 223402.144255274 -110611.859089459 +accept -2 1 +expect -223402.144255274 110611.859089459 +accept -2 -1 +expect -223402.144255274 -110611.859089459 + +direction inverse +accept 200 100 +expect 0.001790493 0.000904107 +accept 200 -100 +expect 0.001790493 -0.000904107 +accept -200 100 +expect -0.001790493 0.000904107 +accept -200 -100 +expect -0.001790493 -0.000904107 + + +=============================================================================== +Craster Parabolic (Putnins P4) + PCyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=crast +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 218280.142056781 114306.045604280 +accept 2 -1 +expect 218280.142056781 -114306.045604280 +accept -2 1 +expect -218280.142056781 114306.045604280 +accept -2 -1 +expect -218280.142056781 -114306.045604280 + +direction inverse +accept 200 100 +expect 0.001832259 0.000874839 +accept 200 -100 +expect 0.001832259 -0.000874839 +accept -200 100 +expect -0.001832259 0.000874839 +accept -200 -100 +expect -0.001832259 -0.000874839 + + +=============================================================================== +Denoyer Semi-Elliptical + PCyl., no inv., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=denoy +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223377.422876954 111701.072127637 +accept 2 -1 +expect 223377.422876954 -111701.072127637 +accept -2 1 +expect -223377.422876954 111701.072127637 +accept -2 -1 +expect -223377.422876954 -111701.072127637 + + +=============================================================================== +Eckert I + PCyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=eck1 +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 204680.888202951 102912.178426065 +accept 2 -1 +expect 204680.888202951 -102912.178426065 +accept -2 1 +expect -204680.888202951 102912.178426065 +accept -2 -1 +expect -204680.888202951 -102912.178426065 + +direction inverse +accept 200 100 +expect 0.001943415 0.000971702 +accept 200 -100 +expect 0.001943415 -0.000971702 +accept -200 100 +expect -0.001943415 0.000971702 +accept -200 -100 +expect -0.001943415 -0.000971702 + + +=============================================================================== +Eckert II + PCyl. Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=eck2 +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 204472.870907960 121633.734975242 +accept 2 -1 +expect 204472.870907960 -121633.734975242 +accept -2 1 +expect -204472.870907960 121633.734975242 +accept -2 -1 +expect -204472.870907960 -121633.734975242 + +direction inverse +accept 200 100 +expect 0.001943415 0.000824804 +accept 200 -100 +expect 0.001943415 -0.000824804 +accept -200 100 +expect -0.001943415 0.000824804 +accept -200 -100 +expect -0.001943415 -0.000824804 + + +=============================================================================== +Eckert III + PCyl, Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=eck3 +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 188652.015721538 94328.919337031 +accept 2 -1 +expect 188652.015721538 -94328.919337031 +accept -2 1 +expect -188652.015721538 94328.919337031 +accept -2 -1 +expect -188652.015721538 -94328.919337031 + +direction inverse +accept 200 100 +expect 0.002120241 0.001060120 +accept 200 -100 +expect 0.002120241 -0.001060120 +accept -200 100 +expect -0.002120241 0.001060120 +accept -200 -100 +expect -0.002120241 -0.001060120 + + +=============================================================================== +Eckert IV + PCyl, Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=eck4 +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 188646.389356416 132268.540174065 +accept 2 -1 +expect 188646.389356416 -132268.540174065 +accept -2 1 +expect -188646.389356416 132268.540174065 +accept -2 -1 +expect -188646.389356416 -132268.540174065 + +direction inverse +accept 200 100 +expect 0.002120241 0.000756015 +accept 200 -100 +expect 0.002120241 -0.000756015 +accept -200 100 +expect -0.002120241 0.000756015 +accept -200 -100 +expect -0.002120241 -0.000756015 + + +=============================================================================== +Eckert V + PCyl, Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=eck5 +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 197031.392134061 98523.198847227 +accept 2 -1 +expect 197031.392134061 -98523.198847227 +accept -2 1 +expect -197031.392134061 98523.198847227 +accept -2 -1 +expect -197031.392134061 -98523.198847227 + +direction inverse +accept 200 100 +expect 0.002029979 0.001014989 +accept 200 -100 +expect 0.002029979 -0.001014989 +accept -200 100 +expect -0.002029979 0.001014989 +accept -200 -100 +expect -0.002029979 -0.001014989 + + +=============================================================================== +Eckert VI + PCyl, Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=eck6 +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 197021.605628992 126640.420733174 +accept 2 -1 +expect 197021.605628992 -126640.420733174 +accept -2 1 +expect -197021.605628992 126640.420733174 +accept -2 -1 +expect -197021.605628992 -126640.420733174 + +direction inverse +accept 200 100 +expect 0.002029979 0.000789630 +accept 200 -100 +expect 0.002029979 -0.000789630 +accept -200 100 +expect -0.002029979 0.000789630 +accept -200 -100 +expect -0.002029979 -0.000789630 + + +=============================================================================== +Equidistant Cylindrical (Plate Caree) + Cyl, Sph + lat_ts=[, lat_0=0] +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=eqc +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223402.144255274 111701.072127637 +accept 2 -1 +expect 223402.144255274 -111701.072127637 +accept -2 1 +expect -223402.144255274 111701.072127637 +accept -2 -1 +expect -223402.144255274 -111701.072127637 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Equidistant Conic + Conic, Sph&Ell + lat_1= lat_2= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=eqdc +ellps=GRS80 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222588.440269286 110659.134907347 +accept 2 -1 +expect 222756.836702042 -110489.578087221 +accept -2 1 +expect -222588.440269286 110659.134907347 +accept -2 -1 +expect -222756.836702042 -110489.578087221 + +direction inverse +accept 200 100 +expect 0.001796359 0.000904369 +accept 200 -100 +expect 0.001796358 -0.000904370 +accept -200 100 +expect -0.001796359 0.000904369 +accept -200 -100 +expect -0.001796358 -0.000904370 + +------------------------------------------------------------------------------- +operation +proj=eqdc +R=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223351.088175114 111786.108747174 +accept 2 -1 +expect 223521.200266735 -111615.970741241 +accept -2 1 +expect -223351.088175114 111786.108747174 +accept -2 -1 +expect -223521.200266735 -111615.970741241 + +direction inverse +accept 200 100 +expect 0.001790221 0.000895246 +accept 200 -100 +expect 0.001790220 -0.000895247 +accept -200 100 +expect -0.001790221 0.000895246 +accept -200 -100 +expect -0.001790220 -0.000895247 + + +=============================================================================== +Euler + Conic, Sph + lat_1= and lat_2= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=euler +ellps=GRS80 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222597.634659108 111404.240549919 +accept 2 -1 +expect 222767.165631876 -111234.676491018 +accept -2 1 +expect -222597.634659108 111404.240549919 +accept -2 -1 +expect -222767.165631876 -111234.676491018 + +direction inverse +accept 200 100 +expect 0.001796281 0.000898315 +accept 200 -100 +expect 0.001796279 -0.000898316 +accept -200 100 +expect -0.001796281 0.000898315 +accept -200 -100 +expect -0.001796279 -0.000898316 + +------------------------------------------------------------------------------- +operation +proj=euler +a=6400000 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223360.655598694 111786.112389791 +accept 2 -1 +expect 223530.767690316 -111615.967098624 +accept -2 1 +expect -223360.655598694 111786.112389791 +accept -2 -1 +expect -223530.767690316 -111615.967098624 + +direction inverse +accept 200 100 +expect 0.001790144 0.000895246 +accept 200 -100 +expect 0.001790143 -0.000895247 +accept -200 100 +expect -0.001790144 0.000895246 +accept -200 -100 +expect -0.001790143 -0.000895247 + + +=============================================================================== +Extended Transverse Mercator + Cyl, Sph + lat_ts=(0) +lat_0=(0) +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=etmerc +ellps=GRS80 +lat_1=0.5 +lat_2=2 +n=0.5 +zone=30 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222650.796797586 110642.229411933 +accept 2 -1 +expect 222650.796797586 -110642.229411933 +accept -2 1 +expect -222650.796797586 110642.229411933 +accept -2 -1 +expect -222650.796797586 -110642.229411933 + +direction inverse +accept 200 100 +expect 0.001796631 0.000904369 +accept 200 -100 +expect 0.001796631 -0.000904369 +accept -200 100 +expect -0.001796631 0.000904369 +accept -200 -100 +expect -0.001796631 -0.000904369 + + +=============================================================================== +Fahey + Pcyl, Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=fahey +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 182993.344649124 101603.193569884 +accept 2 -1 +expect 182993.344649124 -101603.193569884 +accept -2 1 +expect -182993.344649124 101603.193569884 +accept -2 -1 +expect -182993.344649124 -101603.193569884 + +direction inverse +accept 200 100 +expect 0.002185789 0.000984246 +accept 200 -100 +expect 0.002185789 -0.000984246 +accept -200 100 +expect -0.002185789 0.000984246 +accept -200 -100 +expect -0.002185789 -0.000984246 + + +=============================================================================== +Foucaut + PCyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=fouc +ellps=GRS80 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222588.120675892 111322.316700694 +accept 2 -1 +expect 222588.120675892 -111322.316700694 +accept -2 1 +expect -222588.120675892 111322.316700694 +accept -2 -1 +expect -222588.120675892 -111322.316700694 + +direction inverse +accept 200 100 +expect 0.001796631 0.000898315 +accept 200 -100 +expect 0.001796631 -0.000898315 +accept -200 100 +expect -0.001796631 0.000898315 +accept -200 -100 +expect -0.001796631 -0.000898315 + +------------------------------------------------------------------------------- +operation +proj=fouc +a=6400000 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223351.109003414 111703.907721713 +accept 2 -1 +expect 223351.109003414 -111703.907721713 +accept -2 1 +expect -223351.109003414 111703.907721713 +accept -2 -1 +expect -223351.109003414 -111703.907721713 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Foucaut Sinusoidal + PCyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=fouc_s +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223402.144255274 111695.401198614 +accept 2 -1 +expect 223402.144255274 -111695.401198614 +accept -2 1 +expect -223402.144255274 111695.401198614 +accept -2 -1 +expect -223402.144255274 -111695.401198614 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Gall (Gall Stereographic) + Cyl, Sph +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=gall +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 157969.171134520 95345.249178386 +accept 2 -1 +expect 157969.171134520 -95345.249178386 +accept -2 1 +expect -157969.171134520 95345.249178386 +accept -2 -1 +expect -157969.171134520 -95345.249178386 + +direction inverse +accept 200 100 +expect 0.002532140 0.001048847 +accept 200 -100 +expect 0.002532140 -0.001048847 +accept -200 100 +expect -0.002532140 0.001048847 +accept -200 -100 +expect -0.002532140 -0.001048847 + + +=============================================================================== +Geocentric + +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=geocent +ellps=GRS80 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222638.981586547 111319.490793274 +accept 2 -1 +expect 222638.981586547 -111319.490793274 +accept -2 1 +expect -222638.981586547 111319.490793274 +accept -2 -1 +expect -222638.981586547 -111319.490793274 + +direction inverse +accept 200 100 +expect 0.001796631 0.000898315 +accept 200 -100 +expect 0.001796631 -0.000898315 +accept -200 100 +expect -0.001796631 0.000898315 +accept -200 -100 +expect -0.001796631 -0.000898315 + +------------------------------------------------------------------------------- +operation +proj=geocent +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 + + +=============================================================================== +Geostationary Satellite View + Azi, Sph&Ell + h= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=geos +ellps=GRS80 +lat_1=0.5 +lat_2=2 +h=35785831 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222527.070365800 110551.303413329 +accept 2 -1 +expect 222527.070365800 -110551.303413329 +accept -2 1 +expect -222527.070365800 110551.303413329 +accept -2 -1 +expect -222527.070365800 -110551.303413329 + +direction inverse +accept 200 100 +expect 0.001796631 0.000904369 +accept 200 -100 +expect 0.001796631 -0.000904369 +accept -200 100 +expect -0.001796631 0.000904369 +accept -200 -100 +expect -0.001796631 -0.000904369 + +------------------------------------------------------------------------------- +operation +proj=geos +R=6400000 +lat_1=0.5 +lat_2=2 +h=35785831 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223289.457635795 111677.657456537 +accept 2 -1 +expect 223289.457635795 -111677.657456537 +accept -2 1 +expect -223289.457635795 111677.657456537 +accept -2 -1 +expect -223289.457635795 -111677.657456537 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Ginsburg VIII (TsNIIGAiK) + PCyl, Sph., no inv. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=gins8 +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 194350.250939590 111703.907635335 +accept 2 -1 +expect 194350.250939590 -111703.907635335 +accept -2 1 +expect -194350.250939590 111703.907635335 +accept -2 -1 +expect -194350.250939590 -111703.907635335 + + +=============================================================================== +General Sinusoidal Series + PCyl, Sph. + m= n= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=gn_sinu +a=6400000 +lat_1=0.5 +lat_2=2 +m=1 +n=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223385.132504696 111698.236447187 +accept 2 -1 +expect 223385.132504696 -111698.236447187 +accept -2 1 +expect -223385.132504696 111698.236447187 +accept -2 -1 +expect -223385.132504696 -111698.236447187 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Gnomonic + Azi, Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=gnom +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223492.924747185 111780.509206593 +accept 2 -1 +expect 223492.924747185 -111780.509206593 +accept -2 1 +expect -223492.924747185 111780.509206593 +accept -2 -1 +expect -223492.924747185 -111780.509206593 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Goode Homolosine + PCyl, Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=goode +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223368.119026632 111701.072127637 +accept 2 -1 +expect 223368.119026632 -111701.072127637 +accept -2 1 +expect -223368.119026632 111701.072127637 +accept -2 -1 +expect -223368.119026632 -111701.072127637 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Mod. Stereographic of 48 U.S. + Azi(mod) +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=gs48 +R=6370997 +------------------------------------------------------------------------------- +tolerance 0.0001 +accept -119.000000000 40.000000000 +expect -1923908.446529346 355874.658944479 +accept -70.000000000 64.000000000 +expect 1354020.375109298 3040846.007866525 +accept -80.000000000 25.000000000 +expect 1625139.160484320 -1413614.894029108 +accept -95.000000000 35.000000000 +expect 90241.658071458 -439595.048485902 + +direction inverse +accept -1923000.000000000 355000.000000000 +expect -118.987112613 39.994449789 +accept 1354000.000000000 3040000.000000000 +expect -70.005208999 63.993387836 +accept 1625000.000000000 -1413000.000000000 +expect -80.000346610 25.005602547 +accept 90000.000000000 -439000.000000000 +expect -95.002606473 35.005424705 + + +=============================================================================== +Mod. Stereographic of 50 U.S. + Azi(mod) +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=gs50 +ellps=clrk66 +------------------------------------------------------------------------------- +tolerance 0.0001 +accept -160.000000000 65.000000000 +expect -1874628.537740233 2660907.942291015 +accept -130.000000000 45.000000000 +expect -771831.518853336 48465.166491305 +accept -65.000000000 45.000000000 +expect 4030931.833981509 1323687.864777399 +accept -80.000000000 36.000000000 +expect 3450764.261536101 -175619.041820732 + +direction inverse +accept -1800000.000000000 2600000.000000000 +expect -157.989285000 64.851559610 +accept -800000.000000000 500000.000000000 +expect -131.171390467 49.084969746 +accept 4000000.000000000 1300000.000000000 +expect -65.491568685 44.992837924 +accept 3900000.000000000 -170000.000000000 +expect -75.550660091 34.191114076 + +------------------------------------------------------------------------------- +operation +proj=gs50 +R=6370997 +------------------------------------------------------------------------------- +tolerance 0.0001 +accept -160.000000000 65.000000000 +expect -1867268.253460009 2656506.230401823 +accept -130.000000000 45.000000000 +expect -769572.189672994 48324.312440864 +accept -65.000000000 45.000000000 +expect 4019393.068680791 1320191.309350289 +accept -80.000000000 36.000000000 +expect 3442685.615172346 -178760.423489429 + +direction inverse +accept -1800000.000000000 2600000.000000000 +expect -158.163295045 64.854288365 +accept -800000.000000000 500000.000000000 +expect -131.206816960 49.082915351 +accept 4000000.000000000 1300000.000000000 +expect -65.348945221 44.957292682 +accept 3900000.000000000 -170000.000000000 +expect -75.446820242 34.185406226 + + +=============================================================================== +Hammer & Eckert-Greifendorff + Misc Sph, + W= M= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=hammer +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223373.788703241 111703.907397767 +accept 2 -1 +expect 223373.788703241 -111703.907397767 +accept -2 1 +expect -223373.788703241 111703.907397767 +accept -2 -1 +expect -223373.788703241 -111703.907397767 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Hatano Asymmetrical Equal Area + PCyl, Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=hatano +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 189878.878946528 131409.802440626 +accept 2 -1 +expect 189881.081952445 -131409.142276074 +accept -2 1 +expect -189878.878946528 131409.802440626 +accept -2 -1 +expect -189881.081952445 -131409.142276074 + +direction inverse +accept 200 100 +expect 0.002106462 0.000760957 +accept 200 -100 +expect 0.002106462 -0.000760958 +accept -200 100 +expect -0.002106462 0.000760957 +accept -200 -100 +expect -0.002106462 -0.000760958 + + +=============================================================================== +HEALPix + Sph., Ellps. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=healpix +ellps=GRS80 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222390.103949239 130406.588664482 +accept 2 -1 +expect 222390.103949239 -130406.588664481 +accept -2 1 +expect -222390.103949239 130406.588664482 +accept -2 -1 +expect -222390.103949239 -130406.588664481 + +direction inverse +accept 200 100 +expect 0.001798641 0.000766795 +accept 200 -100 +expect 0.001798641 -0.000766795 +accept -200 100 +expect -0.001798641 0.000766795 +accept -200 -100 +expect -0.001798641 -0.000766795 + +------------------------------------------------------------------------------- +operation +proj=healpix +R=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223402.144255274 131588.044441999 +accept 2 -1 +expect 223402.144255274 -131588.044441999 +accept -2 1 +expect -223402.144255274 131588.044441999 +accept -2 -1 +expect -223402.144255274 -131588.044441999 + +direction inverse +accept 200 100 +expect 0.001790493 0.000759909 +accept 200 -100 +expect 0.001790493 -0.000759909 +accept -200 100 +expect -0.001790493 0.000759909 +accept -200 -100 +expect -0.001790493 -0.000759909 + + +=============================================================================== +rHEALPix + Sph., Ellps. + north_square= south_square= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=rhealpix +ellps=GRS80 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222390.103949239 130406.588664482 +accept 2 -1 +expect 222390.103949239 -130406.588664481 +accept -2 1 +expect -222390.103949239 130406.588664482 +accept -2 -1 +expect -222390.103949239 -130406.588664481 + +direction inverse +accept 200 100 +expect 0.001798641 0.000766795 +accept 200 -100 +expect 0.001798641 -0.000766795 +accept -200 100 +expect -0.001798641 0.000766795 +accept -200 -100 +expect -0.001798641 -0.000766795 + +------------------------------------------------------------------------------- +operation +proj=rhealpix +R=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223402.144255274 131588.044441999 +accept 2 -1 +expect 223402.144255274 -131588.044441999 +accept -2 1 +expect -223402.144255274 131588.044441999 +accept -2 -1 +expect -223402.144255274 -131588.044441999 + +direction inverse +accept 200 100 +expect 0.001790493 0.000759909 +accept 200 -100 +expect 0.001790493 -0.000759909 +accept -200 100 +expect -0.001790493 0.000759909 +accept -200 -100 +expect -0.001790493 -0.000759909 + + +=============================================================================== +Interrupted Goode Homolosine + PCyl, Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=igh +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223878.497456271 111701.072127637 +accept 2 -1 +expect 223708.371313058 -111701.072127637 +accept -2 1 +expect -222857.740596992 111701.072127637 +accept -2 -1 +expect -223027.866740205 -111701.072127637 + +direction inverse +accept 200 100 +expect 0.001790489 0.000895247 +accept 200 -100 +expect 0.001790491 -0.000895247 +accept -200 100 +expect -0.001790497 0.000895247 +accept -200 -100 +expect -0.001790496 -0.000895247 + + +=============================================================================== +International Map of the World Polyconic + Mod. Polyconic, Ell + lat_1= and lat_2= [lon_1=] +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=imw_p +ellps=GRS80 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222588.441139376 55321.128653810 +accept 2 -1 +expect 222756.906377687 -165827.584288324 +accept -2 1 +expect -222588.441139376 55321.128653810 +accept -2 -1 +expect -222756.906377687 -165827.584288324 + +direction inverse +accept 200 100 +expect 0.001796699 0.500904924 +accept 200 -100 +expect 0.001796698 0.499095076 +accept -200 100 +expect -0.001796699 0.500904924 +accept -200 -100 +expect -0.001796698 0.499095076 + + +=============================================================================== +Icosahedral Snyder Equal Area + Sph +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=isea +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect -1097074.948022474 3442909.309037183 +accept 2 -1 +expect -1097074.948264795 3233611.728585708 +accept -2 1 +expect -1575486.353641554 3442168.342028188 +accept -2 -1 +expect -1575486.353880283 3234352.695594706 + + +=============================================================================== +Kavraisky V + PCyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=kav5 +ellps=GRS80 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 200360.905308829 123685.082476998 +accept 2 -1 +expect 200360.905308829 -123685.082476998 +accept -2 1 +expect -200360.905308829 123685.082476998 +accept -2 -1 +expect -200360.905308829 -123685.082476998 + +direction inverse +accept 200 100 +expect 0.001996259 0.000808483 +accept 200 -100 +expect 0.001996259 -0.000808483 +accept -200 100 +expect -0.001996259 0.000808483 +accept -200 -100 +expect -0.001996259 -0.000808483 + +------------------------------------------------------------------------------- +operation +proj=kav5 +a=6400000 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 201047.703110878 124109.050629171 +accept 2 -1 +expect 201047.703110878 -124109.050629171 +accept -2 1 +expect -201047.703110878 124109.050629171 +accept -2 -1 +expect -201047.703110878 -124109.050629171 + +direction inverse +accept 200 100 +expect 0.001989440 0.000805721 +accept 200 -100 +expect 0.001989440 -0.000805721 +accept -200 100 +expect -0.001989440 0.000805721 +accept -200 -100 +expect -0.001989440 -0.000805721 + + +=============================================================================== +Kavraisky VII + PCyl, Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=kav7 +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 193462.974943729 111701.072127637 +accept 2 -1 +expect 193462.974943729 -111701.072127637 +accept -2 1 +expect -193462.974943729 111701.072127637 +accept -2 -1 +expect -193462.974943729 -111701.072127637 + +direction inverse +accept 200 100 +expect 0.002067483 0.000895247 +accept 200 -100 +expect 0.002067483 -0.000895247 +accept -200 100 +expect -0.002067483 0.000895247 +accept -200 -100 +expect -0.002067483 -0.000895247 + + +=============================================================================== +Krovak + PCyl., Ellps. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=krovak +ellps=GRS80 +no_defs +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect -3196535.232563641 -6617878.867551444 +accept 2 -1 +expect -3260035.440552109 -6898873.614878031 +accept -2 1 +expect -3756305.328869175 -6478142.561571511 +accept -2 -1 +expect -3831703.658501982 -6759107.170155395 + +direction inverse +accept 200 100 +expect 24.836218919 59.758403933 +accept 200 -100 +expect 24.836315485 59.756888426 +accept -200 100 +expect 24.830447748 59.758403933 +accept -200 -100 +expect 24.830351182 59.756888426 + + +=============================================================================== +Laborde + Cyl, Sph + Special for Madagascar +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=labrd +ellps=GRS80 +lon_0=0.5 +lat_0=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 166973.166090228 -110536.912730266 +accept 2 -1 +expect 166973.168287157 -331761.993650884 +accept -2 1 +expect -278345.500519976 -110469.032642032 +accept -2 -1 +expect -278345.504185270 -331829.870790275 + +direction inverse +accept 200 100 +expect 0.501797719 2.000904357 +accept 200 -100 +expect 0.501797717 1.999095641 +accept -200 100 +expect 0.498202281 2.000904357 +accept -200 -100 +expect 0.498202283 1.999095641 + + +=============================================================================== +Lambert Azimuthal Equal Area + Azi, Sph&Ell +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=laea +ellps=GRS80 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222602.471450095 110589.827224410 +accept 2 -1 +expect 222602.471450095 -110589.827224409 +accept -2 1 +expect -222602.471450095 110589.827224410 +accept -2 -1 +expect -222602.471450095 -110589.827224409 + +direction inverse +accept 200 100 +expect 0.001796631 0.000904369 +accept 200 -100 +expect 0.001796631 -0.000904369 +accept -200 100 +expect -0.001796631 0.000904369 +accept -200 -100 +expect -0.001796631 -0.000904369 + +------------------------------------------------------------------------------- +operation +proj=laea +R=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223365.281370125 111716.668072916 +accept 2 -1 +expect 223365.281370125 -111716.668072916 +accept -2 1 +expect -223365.281370125 111716.668072916 +accept -2 -1 +expect -223365.281370125 -111716.668072916 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Lagrange + Misc Sph, no inv. + W= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=lagrng +a=6400000 +W=2 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 111703.375917226 27929.831908033 +accept 2 -1 +expect 111699.122088816 -83784.178013358 +accept -2 1 +expect -111703.375917226 27929.831908033 +accept -2 -1 +expect -111699.122088816 -83784.178013358 + + +=============================================================================== +Larrivee + Misc Sph, no inv. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=larr +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223393.637624201 111707.215961256 +accept 2 -1 +expect 223393.637624201 -111707.215961256 +accept -2 1 +expect -223393.637624201 111707.215961256 +accept -2 -1 +expect -223393.637624201 -111707.215961256 + + +=============================================================================== +Laskowski + Misc Sph, no inv. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=lask +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 217928.275907355 112144.329220142 +accept 2 -1 +expect 217928.275907355 -112144.329220142 +accept -2 1 +expect -217928.275907355 112144.329220142 +accept -2 -1 +expect -217928.275907355 -112144.329220142 + + +=============================================================================== +Lambert Conformal Conic + Conic, Sph&Ell + lat_1= and lat_2= or lat_0 +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=lcc +ellps=GRS80 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222588.439735968 110660.533870800 +accept 2 -1 +expect 222756.879700279 -110532.797660827 +accept -2 1 +expect -222588.439735968 110660.533870800 +accept -2 -1 +expect -222756.879700279 -110532.797660827 + +direction inverse +accept 200 100 +expect 0.001796359 0.000904232 +accept 200 -100 +expect 0.001796358 -0.000904233 +accept -200 100 +expect -0.001796359 0.000904232 +accept -200 -100 +expect -0.001796358 -0.000904233 + + +=============================================================================== +Lambert Conformal Conic Alternative + Conic, Sph&Ell + lat_0= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=lcca +ellps=GRS80 +lat_0=1 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222605.285770237 67.806007272 +accept 2 -1 +expect 222740.037637937 -221125.539829602 +accept -2 1 +expect -222605.285770237 67.806007272 +accept -2 -1 +expect -222740.037637937 -221125.539829602 + +direction inverse +accept 200 100 +expect 0.001796903 1.000904366 +accept 200 -100 +expect 0.001796902 0.999095633 +accept -200 100 +expect -0.001796903 1.000904366 +accept -200 -100 +expect -0.001796902 0.999095633 + + +=============================================================================== +Lambert Equal Area Conic + Conic, Sph&Ell + lat_1= south +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=leac +ellps=GRS80 +lat_1=0 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 220685.140542979 112983.500889396 +accept 2 -1 +expect 224553.312279826 -108128.636744873 +accept -2 1 +expect -220685.140542979 112983.500889396 +accept -2 -1 +expect -224553.312279826 -108128.636744873 + +direction inverse +accept 200 100 +expect 0.001796645 0.000904352 +accept 200 -100 +expect 0.001796616 -0.000904387 +accept -200 100 +expect -0.001796645 0.000904352 +accept -200 -100 +expect -0.001796616 -0.000904387 + +------------------------------------------------------------------------------- +operation +proj=leac +R=6400000 +lat_1=0 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 221432.868592852 114119.454526532 +accept 2 -1 +expect 225331.724127111 -109245.829435056 +accept -2 1 +expect -221432.868592852 114119.454526532 +accept -2 -1 +expect -225331.724127111 -109245.829435056 + +direction inverse +accept 200 100 +expect 0.001790507 0.000895229 +accept 200 -100 +expect 0.001790479 -0.000895264 +accept -200 100 +expect -0.001790507 0.000895229 +accept -200 -100 +expect -0.001790479 -0.000895264 + + +=============================================================================== +Lee Oblated Stereographic + Azi(mod) +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=lee_os +R=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.0010 +accept 2 1 +expect -25564478.952605054 154490848.828625500 +accept 2 -1 +expect 30115393.938574642 125193997.439701970 +accept -2 1 +expect -31039340.592166007 57678685.044891544 +accept -2 -1 +expect -3088419.939423571 58150091.099111013 + +direction inverse +accept 200 100 +expect -164.997479458 -9.998758861 +accept 200 -100 +expect -164.997479439 -10.001241120 +accept -200 100 +expect -165.002520542 -9.998758861 +accept -200 -100 +expect -165.002520561 -10.001241120 + + +=============================================================================== +Loximuthal + PCyl Sph +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=loxim +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223382.295791339 55850.536063819 +accept 2 -1 +expect 223393.637462243 -167551.608191456 +accept -2 1 +expect -223382.295791339 55850.536063819 +accept -2 -1 +expect -223393.637462243 -167551.608191456 + +direction inverse +accept 200 100 +expect 0.001790561 0.500895247 +accept 200 -100 +expect 0.001790561 0.499104753 +accept -200 100 +expect -0.001790561 0.500895247 +accept -200 -100 +expect -0.001790561 0.499104753 + + +=============================================================================== +Space oblique for LANDSAT + Cyl, Sph&Ell + lsat= path= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=lsat +ellps=GRS80 +lat_1=0.5 +lat_2=2 +lsat=1 +path=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 18241950.014558550 9998256.839822935 +accept 2 -1 +expect 18746856.253319457 10215761.669925211 +accept -2 1 +expect 18565503.683633164 9085039.146727053 +accept -2 -1 +expect 19019696.902028911 9247763.039432822 + +direction inverse +accept 200 100 +expect 126.000423835 0.001723782 +accept 200 -100 +expect 126.002213738 0.001880155 +accept -200 100 +expect 126.000734469 -0.001880155 +accept -200 -100 +expect 126.002524373 -0.001723782 + + +=============================================================================== +McBryde-Thomas Flat-Polar Sine (No. 1) + PCyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=mbt_s +ellps=GRS80 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 204131.517850273 121400.330225508 +accept 2 -1 +expect 204131.517850273 -121400.330225508 +accept -2 1 +expect -204131.517850273 121400.330225508 +accept -2 -1 +expect -204131.517850273 -121400.330225508 + +direction inverse +accept 200 100 +expect 0.001959383 0.000823699 +accept 200 -100 +expect 0.001959383 -0.000823699 +accept -200 100 +expect -0.001959383 0.000823699 +accept -200 -100 +expect -0.001959383 -0.000823699 + +------------------------------------------------------------------------------- +operation +proj=mbt_s +a=6400000 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 204831.240570992 121816.466696035 +accept 2 -1 +expect 204831.240570992 -121816.466696035 +accept -2 1 +expect -204831.240570992 121816.466696035 +accept -2 -1 +expect -204831.240570992 -121816.466696035 + +direction inverse +accept 200 100 +expect 0.001952689 0.000820885 +accept 200 -100 +expect 0.001952689 -0.000820885 +accept -200 100 +expect -0.001952689 0.000820885 +accept -200 -100 +expect -0.001952689 -0.000820885 + + +=============================================================================== +McBryde-Thomas Flat-Pole Sine (No. 2) + Cyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=mbt_fps +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 198798.176129850 125512.017254531 +accept 2 -1 +expect 198798.176129850 -125512.017254531 +accept -2 1 +expect -198798.176129850 125512.017254531 +accept -2 -1 +expect -198798.176129850 -125512.017254531 + +direction inverse +accept 200 100 +expect 0.002011971 0.000796712 +accept 200 -100 +expect 0.002011971 -0.000796712 +accept -200 100 +expect -0.002011971 0.000796712 +accept -200 -100 +expect -0.002011971 -0.000796712 + + +=============================================================================== +McBride-Thomas Flat-Polar Parabolic + Cyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=mbtfpp +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 206804.786929820 120649.762565793 +accept 2 -1 +expect 206804.786929820 -120649.762565793 +accept -2 1 +expect -206804.786929820 120649.762565793 +accept -2 -1 +expect -206804.786929820 -120649.762565793 + +direction inverse +accept 200 100 +expect 0.001933954 0.000828837 +accept 200 -100 +expect 0.001933954 -0.000828837 +accept -200 100 +expect -0.001933954 0.000828837 +accept -200 -100 +expect -0.001933954 -0.000828837 + + +=============================================================================== +McBryde-Thomas Flat-Polar Quartic + Cyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=mbtfpq +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 209391.854738393 119161.040199055 +accept 2 -1 +expect 209391.854738393 -119161.040199055 +accept -2 1 +expect -209391.854738393 119161.040199055 +accept -2 -1 +expect -209391.854738393 -119161.040199055 + +direction inverse +accept 200 100 +expect 0.001910106 0.000839185 +accept 200 -100 +expect 0.001910106 -0.000839185 +accept -200 100 +expect -0.001910106 0.000839185 +accept -200 -100 +expect -0.001910106 -0.000839185 + + +=============================================================================== +McBryde-Thomas Flat-Polar Sinusoidal + PCyl, Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=mbtfps +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 204740.117478572 121864.729719340 +accept 2 -1 +expect 204740.117478572 -121864.729719340 +accept -2 1 +expect -204740.117478572 121864.729719340 +accept -2 -1 +expect -204740.117478572 -121864.729719340 + +direction inverse +accept 200 100 +expect 0.001953415 0.000820580 +accept 200 -100 +expect 0.001953415 -0.000820580 +accept -200 100 +expect -0.001953415 0.000820580 +accept -200 -100 +expect -0.001953415 -0.000820580 + + +=============================================================================== +Mercator + Cyl, Sph&Ell + lat_ts= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=merc +ellps=GRS80 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222638.981586547 110579.965218250 +accept 2 -1 +expect 222638.981586547 -110579.965218249 +accept -2 1 +expect -222638.981586547 110579.965218250 +accept -2 -1 +expect -222638.981586547 -110579.965218249 + +direction inverse +accept 200 100 +expect 0.001796631 0.000904369 +accept 200 -100 +expect 0.001796631 -0.000904369 +accept -200 100 +expect -0.001796631 0.000904369 +accept -200 -100 +expect -0.001796631 -0.000904369 + +------------------------------------------------------------------------------- +operation +proj=merc +R=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223402.144255274 111706.743574944 +accept 2 -1 +expect 223402.144255274 -111706.743574944 +accept -2 1 +expect -223402.144255274 111706.743574944 +accept -2 -1 +expect -223402.144255274 -111706.743574944 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Miller Oblated Stereographic + Azi(mod) +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=mil_os +R=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect -1908527.949594205 -1726237.473061448 +accept 2 -1 +expect -1916673.022918485 -1943133.888125523 +accept -2 1 +expect -2344429.412089623 -1706258.051218912 +accept -2 -1 +expect -2354637.835532999 -1926468.605135417 + +direction inverse +accept 200 100 +expect 20.002036394 18.000968347 +accept 200 -100 +expect 20.002036372 17.999031632 +accept -200 100 +expect 19.997963606 18.000968347 +accept -200 -100 +expect 19.997963628 17.999031632 + + +=============================================================================== +Miller Cylindrical + Cyl, Sph +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=mill +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223402.144255274 111704.701754394 +accept 2 -1 +expect 223402.144255274 -111704.701754396 +accept -2 1 +expect -223402.144255274 111704.701754394 +accept -2 -1 +expect -223402.144255274 -111704.701754396 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Space oblique for MISR + Cyl, Sph&Ell + path= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=misrsom +ellps=GRS80 +lat_1=0.5 +lat_2=2 +path=1 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 18556630.368369825 9533394.675311271 +accept 2 -1 +expect 19041866.006729737 9707182.175323525 +accept -2 1 +expect 18816810.130184799 8647669.649802955 +accept -2 -1 +expect 19252610.784536730 8778164.085801404 + +direction inverse +accept 200 100 +expect 127.759503988 0.001735150 +accept 200 -100 +expect 127.761295471 0.001871966 +accept -200 100 +expect 127.759775774 -0.001871966 +accept -200 -100 +expect 127.761567257 -0.001735150 + +------------------------------------------------------------------------------- +operation +proj=misrsom +R=6400000 +lat_1=0.5 +lat_2=2 +path=1 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 18641249.279170386 9563342.532334166 +accept 2 -1 +expect 19130982.461581279 9739539.593504636 +accept -2 1 +expect 18903483.515011538 8675064.500617975 +accept -2 -1 +expect 19343388.399800610 8807471.904068489 + +direction inverse +accept 200 100 +expect 127.759505148 0.001716231 +accept 200 -100 +expect 127.761290324 0.001854121 +accept -200 100 +expect 127.759780921 -0.001854121 +accept -200 -100 +expect 127.761566096 -0.001716231 + + +=============================================================================== +Mollweide + PCyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=moll +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 201113.698641813 124066.283433860 +accept 2 -1 +expect 201113.698641813 -124066.283433860 +accept -2 1 +expect -201113.698641813 124066.283433860 +accept -2 -1 +expect -201113.698641813 -124066.283433860 + +direction inverse +accept 200 100 +expect 0.001988738 0.000806005 +accept 200 -100 +expect 0.001988738 -0.000806005 +accept -200 100 +expect -0.001988738 0.000806005 +accept -200 -100 +expect -0.001988738 -0.000806005 + + +=============================================================================== +Murdoch I + Conic, Sph + lat_1= and lat_2= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=murd1 +ellps=GRS80 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222600.813473554 111404.244180546 +accept 2 -1 +expect 222770.349287864 -111234.672856675 +accept -2 1 +expect -222600.813473554 111404.244180546 +accept -2 -1 +expect -222770.349287864 -111234.672856675 + +direction inverse +accept 200 100 +expect 0.001796255 0.000898315 +accept 200 -100 +expect 0.001796254 -0.000898316 +accept -200 100 +expect -0.001796255 0.000898315 +accept -200 -100 +expect -0.001796254 -0.000898316 + +------------------------------------------------------------------------------- +operation +proj=murd1 +a=6400000 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223363.845309492 111786.116032863 +accept 2 -1 +expect 223533.962259251 -111615.963451823 +accept -2 1 +expect -223363.845309492 111786.116032863 +accept -2 -1 +expect -223533.962259251 -111615.963451823 + +direction inverse +accept 200 100 +expect 0.001790119 0.000895246 +accept 200 -100 +expect 0.001790118 -0.000895247 +accept -200 100 +expect -0.001790119 0.000895246 +accept -200 -100 +expect -0.001790118 -0.000895247 + + +=============================================================================== +Murdoch II + Conic, Sph + lat_1= and lat_2= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=murd2 +ellps=GRS80 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222588.099751230 111426.140027412 +accept 2 -1 +expect 222757.726267018 -111341.431317505 +accept -2 1 +expect -222588.099751230 111426.140027412 +accept -2 -1 +expect -222757.726267018 -111341.431317505 + +direction inverse +accept 200 100 +expect 0.001796357 0.000897887 +accept 200 -100 +expect 0.001796356 -0.000897888 +accept -200 100 +expect -0.001796357 0.000897887 +accept -200 -100 +expect -0.001796356 -0.000897888 + +------------------------------------------------------------------------------- +operation +proj=murd2 +a=6400000 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223351.088007027 111808.086934388 +accept 2 -1 +expect 223521.295969170 -111723.087859673 +accept -2 1 +expect -223351.088007027 111808.086934388 +accept -2 -1 +expect -223521.295969170 -111723.087859673 + +direction inverse +accept 200 100 +expect 0.001790221 0.000894820 +accept 200 -100 +expect 0.001790220 -0.000894821 +accept -200 100 +expect -0.001790221 0.000894820 +accept -200 -100 +expect -0.001790220 -0.000894821 + + +=============================================================================== +Murdoch III + Conic, Sph + lat_1= and lat_2= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=murd3 +ellps=GRS80 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222600.814077577 111404.246601372 +accept 2 -1 +expect 222770.354733899 -111234.670432178 +accept -2 1 +expect -222600.814077577 111404.246601372 +accept -2 -1 +expect -222770.354733899 -111234.670432178 + +direction inverse +accept 200 100 +expect 0.001796255 0.000898315 +accept 200 -100 +expect 0.001796254 -0.000898316 +accept -200 100 +expect -0.001796255 0.000898315 +accept -200 -100 +expect -0.001796254 -0.000898316 + +------------------------------------------------------------------------------- +operation +proj=murd3 +a=6400000 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223363.845915585 111786.118461987 +accept 2 -1 +expect 223533.967723953 -111615.961019015 +accept -2 1 +expect -223363.845915585 111786.118461987 +accept -2 -1 +expect -223533.967723953 -111615.961019015 + +direction inverse +accept 200 100 +expect 0.001790119 0.000895246 +accept 200 -100 +expect 0.001790118 -0.000895247 +accept -200 100 +expect -0.001790119 0.000895246 +accept -200 -100 +expect -0.001790118 -0.000895247 + + +=============================================================================== +Natural Earth + PCyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=natearth +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 194507.265257889 112508.737358295 +accept 2 -1 +expect 194507.265257889 -112508.737358295 +accept -2 1 +expect -194507.265257889 112508.737358295 +accept -2 -1 +expect -194507.265257889 -112508.737358295 + +direction inverse +accept 200 100 +expect 0.002056383 0.000888824 +accept 200 -100 +expect 0.002056383 -0.000888824 +accept -200 100 +expect -0.002056383 0.000888824 +accept -200 -100 +expect -0.002056383 -0.000888824 + + +=============================================================================== +Natural Earth 2 + PCyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=natearth2 +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 189255.172934731 113022.495810907 +accept 2 -1 +expect 189255.172934731 -113022.495810907 +accept -2 1 +expect -189255.172934731 113022.495810907 +accept -2 -1 +expect -189255.172934731 -113022.495810907 + +direction inverse +accept 200 100 +expect 0.002113449 0.000884780 +accept 200 -100 +expect 0.002113449 -0.000884780 +accept -200 100 +expect -0.002113449 0.000884780 +accept -200 -100 +expect -0.002113449 -0.000884780 + + +=============================================================================== +Nell + PCyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=nell +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223385.132504696 111698.236447187 +accept 2 -1 +expect 223385.132504696 -111698.236447187 +accept -2 1 +expect -223385.132504696 111698.236447187 +accept -2 -1 +expect -223385.132504696 -111698.236447187 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Nell-Hammer + PCyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=nell_h +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223385.131640953 111698.236533562 +accept 2 -1 +expect 223385.131640953 -111698.236533562 +accept -2 1 +expect -223385.131640953 111698.236533562 +accept -2 -1 +expect -223385.131640953 -111698.236533562 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Nicolosi Globular + Misc Sph, no inv. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=nicol +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223374.561814140 111732.553988545 +accept 2 -1 +expect 223374.561814140 -111732.553988545 +accept -2 1 +expect -223374.561814140 111732.553988545 +accept -2 -1 +expect -223374.561814140 -111732.553988545 + + +=============================================================================== +Near-sided perspective + Azi, Sph + h= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=nsper +a=6400000 +h=1000000 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222239.816114100 111153.763991925 +accept 2 -1 +expect 222239.816114100 -111153.763991925 +accept -2 1 +expect -222239.816114100 111153.763991925 +accept -2 -1 +expect -222239.816114100 -111153.763991925 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +New Zealand Map Grid + fixed Earth +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=nzmg +ellps=GRS80 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.010 +accept 2 1 +expect 3352675144.747425100 -7043205391.100243600 +accept 2 -1 +expect 3691989502.779306400 -6729069415.332104700 +accept -2 1 +expect 4099000768.453238500 -7863208779.667248700 +accept -2 -1 +expect 4466166927.369976000 -7502531736.628604900 + +direction inverse +accept 200000.000000000 100000.000000000 +expect 175.482086827 -69.422692183 +accept 200000.000000000 -100000.000000000 +expect 175.756819473 -69.533571088 +accept -200000.000000000 100000.000000000 +expect 134.605119233 -61.459995711 +accept -200000.000000000 -100000.000000000 +expect 134.333684316 -61.621553676 + + +=============================================================================== +General Oblique Transformation + Misc Sph + o_proj= plus parameters for projection + o_lat_p= o_lon_p= (new pole) or + o_alpha= o_lon_c= o_lat_c= or + o_lon_1= o_lat_1= o_lon_2= o_lat_2= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=ob_tran +R=6400000 +o_proj=latlon +o_lon_p=20 +o_lat_p=20 +lon_0=180 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect -2.685687214 1.237430235 +accept 2 -1 +expect -2.695406975 1.202683395 +accept -2 1 +expect -2.899366393 1.237430235 +accept -2 -1 +expect -2.889646631 1.202683395 + +direction inverse +accept 200 100 +expect 121.551874841 -2.536100157 +accept 200 -100 +expect 63.261184340 17.585319579 +accept -200 100 +expect -141.100733224 26.091712305 +accept -200 -100 +expect -65.862385599 51.830295078 + + +=============================================================================== +Oblique Cylindrical Equal Area + Cyl, Sphlonc= alpha= or + lat_1= lat_2= lon_1= lon_2= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=ocea +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 19994423.837934088 223322.760576728 +accept 2 -1 +expect 20217962.128015257 223322.760576729 +accept -2 1 +expect 19994423.837934092 -223322.760576727 +accept -2 -1 +expect 20217962.128015265 -223322.760576725 + +direction inverse +accept 200 100 +expect 179.999104753 0.001790493 +accept 200 -100 +expect -179.999104753 0.001790493 +accept -200 100 +expect 179.999104753 -0.001790493 +accept -200 -100 +expect -179.999104753 -0.001790493 + + +=============================================================================== +Oblated Equal Area + Misc Sph + n= m= theta= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=oea +a=6400000 +lat_1=0.5 +lat_2=2 +n=1 +m=2 +theta=3 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 228926.872097864 99870.488430076 +accept 2 -1 +expect 217242.584036940 -123247.885607475 +accept -2 1 +expect -217242.584036940 123247.885607475 +accept -2 -1 +expect -228926.872097864 -99870.488430076 + +direction inverse +accept 200 100 +expect 0.001741186 0.000987727 +accept 200 -100 +expect 0.001834893 -0.000800312 +accept -200 100 +expect -0.001834893 0.000800312 +accept -200 -100 +expect -0.001741186 -0.000987727 + + +=============================================================================== +Oblique Mercator + Cyl, Sph&Ell no_rot + alpha= [gamma=] [no_off] lonc= or + lon_1= lat_1= lon_2= lat_2= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=omerc +ellps=GRS80 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222650.796885261 110642.229314984 +accept 2 -1 +expect 222650.796885261 -110642.229314984 +accept -2 1 +expect -222650.796885262 110642.229314984 +accept -2 -1 +expect -222650.796885262 -110642.229314984 + +direction inverse +accept 200 100 +expect 0.001796631 0.000904369 +accept 200 -100 +expect 0.001796631 -0.000904369 +accept -200 100 +expect -0.001796631 0.000904369 +accept -200 -100 +expect -0.001796631 -0.000904369 + + +=============================================================================== +Ortelius Oval + Misc Sph, no inv. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=ortel +a=6400000 +lat_1=0 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223374.577355253 111701.072127637 +accept 2 -1 +expect 223374.577355253 -111701.072127637 +accept -2 1 +expect -223374.577355253 111701.072127637 +accept -2 -1 +expect -223374.577355253 -111701.072127637 + + +=============================================================================== +Orthographic + Azi, Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=ortho +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223322.760576727 111695.401198614 +accept 2 -1 +expect 223322.760576727 -111695.401198614 +accept -2 1 +expect -223322.760576727 111695.401198614 +accept -2 -1 +expect -223322.760576727 -111695.401198614 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Perspective Conic + Conic, Sph + lat_1= and lat_2= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=pconic +ellps=GRS80 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222588.098841617 111416.604770067 +accept 2 -1 +expect 222757.718091090 -111331.881531080 +accept -2 1 +expect -222588.098841617 111416.604770067 +accept -2 -1 +expect -222757.718091090 -111331.881531080 + +direction inverse +accept 200 100 +expect 0.001796358 0.000897964 +accept 200 -100 +expect 0.001796356 -0.000897965 +accept -200 100 +expect -0.001796358 0.000897964 +accept -200 -100 +expect -0.001796356 -0.000897965 + +------------------------------------------------------------------------------- +operation +proj=pconic +a=6400000 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223351.087094295 111798.518992055 +accept 2 -1 +expect 223521.287765217 -111713.505338457 +accept -2 1 +expect -223351.087094295 111798.518992055 +accept -2 -1 +expect -223521.287765217 -111713.505338457 + +direction inverse +accept 200 100 +expect 0.001790221 0.000894897 +accept 200 -100 +expect 0.001790220 -0.000894897 +accept -200 100 +expect -0.001790221 0.000894897 +accept -200 -100 +expect -0.001790220 -0.000894897 + + +=============================================================================== +Patterson Cylindrical + Cyl. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=patterson +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223402.144255274 113354.250397780 +accept 2 -1 +expect 223402.144255274 -113354.250397780 +accept -2 1 +expect -223402.144255274 113354.250397780 +accept -2 -1 +expect -223402.144255274 -113354.250397780 + +direction inverse +accept 200 100 +expect 0.001790493 0.000882190 +accept 200 -100 +expect 0.001790493 -0.000882190 +accept -200 100 +expect -0.001790493 0.000882190 +accept -200 -100 +expect -0.001790493 -0.000882190 + + +=============================================================================== +Polyconic (American) + Conic, Sph&Ell +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=poly +ellps=GRS80 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222605.285770237 110642.194561440 +accept 2 -1 +expect 222605.285770237 -110642.194561440 +accept -2 1 +expect -222605.285770237 110642.194561440 +accept -2 -1 +expect -222605.285770237 -110642.194561440 + +direction inverse +accept 200 100 +expect 0.001796631 0.000904369 +accept 200 -100 +expect 0.001796631 -0.000904369 +accept -200 100 +expect -0.001796631 0.000904369 +accept -200 -100 +expect -0.001796631 -0.000904369 + +------------------------------------------------------------------------------- +operation +proj=poly +R=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223368.105210219 111769.110491225 +accept 2 -1 +expect 223368.105210219 -111769.110491225 +accept -2 1 +expect -223368.105210219 111769.110491225 +accept -2 -1 +expect -223368.105210219 -111769.110491225 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Putnins P1 + PCyl, Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=putp1 +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 211642.762754160 105831.180787330 +accept 2 -1 +expect 211642.762754160 -105831.180787330 +accept -2 1 +expect -211642.762754160 105831.180787330 +accept -2 -1 +expect -211642.762754160 -105831.180787330 + +direction inverse +accept 200 100 +expect 0.001889802 0.000944901 +accept 200 -100 +expect 0.001889802 -0.000944901 +accept -200 100 +expect -0.001889802 0.000944901 +accept -200 -100 +expect -0.001889802 -0.000944901 + + +=============================================================================== +Putnins P2 + PCyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=putp2 +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 211638.039634339 117895.033043380 +accept 2 -1 +expect 211638.039634339 -117895.033043380 +accept -2 1 +expect -211638.039634339 117895.033043380 +accept -2 -1 +expect -211638.039634339 -117895.033043380 + +direction inverse +accept 200 100 +expect 0.001889802 0.000848202 +accept 200 -100 +expect 0.001889802 -0.000848202 +accept -200 100 +expect -0.001889802 0.000848202 +accept -200 -100 +expect -0.001889802 -0.000848202 + + +=============================================================================== +Putnins P3 + PCyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=putp3 +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 178227.115507794 89124.560786088 +accept 2 -1 +expect 178227.115507794 -89124.560786088 +accept -2 1 +expect -178227.115507794 89124.560786088 +accept -2 -1 +expect -178227.115507794 -89124.560786088 + +direction inverse +accept 200 100 +expect 0.002244050 0.001122025 +accept 200 -100 +expect 0.002244050 -0.001122025 +accept -200 100 +expect -0.002244050 0.001122025 +accept -200 -100 +expect -0.002244050 -0.001122025 + + +=============================================================================== +Putnins P3' + PCyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=putp3p +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 178238.118539985 89124.560786088 +accept 2 -1 +expect 178238.118539985 -89124.560786088 +accept -2 1 +expect -178238.118539985 89124.560786088 +accept -2 -1 +expect -178238.118539985 -89124.560786088 + +direction inverse +accept 200 100 +expect 0.002244050 0.001122025 +accept 200 -100 +expect 0.002244050 -0.001122025 +accept -200 100 +expect -0.002244050 0.001122025 +accept -200 -100 +expect -0.002244050 -0.001122025 + + +=============================================================================== +Putnins P4' + PCyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=putp4p +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 195241.477349386 127796.782307926 +accept 2 -1 +expect 195241.477349386 -127796.782307926 +accept -2 1 +expect -195241.477349386 127796.782307926 +accept -2 -1 +expect -195241.477349386 -127796.782307926 + +direction inverse +accept 200 100 +expect 0.002048528 0.000782480 +accept 200 -100 +expect 0.002048528 -0.000782480 +accept -200 100 +expect -0.002048528 0.000782480 +accept -200 -100 +expect -0.002048528 -0.000782480 + + +=============================================================================== +Putnins P5 + PCyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=putp5 +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 226367.213380562 113204.568558475 +accept 2 -1 +expect 226367.213380562 -113204.568558475 +accept -2 1 +expect -226367.213380562 113204.568558475 +accept -2 -1 +expect -226367.213380562 -113204.568558475 + +direction inverse +accept 200 100 +expect 0.001766713 0.000883357 +accept 200 -100 +expect 0.001766713 -0.000883357 +accept -200 100 +expect -0.001766713 0.000883357 +accept -200 -100 +expect -0.001766713 -0.000883357 + + +=============================================================================== +Putnins P5' + PCyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=putp5p +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 226388.175248756 113204.568558475 +accept 2 -1 +expect 226388.175248756 -113204.568558475 +accept -2 1 +expect -226388.175248756 113204.568558475 +accept -2 -1 +expect -226388.175248756 -113204.568558475 + +direction inverse +accept 200 100 +expect 0.001766713 0.000883357 +accept 200 -100 +expect 0.001766713 -0.000883357 +accept -200 100 +expect -0.001766713 0.000883357 +accept -200 -100 +expect -0.001766713 -0.000883357 + + +=============================================================================== +Putnins P6 + PCyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=putp6 +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 226369.395133403 110218.523796521 +accept 2 -1 +expect 226369.395133403 -110218.523796521 +accept -2 1 +expect -226369.395133403 110218.523796521 +accept -2 -1 +expect -226369.395133403 -110218.523796521 + +direction inverse +accept 200 100 +expect 0.001766713 0.000907296 +accept 200 -100 +expect 0.001766713 -0.000907296 +accept -200 100 +expect -0.001766713 0.000907296 +accept -200 -100 +expect -0.001766713 -0.000907296 + + +=============================================================================== +Putnins P6' + PCyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=putp6p +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 198034.195132195 125989.475461323 +accept 2 -1 +expect 198034.195132195 -125989.475461323 +accept -2 1 +expect -198034.195132195 125989.475461323 +accept -2 -1 +expect -198034.195132195 -125989.475461323 + +direction inverse +accept 200 100 +expect 0.002019551 0.000793716 +accept 200 -100 +expect 0.002019551 -0.000793716 +accept -200 100 +expect -0.002019551 0.000793716 +accept -200 -100 +expect -0.002019551 -0.000793716 + + +=============================================================================== +Quartic Authalic + PCyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=qua_aut +ellps=GRS80 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222613.549033097 111318.077887984 +accept 2 -1 +expect 222613.549033097 -111318.077887984 +accept -2 1 +expect -222613.549033097 111318.077887984 +accept -2 -1 +expect -222613.549033097 -111318.077887984 + +direction inverse +accept 200 100 +expect 0.001796631 0.000898315 +accept 200 -100 +expect 0.001796631 -0.000898315 +accept -200 100 +expect -0.001796631 0.000898315 +accept -200 -100 +expect -0.001796631 -0.000898315 + +------------------------------------------------------------------------------- +operation +proj=qua_aut +a=6400000 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223376.624524029 111699.654379186 +accept 2 -1 +expect 223376.624524029 -111699.654379186 +accept -2 1 +expect -223376.624524029 111699.654379186 +accept -2 -1 +expect -223376.624524029 -111699.654379186 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Quadrilateralized Spherical Cube + Azi, Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=qsc +ellps=GRS80 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 304638.450843852 164123.870923794 +accept 2 -1 +expect 304638.450843852 -164123.870923794 +accept -2 1 +expect -304638.450843852 164123.870923794 +accept -2 -1 +expect -304638.450843852 -164123.870923794 + +direction inverse +accept 200 100 +expect 0.001321341 0.000610653 +accept 200 -100 +expect 0.001321341 -0.000610653 +accept -200 100 +expect -0.001321341 0.000610653 +accept -200 -100 +expect -0.001321341 -0.000610653 + +------------------------------------------------------------------------------- +operation +proj=qsc +R=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 305863.792402891 165827.722754715 +accept 2 -1 +expect 305863.792402891 -165827.722754715 +accept -2 1 +expect -305863.792402891 165827.722754715 +accept -2 -1 +expect -305863.792402891 -165827.722754715 + +direction inverse +accept 200 100 +expect 0.001316827 0.000604493 +accept 200 -100 +expect 0.001316827 -0.000604493 +accept -200 100 +expect -0.001316827 0.000604493 +accept -200 -100 +expect -0.001316827 -0.000604493 + + +=============================================================================== +Robinson + PCyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=robin +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 189588.423282508 107318.530350703 +accept 2 -1 +expect 189588.423282508 -107318.530350703 +accept -2 1 +expect -189588.423282508 107318.530350703 +accept -2 -1 +expect -189588.423282508 -107318.530350703 + +direction inverse +accept 200 100 +expect 0.002109689 0.000931806 +accept 200 -100 +expect 0.002109689 -0.000931806 +accept -200 100 +expect -0.002109689 0.000931806 +accept -200 -100 +expect -0.002109689 -0.000931806 + + +=============================================================================== +Roussilhe Stereographic + Azi., Ellps. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=rouss +ellps=GRS80 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222644.894131617 110611.091868370 +accept 2 -1 +expect 222644.894131617 -110611.091868370 +accept -2 1 +expect -222644.894131617 110611.091868370 +accept -2 -1 +expect -222644.894131617 -110611.091868370 + +direction inverse +accept 200 100 +expect 0.001796631 0.000904369 +accept 200 -100 +expect 0.001796631 -0.000904369 +accept -200 100 +expect -0.001796631 0.000904369 +accept -200 -100 +expect -0.001796631 -0.000904369 + + +=============================================================================== +Rectangular Polyconic + Conic, Sph., no inv. + lat_ts= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=rpoly +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223368.098302014 111769.110486991 +accept 2 -1 +expect 223368.098302014 -111769.110486991 +accept -2 1 +expect -223368.098302014 111769.110486991 +accept -2 -1 +expect -223368.098302014 -111769.110486991 + + +=============================================================================== +Sinusoidal (Sanson-Flamsteed) + PCyl, Sph&Ell +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=sinu +ellps=GRS80 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222605.299539466 110574.388554153 +accept 2 -1 +expect 222605.299539466 -110574.388554153 +accept -2 1 +expect -222605.299539466 110574.388554153 +accept -2 -1 +expect -222605.299539466 -110574.388554153 + +direction inverse +accept 200 100 +expect 0.001796631 0.000904369 +accept 200 -100 +expect 0.001796631 -0.000904369 +accept -200 100 +expect -0.001796631 0.000904369 +accept -200 -100 +expect -0.001796631 -0.000904369 + +------------------------------------------------------------------------------- +operation +proj=sinu +R=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223368.119026632 111701.072127637 +accept 2 -1 +expect 223368.119026632 -111701.072127637 +accept -2 1 +expect -223368.119026632 111701.072127637 +accept -2 -1 +expect -223368.119026632 -111701.072127637 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Swiss. Obl. Mercator + Cyl, Ell + For CH1903 +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=somerc +ellps=GRS80 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222638.981586547 110579.965218249 +accept 2 -1 +expect 222638.981586547 -110579.965218251 +accept -2 1 +expect -222638.981586547 110579.965218249 +accept -2 -1 +expect -222638.981586547 -110579.965218251 + +direction inverse +accept 200 100 +expect 0.001796631 0.000904369 +accept 200 -100 +expect 0.001796631 -0.000904369 +accept -200 100 +expect -0.001796631 0.000904369 +accept -200 -100 +expect -0.001796631 -0.000904369 + +------------------------------------------------------------------------------- +operation +proj=somerc +R=6400000 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223402.144255274 111706.743574944 +accept 2 -1 +expect 223402.144255274 -111706.743574945 +accept -2 1 +expect -223402.144255274 111706.743574944 +accept -2 -1 +expect -223402.144255274 -111706.743574945 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Stereographic + Azi, Sph&Ell + lat_ts= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=stere +ellps=GRS80 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222644.854550117 110610.883474174 +accept 2 -1 +expect 222644.854550117 -110610.883474174 +accept -2 1 +expect -222644.854550117 110610.883474174 +accept -2 -1 +expect -222644.854550117 -110610.883474174 + +direction inverse +accept 200 100 +expect 0.001796631 0.000904369 +accept 200 -100 +expect 0.001796631 -0.000904369 +accept -200 100 +expect -0.001796631 0.000904369 +accept -200 -100 +expect -0.001796631 -0.000904369 + +------------------------------------------------------------------------------- +operation +proj=stere +R=6400000 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223407.810259507 111737.938996443 +accept 2 -1 +expect 223407.810259507 -111737.938996443 +accept -2 1 +expect -223407.810259507 111737.938996443 +accept -2 -1 +expect -223407.810259507 -111737.938996443 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Oblique Stereographic Alternative + Azimuthal, Sph&Ell +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=sterea +ellps=GRS80 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222644.894109198 110611.091871737 +accept 2 -1 +expect 222644.894109198 -110611.091871738 +accept -2 1 +expect -222644.894109198 110611.091871737 +accept -2 -1 +expect -222644.894109198 -110611.091871738 + +direction inverse +accept 200 100 +expect 0.001796631 0.000904369 +accept 200 -100 +expect 0.001796631 -0.000904369 +accept -200 100 +expect -0.001796631 0.000904369 +accept -200 -100 +expect -0.001796631 -0.000904369 + +------------------------------------------------------------------------------- +operation +proj=sterea +R=6400000 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223407.810259507 111737.938996443 +accept 2 -1 +expect 223407.810259507 -111737.938996443 +accept -2 1 +expect -223407.810259507 111737.938996443 +accept -2 -1 +expect -223407.810259507 -111737.938996443 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Gauss-Schreiber Transverse Mercator (aka Gauss-Laborde Reunion) + Cyl, Sph&Ell + lat_0= lon_0= k_0= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=gstmerc +R=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223413.466406322 111769.145040586 +accept 2 -1 +expect 223413.466406322 -111769.145040587 +accept -2 1 +expect -223413.466406323 111769.145040586 +accept -2 -1 +expect -223413.466406323 -111769.145040587 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Transverse Central Cylindrical + Cyl, Sph, no inv. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=tcc +a=6400000 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223458.844192458 111769.145040586 +accept 2 -1 +expect 223458.844192458 -111769.145040586 +accept -2 1 +expect -223458.844192458 111769.145040586 +accept -2 -1 +expect -223458.844192458 -111769.145040586 + + +=============================================================================== +Transverse Cylindrical Equal Area + Cyl, Sph +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=tcea +a=6400000 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223322.760576727 111769.145040586 +accept 2 -1 +expect 223322.760576727 -111769.145040586 +accept -2 1 +expect -223322.760576727 111769.145040586 +accept -2 -1 +expect -223322.760576727 -111769.145040586 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Times + Cyl, Sph +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=times +ellps=sphere +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 0.000000000 0.000000000 +expect 0.000000000 0.000000000 +accept 80.000000000 70.000000000 +expect 5785183.576067096 7615452.066120422 +accept 25.000000000 -10.000000000 +expect 2065971.530107881 -951526.064849459 +accept -35.000000000 20.000000000 +expect -2873054.045485095 1917730.953000521 +accept -45.000000000 -30.000000000 +expect -3651383.203521487 -2914213.457815921 + +direction inverse +accept 0.000000000 0.000000000 +expect 0.000000000 0.000000000 +accept 5785183.576067096 7615452.066120422 +expect 80.000000000 70.000000000 +accept 2065971.530107881 -951526.064849459 +expect 25.000000000 -10.000000000 +accept -2873054.045485095 1917730.953000521 +expect -35.000000000 20.000000000 +accept -3651383.203521487 -2914213.457815921 +expect -45.000000000 -30.000000000 + + +=============================================================================== +Tissot + Conic, Sph + lat_1= and lat_2= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=tissot +ellps=GRS80 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222641.078699631 54347.828487281 +accept 2 -1 +expect 222810.614513941 -168291.088549939 +accept -2 1 +expect -222641.078699631 54347.828487281 +accept -2 -1 +expect -222810.614513941 -168291.088549939 + +direction inverse +accept 200 100 +expect 0.001796281 0.513444955 +accept 200 -100 +expect 0.001796279 0.511648325 +accept -200 100 +expect -0.001796281 0.513444955 +accept -200 -100 +expect -0.001796279 0.511648325 + +------------------------------------------------------------------------------- +operation +proj=tissot +a=6400000 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223404.248556849 54534.122161158 +accept 2 -1 +expect 223574.365506608 -168867.957323528 +accept -2 1 +expect -223404.248556849 54534.122161158 +accept -2 -1 +expect -223574.365506608 -168867.957323528 + +direction inverse +accept 200 100 +expect 0.001790144 0.513441886 +accept 200 -100 +expect 0.001790143 0.511651393 +accept -200 100 +expect -0.001790144 0.513441886 +accept -200 -100 +expect -0.001790143 0.511651393 + + +=============================================================================== +Transverse Mercator + Cyl, Sph&Ell +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=tmerc +ellps=GRS80 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222650.796795778 110642.229411927 +accept 2 -1 +expect 222650.796795778 -110642.229411927 +accept -2 1 +expect -222650.796795778 110642.229411927 +accept -2 -1 +expect -222650.796795778 -110642.229411927 + +direction inverse +accept 200 100 +expect 0.001796631 0.000904369 +accept 200 -100 +expect 0.001796631 -0.000904369 +accept -200 100 +expect -0.001796631 0.000904369 +accept -200 -100 +expect -0.001796631 -0.000904369 + +------------------------------------------------------------------------------- +operation +proj=tmerc +R=6400000 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223413.466406322 111769.145040597 +accept 2 -1 +expect 223413.466406322 -111769.145040597 +accept -2 1 +expect -223413.466406322 111769.145040597 +accept -2 -1 +expect -223413.466406322 -111769.145040597 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Two Point Equidistant + Misc Sph + lat_1= lon_1= lat_2= lon_2= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=tpeqd +ellps=GRS80 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect -27750.758831679 -222599.403691777 +accept 2 -1 +expect -250434.937024036 -222655.938193266 +accept -2 1 +expect -27750.758831679 222599.403691777 +accept -2 -1 +expect -250434.937024036 222655.938193266 + +direction inverse +accept 200 100 +expect -0.000898556 1.251796630 +accept 200 -100 +expect 0.000898556 1.251796630 +accept -200 100 +expect -0.000898554 1.248203369 +accept -200 -100 +expect 0.000898554 1.248203369 + +------------------------------------------------------------------------------- +operation +proj=tpeqd +a=6400000 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect -27845.882978485 -223362.430695260 +accept 2 -1 +expect -251293.378764651 -223419.158985908 +accept -2 1 +expect -27845.882978485 223362.430695260 +accept -2 -1 +expect -251293.378764651 223419.158985908 + +direction inverse +accept 200 100 +expect -0.000895486 1.251790493 +accept 200 -100 +expect 0.000895486 1.251790493 +accept -200 100 +expect -0.000895485 1.248209507 +accept -200 -100 +expect 0.000895485 1.248209507 + + +=============================================================================== +Tilted perspective + Azi, Sph + tilt= azi= h= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=tpers +a=6400000 +h=1000000 +azi=20 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 170820.288955531 180460.865555805 +accept 2 -1 +expect 246853.941538942 -28439.878035775 +accept -2 1 +expect -246853.941538942 28439.878035775 +accept -2 -1 +expect -170820.288955531 -180460.865555805 + +direction inverse +accept 200 100 +expect 0.001988706 0.000228872 +accept 200 -100 +expect 0.001376321 -0.001453641 +accept -200 100 +expect -0.001376321 0.001453641 +accept -200 -100 +expect -0.001988706 -0.000228872 + + +=============================================================================== +Universal Polar Stereographic + Azi, Sph&Ell + south +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=ups +ellps=GRS80 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 2433455.563438467 -10412543.301512826 +accept 2 -1 +expect 2448749.118568199 -10850493.419804076 +accept -2 1 +expect 1566544.436561533 -10412543.301512826 +accept -2 -1 +expect 1551250.881431801 -10850493.419804076 + +direction inverse +accept 200 100 +expect -44.998567498 64.918236287 +accept 200 -100 +expect -44.995702709 64.917020251 +accept -200 100 +expect -45.004297076 64.915804281 +accept -200 -100 +expect -45.001432287 64.914588378 + + +=============================================================================== +Urmaev V + PCyl., Sph., no inv. + n= q= alpha= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=urm5 +a=6400000 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223393.638433964 111696.818785117 +accept 2 -1 +expect 223393.638433964 -111696.818785117 +accept -2 1 +expect -223393.638433964 111696.818785117 +accept -2 -1 +expect -223393.638433964 -111696.818785117 + + +=============================================================================== +Urmaev Flat-Polar Sinusoidal + PCyl, Sph. + n= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=urmfps +a=6400000 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 196001.708134192 127306.843329993 +accept 2 -1 +expect 196001.708134192 -127306.843329993 +accept -2 1 +expect -196001.708134192 127306.843329993 +accept -2 -1 +expect -196001.708134192 -127306.843329993 + +direction inverse +accept 200 100 +expect 0.002040721 0.000785474 +accept 200 -100 +expect 0.002040721 -0.000785474 +accept -200 100 +expect -0.002040721 0.000785474 +accept -200 -100 +expect -0.002040721 -0.000785474 + + +=============================================================================== +Universal Transverse Mercator (UTM) + Cyl, Sph + zone= south +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=utm +ellps=GRS80 +lat_1=0.5 +lat_2=2 +n=0.5 +zone=30 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 1057002.405491298 110955.141175949 +accept 2 -1 +expect 1057002.405491298 -110955.141175949 +accept -2 1 +expect 611263.812278905 110547.105696804 +accept -2 -1 +expect 611263.812278905 -110547.105696804 + +direction inverse +accept 200 100 +expect -7.486952083 0.000901940 +accept 200 -100 +expect -7.486952083 -0.000901940 +accept -200 100 +expect -7.490535682 0.000901935 +accept -200 -100 +expect -7.490535682 -0.000901935 + + +=============================================================================== +van der Grinten (I) + Misc Sph +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=vandg +a=6400000 +lat_1=0.5 +lat_2=2 +no_defs +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223395.249543407 111704.596633675 +rem 223395.249543407 111704.596633675 osgeo +rem 223395.249543407 111704.596633675 debug/bin + + +accept 2 -1 +expect 223395.249543407 -111704.596633675 +accept -2 1 +expect -223395.249543407 111704.596633675 +accept -2 -1 +expect -223395.249543407 -111704.596633675 + +direction inverse +accept 200 100 +expect 0.001790494 0.000895247 +accept 200 -100 +expect 0.001790494 -0.000895247 +accept -200 100 +expect -0.001790494 0.000895247 +accept -200 -100 +expect -0.001790494 -0.000895247 + + +=============================================================================== +van der Grinten II + Misc Sph, no inv. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=vandg2 +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223395.247850437 111718.491037226 +accept 2 -1 +expect 223395.247850437 -111718.491037226 +accept -2 1 +expect -223395.247850437 111718.491037226 +accept -2 -1 +expect -223395.247850437 -111718.491037226 + + +=============================================================================== +van der Grinten III + Misc Sph, no inv. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=vandg3 +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223395.249552831 111704.519904421 +accept 2 -1 +expect 223395.249552831 -111704.519904421 +accept -2 1 +expect -223395.249552831 111704.519904421 +accept -2 -1 +expect -223395.249552831 -111704.519904421 + + +=============================================================================== +van der Grinten IV + Misc Sph, no inv. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=vandg4 +R=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.01 +accept 2 1 +expect 223374.577294355 111701.195484154 +accept 2 -1 +expect 223374.577294355 -111701.195484154 +accept -2 1 +expect -223374.577294355 111701.195484154 +accept -2 -1 +expect -223374.577294355 -111701.195484154 + + +=============================================================================== +Vitkovsky I + Conic, Sph + lat_1= and lat_2= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=vitk1 +ellps=GRS80 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 222607.171211458 111404.251442435 +accept 2 -1 +expect 222776.716709598 -111234.665587445 +accept -2 1 +expect -222607.171211458 111404.251442435 +accept -2 -1 +expect -222776.716709598 -111234.665587445 + +direction inverse +accept 200 100 +expect 0.001796204 0.000898315 +accept 200 -100 +expect 0.001796202 -0.000898316 +accept -200 100 +expect -0.001796204 0.000898315 +accept -200 -100 +expect -0.001796202 -0.000898316 + +------------------------------------------------------------------------------- +operation +proj=vitk1 +a=6400000 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223370.224840471 111786.123319644 +accept 2 -1 +expect 223540.351507255 -111615.956157675 +accept -2 1 +expect -223370.224840471 111786.123319644 +accept -2 -1 +expect -223540.351507255 -111615.956157675 + +direction inverse +accept 200 100 +expect 0.001790068 0.000895246 +accept 200 -100 +expect 0.001790066 -0.000895247 +accept -200 100 +expect -0.001790068 0.000895246 +accept -200 -100 +expect -0.001790066 -0.000895247 + + +=============================================================================== +Wagner I (Kavraisky VI) + PCyl, Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=wag1 +a=6400000 +lat_1=0.5 +lat_2=2 +n=0.5 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 195986.781561158 127310.075060660 +accept 2 -1 +expect 195986.781561158 -127310.075060660 +accept -2 1 +expect -195986.781561158 127310.075060660 +accept -2 -1 +expect -195986.781561158 -127310.075060660 + +direction inverse +accept 200 100 +expect 0.002040721 0.000785474 +accept 200 -100 +expect 0.002040721 -0.000785474 +accept -200 100 +expect -0.002040721 0.000785474 +accept -200 -100 +expect -0.002040721 -0.000785474 + + +=============================================================================== +Wagner II + PCyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=wag2 +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 206589.888099962 120778.040357547 +accept 2 -1 +expect 206589.888099962 -120778.040357547 +accept -2 1 +expect -206589.888099962 120778.040357547 +accept -2 -1 +expect -206589.888099962 -120778.040357547 + +direction inverse +accept 200 100 +expect 0.001936024 0.000827958 +accept 200 -100 +expect 0.001936024 -0.000827958 +accept -200 100 +expect -0.001936024 0.000827958 +accept -200 -100 +expect -0.001936024 -0.000827958 + + +=============================================================================== +Wagner III + PCyl., Sph. + lat_ts= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=wag3 +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223387.021718166 111701.072127637 +accept 2 -1 +expect 223387.021718166 -111701.072127637 +accept -2 1 +expect -223387.021718166 111701.072127637 +accept -2 -1 +expect -223387.021718166 -111701.072127637 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Wagner IV + PCyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=wag4 +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 192801.218662384 129416.216394803 +accept 2 -1 +expect 192801.218662384 -129416.216394803 +accept -2 1 +expect -192801.218662384 129416.216394803 +accept -2 -1 +expect -192801.218662384 -129416.216394803 + +direction inverse +accept 200 100 +expect 0.002074503 0.000772683 +accept 200 -100 +expect 0.002074503 -0.000772683 +accept -200 100 +expect -0.002074503 0.000772683 +accept -200 -100 +expect -0.002074503 -0.000772683 + + +=============================================================================== +Wagner V + PCyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=wag5 +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 203227.051925325 138651.631442713 +accept 2 -1 +expect 203227.051925325 -138651.631442713 +accept -2 1 +expect -203227.051925325 138651.631442713 +accept -2 -1 +expect -203227.051925325 -138651.631442713 + +direction inverse +accept 200 100 +expect 0.001968072 0.000721216 +accept 200 -100 +expect 0.001968072 -0.000721216 +accept -200 100 +expect -0.001968072 0.000721216 +accept -200 -100 +expect -0.001968072 -0.000721216 + + +=============================================================================== +Wagner VI + PCyl, Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=wag6 +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 211652.562164410 105831.180787330 +accept 2 -1 +expect 211652.562164410 -105831.180787330 +accept -2 1 +expect -211652.562164410 105831.180787330 +accept -2 -1 +expect -211652.562164410 -105831.180787330 + +direction inverse +accept 200 100 +expect 0.001889802 0.000944901 +accept 200 -100 +expect 0.001889802 -0.000944901 +accept -200 100 +expect -0.001889802 0.000944901 +accept -200 -100 +expect -0.001889802 -0.000944901 + + +=============================================================================== +Wagner VII + Misc Sph, no inv. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=wag7 +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 198601.876957312 125637.045714171 +accept 2 -1 +expect 198601.876957312 -125637.045714171 +accept -2 1 +expect -198601.876957312 125637.045714171 +accept -2 -1 +expect -198601.876957312 -125637.045714171 + + +=============================================================================== +Werenskiold I + PCyl., Sph. +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=weren +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223378.515757634 146214.093042288 +accept 2 -1 +expect 223378.515757634 -146214.093042288 +accept -2 1 +expect -223378.515757634 146214.093042288 +accept -2 -1 +expect -223378.515757634 -146214.093042288 + +direction inverse +accept 200 100 +expect 0.001790493 0.000683918 +accept 200 -100 +expect 0.001790493 -0.000683918 +accept -200 100 +expect -0.001790493 0.000683918 +accept -200 -100 +expect -0.001790493 -0.000683918 + + +=============================================================================== +Winkel I + PCyl., Sph. + lat_ts= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=wink1 +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223385.131640953 111701.072127637 +accept 2 -1 +expect 223385.131640953 -111701.072127637 +accept -2 1 +expect -223385.131640953 111701.072127637 +accept -2 -1 +expect -223385.131640953 -111701.072127637 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 + + +=============================================================================== +Winkel II + PCyl., Sph., no inv. + lat_1= +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=wink2 +a=6400000 +lat_1=0.5 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223387.396433786 124752.032797445 +accept 2 -1 +expect 223387.396433786 -124752.032797445 +accept -2 1 +expect -223387.396433786 124752.032797445 +accept -2 -1 +expect -223387.396433786 -124752.032797445 + + +=============================================================================== +Winkel Tripel + Misc Sph + lat_1 +=============================================================================== + +------------------------------------------------------------------------------- +operation +proj=wintri +a=6400000 +lat_1=0 +lat_2=2 +------------------------------------------------------------------------------- +tolerance 0.00010 +accept 2 1 +expect 223390.801533485 111703.907505745 +accept 2 -1 +expect 223390.801533485 -111703.907505745 +accept -2 1 +expect -223390.801533485 111703.907505745 +accept -2 -1 +expect -223390.801533485 -111703.907505745 + +direction inverse +accept 200 100 +expect 0.001790493 0.000895247 +accept 200 -100 +expect 0.001790493 -0.000895247 +accept -200 100 +expect -0.001790493 0.000895247 +accept -200 -100 +expect -0.001790493 -0.000895247 +Internal regression tests done. [Stubs: 0] Total: 151. Failure: 0. Success: 151 + +END |
