aboutsummaryrefslogtreecommitdiff
path: root/nad
AgeCommit message (Collapse)Author
2018-09-18Rename nad/ directory as data/Even Rouault
2018-08-294D API: honour vto_meter / vunits for proj=longlatEven Rouault
This worked for cs2cs / pj_transform(), but not the new API
2018-08-24Merge pull request #1093 from rouault/geoc_flag_fixKristian Evers
Assorted fixes related to +geoc flag handing
2018-08-23Fix Helmert convention for ITRF2008 and ITRF2014 plate motion models (cf ↵Even Rouault
https://github.com/OSGeo/proj.4/pull/1096#pullrequestreview-148679930)
2018-08-21[BREAKING] Hermert: add +convention=position_vector/coordinate_frame, ↵Even Rouault
forbids +transpose (fixes #1091) As identified in #1091, Helmert implementation in PROJ 5.0 and 5.1 is confusing. It happens that by default it used the coordinate_frame convention, contrary to the position_vector convention used traditionaly for +towgs84. The documentation of Helmert was also wrongly specifying that the default convention was position_vector. This commit: - bans the confusing +transpose parameter - removes the concept of a default convention, since in practice both are equally found, and requires +convention as soon as a rotational term parameter is present. For translation only, convention is ignored and optional, as having no effect. - fixes all the identified uses of proj=helmert in code, doc and tests This is obviously a breaking change: - users will have to adapt their pipeline expressions - in particular, init files that would use helmert must be adapted However, as designed, the break will be explicit, and not silent.
2018-08-19pj_transform / cs2cs: honour +geoc flagEven Rouault
2018-08-11nad/Makefile.am: add null.lla to EXTRA_DISTEven Rouault
2018-05-24nad/Makefile.am: add tests/test_nodata.gtx to EXTRA_DIST (fixes #1019)Even Rouault
2018-05-19Vertical grid shift: do not interpolate node values at nodata value (fixes ↵Even Rouault
#1002)
2018-05-05Update URL & filename for Swiss datumgrids.Bas Couwenberg
Fixes: #972
2018-03-11Add Web Mercator test caseKristian Evers
2018-03-01Revert fix to #22Kristian Evers
The fix in #22 solved the problem at hand and doing what was expected from the specified parameters. Unfortunately it also removed the slightly hacky "feature" that makes the web mercator work in pj_transform. The web mercator is special since the latitude is computed on the ellipsoid, but behaves as if if was defined on a sphere. Hence it is problematic to change the ellipsoid parameters when using the web mercator, even though that is the geodetically correct thing to do. The web mercator is used in more or less any web mapping application and is thus one of the most frequently used transformations in PROJ. This justifies re-introducing the minor bug reported in #22. The problem will have to be taken care of properly when pj_transform is removed from the library in favour of the transformation pipelines based API.
2018-02-23Merge pull request #806 from sebastic/proj-datumgrid-duplicatesKristian Evers
Remove .gsb files included in proj-datumgrid.
2018-02-23Tidy a few typosMike Toews
2018-02-22Remove README.GRD, moved to proj-datumgrid.Bas Couwenberg
File is also not included in the release tarballs.
2018-02-22Remove ntv1_can.dat included in proj-datumgrid.Bas Couwenberg
2018-02-22Also install .gtx files from proj-datumgrid.Bas Couwenberg
proj-datumgrid-1.7RC1 contains .gtx files too.
2018-02-14Remove .gsb files included in proj-datumgrid.Bas Couwenberg
Fixes: #803
2018-02-10Add BETA2007 grid and change potsdam datum (#383)Even Rouault
Functionnaly equivalent to https://github.com/OSGeo/proj.4/pull/371 by Jürgen Fischer See http://crs.bkg.bund.de/crseu/crs/descrtrans/BeTA/de_dhdn2etrs_beta.php Confirmed with Uwe Schmitz <uwe.schmitz@bezreg-koeln.nrw.de> that free redistribution is allowed and welcome.
2018-02-09Relaxing tolerances in a few tests to fix #778.Kristian Evers
2018-02-02Improve tests and add test files to automake setup.Kristian Evers
Make sure that the gie files in test/gie and test/gigs are included in the distribution tarball. Tests with gie are set up to run all available files matching *.gie in the gie and gigs directories. For this reason tests that are known to fail in gigs/ have been renamed to *.gie_failing, so that "make check" can be run in-tree in local copies of the git repository.
2018-01-23Handle ellipsoid parameters correctly when using +nadgrids=@null. Fixes #22.Kristian Evers
Make sure to not change ellipsoid parameters to WGS84 when applying the null grid. Coordinates will still refer to the input ellipsoid so we keep the original parameters which in turn will be used when the coordinates are transformated to/from cartesian/geocentric space. Adjusted regression test material in nad/proj_outIGNF.dist slightly to accomodate numerical differences at the mm level. The transformations in question are at best accurate to about 1m so this shouldn't change real world usage of these transformations.
2018-01-09Add gie tests to autoconf makefile.Kristian Evers
Download grid files as the first thing in the travis install script and that 'make check' can be run without errors caused by missing grids.
2018-01-03Add plate motion model parameters to ITRF init-files.Kristian Evers
Parameters for the plate motion models (PMM) for ITRF2008 and ITRF2014 are added to the ITRF2008/2014 init-files. The PMMs allow coordinates to be moved back and forward in time in plate fixed reference frames such as GR96 in Greenland which is defined as ITRF94@1996.623. Transforming an ITRF2014-coordinate to GR96 is done with: +proj=pipeline +step +init=ITRF2014:NOAM +t_epoch=1996.623 +t_obs=2017.584 +step +init=ITRF2014:ITRF94 +t_obs=1996.623 where the first step transforms the coordinate back in time to ITRF2014@1996.632 by using the ITRF2014 PMM. The second step transforms the ITRF2014 coordinate to ITRF94.
2017-12-19Some corrections in response to a review by Kristian Evers (#718)Thomas Knudsen
* Some corrections in response to a review by Kristian Evers
2017-12-17Free format everywhere (#693)Thomas Knudsen
* Free format now in cmd lines, in gie, and in init files * Corrected handling of defaults * Add demo of integrated definition and validation * Repair stack-smashing memmove in get_init * repair paralist corruption, clean up debug output * Install test files for nmake builds * Add many improvements following suggestions by @schwehr * Be consistent in requiring lower case everywhere in gie.c Also, this Fixes #703 and Fixes #697
2017-12-17Update epsg file to database v9.2 (fixes #711)Even Rouault
2017-12-06Use t_epoch and t_obs instead of epoch and tobs.Kristian Evers
Prefixing with t_ is more consistent with the existing parameters in PROJ, such as x_0 and friends. t_epoch and t_obs is already used in PJ_deformation. Now users can expect consistency across time-varying transformations.
2017-10-06Enable default destructor for all PJ objects.Thomas Knudsen
In most cases memory deallocation is completely removed from the code since it can be handled by the default destructor. In a few special cases a local destructor overrides the default destructor and makes sure that locally allocated memored is cleaned up correctly. Move all deallocation from pj_free to pj_default_destructor Rename pj_latlong.c to fit with the conventional format PJ_latlong.c - freeup was missed here due to wrong naming Clean up pj_init to avoid double deallocation; Also resolve #576 by adding z_0 and t_0 options in pj_init, while cleaning Add a prototype for dealloc_params Added missing errno.h include in pj_ctx.c Temporarily removing ob_tran from testvarious, to be sure that is where the trouble is Make PJ_ob_tran.c use proper initialization for the chained projection proj=ob_tran: make it clear, that we disallow ellipsoidal projections, and, for improved backwards compatibility, turns off default settings, which could inject unwanted ellipsoid definitions ... then also remove the ellipsoid definition from the testvarious test case - which is probably buggy anyway Work around cs2cs spherical init bug in testvarious; Forbid defs for ob_tran in pj_init
2017-08-14Fix ITRF2014Mike Toews
2017-08-07Add ITRF init files (#552)Kristian Evers
* Add ITRF init files, that makes it easy to use ITRF transformations in pipelines * Added ITRF* files to the build systems
2017-08-07Adding info functions to proj.h API. (#551)Kristian Evers
* Adding info functions to proj.h API. Four new functions are added with this commit: proj_info(), proj_pj_info(), proj_grid_info() and proj_init_info(). Additionally four new data types are added: PJ_INFO, PJ_PROJ_INFO, PJ_GRID_INFO and PJ_INIT_INFO. The functions return the corresponding data types. These functions allows users of the PROJ.4 library to get information about various PROJ.4 entities and the library itself. The new data types are structs that contain specific information about either the library instance, a PJ instance, a grid or an init file. Together the four new functions cover a big part of the functionality in the semi-public projects.h API and should hopefully make it easier for user to migrate their code to the proj.h API in the future. Besides covering already existing functionality in the old API, this commit introduces the ability to add metadata to init-files. This is primarily added to give users a way of knowing which version of the EPSG database they are using, but it also comes in handy for other init-files. The init-file metadata is added directly to the init-file as a special "projection" called "metadata". The info projection of the epsg init-file is thus described as: <metadata> +version=9.0.0 +origin=EPSG +lastupdate=2017-01-10 The proj_init_info() function uses the internal pj_param() to read the metadata. As a consequence, "metadata" will not be available as a the name of a projection in the future. This is a reasonable price to pay considering the ease of the implementation of adding metadata to init-files this way, and of course that "metadata" is a very unlikely name for a projection in any case. A metadata tag has been added to all init-files in the nad-directory. For most only a subset of the possible parameters has been added. * Replaced calls to sprintf and strncpy with safer options. Added pj_strlcpy for internal use. * Fail gracefully when getting non-initialized PJ in proj_pj_info() * Change length of filename member in PJ_INIT_INFO and PJ_GRID_INFO to 260 (MAX_PATH)
2017-02-26nad/esri: replace no_defs by +no_defs and remove duplicates (#494)Even Rouault
2017-01-10Update to EPSG v9.0 database (#477)Even Rouault
2016-12-15Horner and helmert (#456)Thomas Knudsen
Introducing the Horner polynomial evaluator also introduces the need for very long +init:tag arguments (a n'th order 2D polynomium has (n+1)(n+2)/2 coefficients, and n is typically in the range 5-10, i.e. up to around 60 coefficients for each polynomium, and there are 4 polynomia in a complete back/forward transformation set). Hence, in this commit, along with the first part of the Horner code, the code for reading +init files has been modified in a (for all practical purposes) backwards compatible way, by making it possible to introduce line continuations by escaping line breaks, i.e. preceding them with a backslash. An escaped line break works (as it would in TeX), by skipping all following whitespace, including interspersed #-comments. This simple extension makes it possible to create very long initialization elements without losing track of the structure (cf. s45b.pol and pj_init_test.c in the examples-directory for a demo). The s45b.pol file was created by hand-editing the output of the software doing the original constrained adjustment for the polynomial coefficients. The simple adding of the “skip following whitespace and comments” feature has made it possible to retain almost all metadata from the source material. This is considered very important, since 1) For the lack of a prior common file format for geodetic polynomial coefficients, there is a good chance that this will become THE standard, at least for the time being, and 2) Without the metadata represented, it will be very hard for a human to debug code involving a slightly misrepresented polynomium. Due to the current architecture of the pj_init.c code (mostly around the fill_buffer() function), it is next to impossible to implement the line continuation functionality in full generality. Hence, it has been necessary to limit this format extension to files smaller than 64 kB. * Correction of spherical HEALpix test case The first HEALpix test case in nad/testvarious is clearly intended to invoke the spherical form of HEALpix. It does, however, specify the spheroid using the +a=1 size parameter, without specifying any shape parameter. But since +no_defs is not specified either, a shape parameter is picked up from the nad/proj_def.dat file (where ellps=WGS84 is given in the <general> section). It appears that this has not happened before I updated the pj_init code to support projection pipelines (see below). I do, however, believe that the present behaviour is the correct one, and rather than retrohacking the pj_init code, to (incorrectly, I believe) reproduce the prior behaviour, I have corrected the test case invocation in nad/testvarious to specify the spheroid using the +R=1 size parameter (which was already used in the following test case). * Repair scaling of projections stomping on value of semimajor axis * Workaround MSVC HUGE_VAL misimplementation. The "return const err object" idiom (i.e. const <type> err = {HUGE_VAL,...}; ... if (bad) return err) is problematic to implement due to MSVC's misimplementation of HUGE_VAL as a non-const. Hence, we need to run-time initialize these. In the pj_inv functions, this was mistakenly done to the wrong object. For pj_fwdobs/invobs and the remaining part of the obs-based API, this is now worked around by providing functions returning a run time HUGE_VAL initialized PJ_OBS or PJ_COO resp. Obnoxious, but given MSVC's market penetration there is really not much else we can do.
2016-12-12Add a scripts/fix_typos.sh script and correct reported errorsEven Rouault
2016-09-02fix #407 -- nad2bin and convertdata interaction in cmakeHoward Butler
2016-08-17EPSG db 8.9 update -- previous updates missed Kyrg codesHoward Butler
2016-08-16continuing update to EPSG db 8.9 (no substantive changes)Howard Butler
2016-08-16update EPSG db to v8.9Howard Butler
2016-04-04Test revisions #3Bojan Savric
2016-04-04Test revisions #2Bojan Savric
2016-04-04Test revisionsBojan Savric
2016-04-04The Natural Earth II testsBojan Savric
2016-04-04The Compact Miller test revisions #5Bojan Savric
2016-04-04The Compact Miller test revisions #4Bojan Savric
2016-04-04The Compact Miller test revisions #3Bojan Savric
2016-04-04The Compact Miller test revisions #2Bojan Savric
2016-04-04The Compact Miller test revisionsBojan Savric
2016-04-04Adding Natural Earth II and Compact MillerBojan Savric