aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2019-02-26Fix build issues on Solaris6.0.0Even Rouault
2019-02-26Rename internal constant to avoid conflict with macro in Solaris system headersEven Rouault
2019-02-26io.cpp: cast to 'unsigned char' before isspace() to avoid undefined ↵Even Rouault
behaviour, for example on netBSD 8
2019-02-26mutex.cpp: remove _XOPEN_SOURCE definition that causes compilation problem ↵Even Rouault
on netBSD 8 and is useless on Linux
2019-02-24Robinson: fix wrong values for forward path for latitudes >= 87.5 (fixes ↵Even Rouault
#1172), and fix inaccurate inverse method
2019-02-24Merge pull request #1285 from rouault/doc_pattersonKristian Evers
Doc: add minimal documentation for patterson, compact miller, misrsom, natearth2, sch and times projections
2019-02-24ParameterValue::_exportToWKT(): fix null pointer dereference with ↵Even Rouault
-D_GLIBCXX_ASSERTIONS on WKT with PARAMETERFILE (fixes #1290)
2019-02-24jniproj.cpp: fix compiler warningEven Rouault
2019-02-23Doc: add minimal documentation for sch projectionEven Rouault
2019-02-21Transformation: reintroduce the term of 'Null geographic offset' for ↵Even Rouault
transformations between geographic CRS of same datum (typically 3D to 2D)
2019-02-21Geog2D+Height -> Geog3D of same datum: avoid inserting a useless ballpark ↵Even Rouault
horizontal transformation
2019-02-21projinfo: add information about missing gridsEven Rouault
2019-02-20typo fixes: s/Explictly/Explicitly/ and s/instanciat/instantiat/Even Rouault
2019-02-20CoordinateOperation: add a hasBallparkTransformation() method that can be ↵Even Rouault
used to know if it includes a very approximative transformation term
2019-02-20CompoundCRS to Geog3DCRS: in synthetised transformation, document in the ↵Even Rouault
name we are lacking an ellipsoid height to vertCRS height correction
2019-02-20PROJStringFormatting: change order of emission of push/pop w.r.t axis ↵Even Rouault
swap/unitconvert to avoid useless simplification rules
2019-02-20projinfo: advertize the use of '--spatial-test intersects' when it can bring ↵Even Rouault
more results
2019-02-20Apply multiplier in proj_vgrid_value()Even Rouault
2019-02-20PROJStringFormatter: remove useless push/pop in another caseEven Rouault
2019-02-20Operation sorting: tweakEven Rouault
2019-02-20Vertical CRS transformation: synthetize a vertical unit change ↵Even Rouault
transformation when needed, and also sort Null geographic offset transformation in last
2019-02-20compoundCRS to compoundCRS: avoid emitting dummy 'Null geographic offset ↵Even Rouault
from X to X' in transformation name
2019-02-20vgridshift: propagate multiplier to avoid false-positive detection of nodata ↵Even Rouault
values in the grids with US VERTCON grids that are in millimeters
2019-02-20Add VERTCON grid name alternatives in database, and handle filename ↵Even Rouault
substitution for VERTCON method
2019-02-18Fix a few issues with i386 buildsEven Rouault
Relax tolerances in a few unit test, and in laea code. Seen with gcc 5.3 and also 7.1 Related to the use of the 387 floating-point math, since they disappear with gcc 7.1 if using non-default -mfpmath=sse -msse
2019-02-17Modify the default strategy of researching intermediate CRS to do it only if ↵Even Rouault
there is no direct transformation
2019-02-16Make sure proj_get_source_crs() and proj_get_target_crs() work on 'pseudo' ↵Even Rouault
PJ object returned by proj_create_crs_to_crs() when there are several alternatives
2019-02-16Make sure that the PJ object returned by proj_create_crs_to_crs() is a ↵Even Rouault
proper CoordinateOperation so that we can call proj_get_source_crs() on it for example
2019-02-14Bump ABI version numberKristian Evers
2019-02-14Merge pull request #1264 from kbevers/remove-t_obsKristian Evers
Clean up time handling in helmert and deformation
2019-02-14Coordinate operations where a grid is present, but not in grid_alternatives ↵Even Rouault
table, should be considered as known to be sorted first
2019-02-14deformation: Replace +t_obs with +dtKristian Evers
The +t_obs parameter was confusing for users since it effectively overwrote the observation time in input coordinates. To make it more clear what is the operation is doing, users are now required to directly specify the time span for which they wish to apply a given deformation. The parameter +dt has been added for that purpose. The new parameter is mutually exclusive with +t_epoch. +dt is used when deformation for a set amount of time is needed and +t_epoch is used (in conjunction with the observation time of the input coordinate) when deformation from a specific epoch to the observation time is needed.
2019-02-14Merge remote-tracking branch 'osgeo/master' into remove-t_obsKristian Evers
2019-02-14Reverse direction of deformation operations/transformations/deformationKristian Evers
Changed the direction of dt-calculation to follow the same convention as helmert. Changed from dt = t_c - t_obs to dt = t_obs - t_c, which effectively reverses the direction of the operation. Existing projstrings using deformation can simply reverse the direction of the operation to achieve the same results as before this commit.
2019-02-13EPSG Helmert and Molodensky-Badekas methods in the Geographic 2D domain: use ↵Even Rouault
the push/pop v_3 operator to preserve the Z component
2019-02-13PROJ string parsing: no longer attempt to build a CoordinateOperation object ↵Even Rouault
from +proj=helmert/molodensky since there are ambiguities
2019-02-13Add push and pop operationsKristian Evers
This commit introduces the concept of a pipeline coordinate stack in which components of coordinates can be saved and loaded from. This makes it possible to moved values from one step of a pipeline to another, effectively overwriting parts of the output from a given step.
2019-02-12Merge remote-tracking branch 'osgeo/master' into pipestackKristian Evers
2019-02-11Make tmerc an alias for etmerc. (#1234)Kristian Evers
* Make tmerc an alias for etmerc This switches the algorithm used in tmerc to the Poder/Engsager tmerc algorithm. The original tmerc algorithm of Evenden/Snyder origin can still be accessed by adding the +approx flag when initializing a tmerc projection. The +approx flag can also be used when initializing UTM projections, in which case the Evenden/Snyder algorithm is used as well. If a tmerc projection is instantiated on a spherical earth the Evenden/Snyder algorithm is used as well since the Poder/Engsager algorithm is only defined on the ellipsoid. +proj=etmerc can still be instantiated for backwards compatibility reasons. Co-authored-by: Kristian Evers <kristianevers@gmail.com> Co-authored-by: Even Rouault <even.rouault@spatialys.com>
2019-02-11cct: fix memory leakEven Rouault
2019-02-11Use pj_new()Even Rouault
2019-02-10Completely remove Chebychev remains from codebaseEven Rouault
c6ab83f5742bc5ac6f9cb9a8b2a4f1ea241b6f63 already removed their availability in user facing application, but the library code remained, and appeared to be unused by the rest of the library, and not available to library users, the API being only in proj_internal.h. So remove all remains.
2019-02-07Rename proj_crs_list_destroy() to proj_crs_info_list_destroy()Even Rouault
2019-02-07Add proj_get_crs_info_list_from_database()Even Rouault
This method is intended to be used typically by GUI that lists all possible CRS. What is does could be done by previously existing functions, but it is much faster. It typically runs in less than 0.1s (hot run) versus ~0.5s with the method that consists in enumerating all codes and instanciating a PJ object for each of them.
2019-02-06Shut up pj_create_internal when varifying validity of generated proj-stringKristian Evers
2019-02-06ISO19111: Handle database area objects with no bounding boxEven Rouault
2019-02-05PROJStringParser::createFromPROJString(): avoid potential infinite loop. ↵Even Rouault
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12913. Credit to OSS Fuzz
2019-02-05Merge pull request #1248 from kbevers/remove-nad2binKristian Evers
Remove all traces of nad2bin and nad2nad
2019-02-04Remove all traces of nad2bin and nad2nadKristian Evers
The source material for the default grids used by PROJ has been moved to the proj-datumgrid repository. For that reason it is no longer necessary to include the nad2bin program in the PROJ repository and source distribution. From now on the nad2bin application will be kept in the proj-datumgrid repo. Previously the null grid was generated by running nad2bin on the null.lla file. Since nad2bin is no longer available null.lla has been replaced by its binary counterpart null. This file will be distributed and installed alongside PROJ. Build scripts and documenation has been adjusted so that nad2bin is not mentioned anywhere. Additionally all references to nad2nad has been removed as well. nad2nad has not been part of the PROJ distribution for quite some time so this has been long overdue.
2019-02-04Use pkgconfig to find sqlite3.Elliott Sales de Andrade