aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2022-01-09Minor cppcheck fixesEven Rouault
2022-01-09peirce_q: add inversion of +shape=square and diamond through generic ↵Even Rouault
inversion method
2022-01-07Map peirce_q to pseudo WKT2 and ESRI WKTEven Rouault
2022-01-07peirce_q: rename +type parameter wrongly introduced in 8.2.1 to +shape ↵Even Rouault
(fixes #3011)
2022-01-07labrd: document in the tagline and documentation that lat_0 is required (#2997)Bert Huijben
2022-01-07Merge pull request #3013 from rouault/fix_3012Even Rouault
proj_get_crs_info_list_from_database(): report PJ_TYPE_GEODETIC_CRS for IAU_2015 -ocentric geodetic CRS (fixes #3012)
2022-01-06proj_get_crs_info_list_from_database(): report PJ_TYPE_GEODETIC_CRS for ↵Even Rouault
IAU_2015 -ocentric geodetic CRS (fixes #3012)
2022-01-06Implement Geographic3D to Depth/Geog2D+Depth as used by ETRS89 to CD Norway ↵Even Rouault
depth Fixes #2739 Verified with example from IOGP Guidance Note 7-2 (ver 62, Dec 2021) page 169, with 38 = h_obs - D_obs = 50 - 12. $ echo 60.0015 4.9960 38 | PROJ_LIB=data PROJ_NETWORK=ON bin/cs2cs -d 4 EPSG:4937 EPSG:9883 60.0015 4.9960 5.8827 $ echo 60.0015 4.9960 38 | PROJ_LIB=data PROJ_NETWORK=ON bin/cs2cs -d 4 EPSG:4937 EPSG:4258+9672 60.0015 4.9960 5.8827 $ echo 60.0015 4.9960 5.8827 | PROJ_LIB=data PROJ_NETWORK=ON bin/cs2cs -d 4 EPSG:9883 EPSG:4937 60.0015 4.9960 38.0000 $ echo 60.0015 4.9960 5.8827 | PROJ_LIB=data PROJ_NETWORK=ON bin/cs2cs -d 4 EPSG:4258+9672 EPSG:4937 60.0015 4.9960 38.0000
2022-01-04Handle EPSG:1111 'Transverse Mercator (3D)' method (used in EPSG:10.044 by ↵Even Rouault
Projected 3D CRS EPSG:9895 'Luxembourg TM (3D)'
2022-01-04Merge pull request #3006 from rouault/fix_for_doxygen_1_9_3Even Rouault
Fix doc generation with Doxygen 1.9.3
2022-01-04Merge pull request #3001 from mwtoews/rfc-7-csaEven Rouault
Transition Clang Static Analizer to use CMake
2022-01-04Fix doc generation with Doxygen 1.9.3Even Rouault
Since the update to Doxygen 1.9.3, doc generation was broken. With bisection of doxygen, it was found this was due to commit https://github.com/doxygen/doxygen/commit/ee8f3fb7a2ed74ee30ae3202707617e97f6641ff which makes Doxygen honour nested @cond . This revealed bad pairing of @cond / @endcond in our code, fixed by this commit.
2022-01-02Transition Clang Static Analizer to use CMakeMike Taves
2021-12-26Update ABI numbers for 8.2.1 releaseKristian Evers
2021-12-20Fix and additional options for Peirce Quincuncial projections (#2978)Toby C. Wilkinson
This fixes the current forward implementation of Peirce Quincuncial proj to correctly flip/reflect out the southern hemisphere to four triangles, and rotate entire result to a square or diamond. (It there resolves the issues identified with pull request https://github.com/OSGeo/PROJ/pull/2230 , where southern hemisphere was wrongly projected over northern, and reverses the restriction to northern hemisphere introduced there). It also adds additional lateral projection of the hemispheres. - This PR adds an optional parameter `+type` which allows selection of projection. The `+type=square` and `+type=diamond` types match in principle ESRI's twin implementations of square and diamond PQ projs. The **default** if not specified is `+type=diamond`. - The previous behaviour restricted to the northern hemisphere can be reproduced using the `+type=nhemisphere`, though this is an edge case only. - An additional `+type=horizontal` and `+type=vertical` rectangular lateral versions have been added that place each hemisphere side-by-side. This is primarily to allow creation of projections such as Greiger Triptychial, which also require the additional optional params `scrollx` or `scrolly` in order to shift parts of the projection from one side of the map to the other. - Additional documentation has been added to proj description, including quoting the usual meridian used in common usage of projection, and images showing the different types.
2021-12-16WKT1 import: correctly deal with missing rectified_grid_angle parameterEven Rouault
by setting its value from the azimuth angle. and on export to PROJ.4 string do not emit a erroneous +gamma=0 when the parameter it is missing. Fixes https://lists.osgeo.org/pipermail/proj/2021-December/010475.html
2021-12-16WKTParser::Private::buildProjectionStandard(): minor cleanupEven Rouault
2021-12-08createOperations(): improvement for "NAD83(CSRS) + CGVD28 height" to ↵Even Rouault
"NAD83(CSRS) + CGVD2013(CGG2013) height" That transformation involves doing CGVD28 height to CGVD2013(CGG2013) height by doing: - CGVD28 height to NAD83(CSRS): EPSG registered operation - NAD83(CSRS) to CGVD2013(CGG2013) height by doing: * NAD83(CSRS) to NAD83(CSRS)v6: ballpark * NAD83(CSRS)v6 to CGVD2013(CGG2013): EPSG registered operation
2021-12-04Merge pull request #2968 from rouault/fix_ossfuzz_41462Even Rouault
Fix extremely long parsing time on hostile PROJ strings
2021-12-02PROJStringSyntaxParser(): make it use pj_trim_argc/argv to have similar ↵Even Rouault
tokenization/serialization in different code paths This avoids in particular recursive calls to ob_tran initialization on weird inputs. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=41462
2021-12-02PROJ string parsing: fix unquoting of parameter values when the parameter ↵Even Rouault
name is just one single character Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=41462
2021-12-01Cache result of proj_get_type() to help for performance of proj_factors() ↵Even Rouault
(fixes #2965)
2021-11-24Pipeline parsing: reject proj=/o_proj= before first step, to avoid bad ↵Even Rouault
performance pattern on hostile pipelines Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=41290
2021-11-20Docs: Add new Ellipsoids page to explain ellipsoidal parameters (#2922)Brendan Jurd
Co-authored-by: Rohit <rohitpingale103@gmail.com> Co-authored-by: Brendan Jurd <brendan.jurd@geoplex.com.au> Co-authored-by: Mike Taves <mwtoews@gmail.com>
2021-11-19DOCS: Add doxygen entry for proj_context_set_search_paths.Brendan Jurd
Refs #2540.
2021-11-15createOperationsGeogToGeog(): avoid potential harmless floating-point ↵Even Rouault
division by zero. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=41045
2021-11-14Merge pull request #2938 from rouault/fix_ossfuzz_40955Even Rouault
createOperationsCompoundToCompound(): fix null pointer dereference when connection to proj.db doesn't exist.
2021-11-14Merge pull request #2937 from rouault/fix_2936Even Rouault
createOperations(): do not stop at the first operation in the PROJ namespace for vertical transformations
2021-11-12createOperationsCompoundToCompound(): fix null pointer dereference when ↵Even Rouault
connection to proj.db doesn't exist. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=40955
2021-11-12Add new option to proj_create_crs_to_crs_from_pj method to force +over on ↵Peter Townsend
transformation operations (#2914) Fixes #2512
2021-11-11createOperations(): do not stop at the first operation in the PROJ namespace ↵Even Rouault
for vertical transformations In particular helps with transformation between "NAD83 + NAVD88 height" and WGS 84 that have regressed in 8.2.0 Fixes #2936
2021-11-09PROJStringFormatter::toString(): avoid invalid iterator increment (fixes #2931)Even Rouault
2021-11-09Reformatting fixesEven Rouault
2021-11-06Merge pull request #2926 from snowman2/warnEven Rouault
DOC: Add warning in proj_as_proj_string about potential information loss with CRS
2021-11-05DOC: Add warning in proj_as_proj_string about potential information loss ↵snowman2
with CRS
2021-11-05DOC: add available keys to proj_context_get_database_metadatasnowman2
2021-11-05Merge pull request #2921 from rouault/epsg_10_039Even Rouault
Database: update to EPSG v10.039
2021-11-04Remove useless PROJ_DLL uses in .cpp files (#2920)Momtchil Momtchev
2021-11-04Database: update to EPSG v10.039Even Rouault
2021-11-03BoundCRS WKT import: fix setting of nameEven Rouault
Name was erroneously set (since 8.2.0) to SOURCECRS. Raised in https://lists.osgeo.org/pipermail/gdal-dev/2021-November/054944.html
2021-10-26Update ABI numbers for 8.2.0 releaseKristian Evers
2021-10-25Merge pull request #2913 from rouault/fix_2905Even Rouault
lib_proj.cmake: add a PROJ::proj alias and add BUILD_INTERFACE include directories...
2021-10-25lib_proj.cmake: add a PROJ::proj alias and add BUILD_INTERFACE include ↵Even Rouault
directories, so that proj can be used as a subdirectory of a larger project (fixes #2905)
2021-10-23CMake: revise how we deal with symbol export and static buildsEven Rouault
- Remove the explicit PROJ_MSVC_DLL_IMPORT symbol used for importing symbols from a MSVC .dll: by default on MSVC, we use now __declspec(dllimport), unless PROJ_MSVC_DLL_EXPORT is defined by PROJ at build time. This makes it easier for users: they don't have to define anything special. This simplifies in particular the build of our binaries - For static builds, export -DPROJ_DLL= as public, so that users that import PROJ through CMake mechanism don't have to do it manually.
2021-10-22Merge pull request #2907 from josch/tinshiftfallbackEven Rouault
add fallback strategy for tinshift transform to use closest triangle for points not in any
2021-10-21Add fallback_strategy to tinshift transformJohannes Schauer Marin Rodrigues
- this bumps format_version of tinshift JSON to 1.1 for the new field fallback_strategy - the default behaviour without that field is retained - if fallback_strategy is set to "nearest_side", then points that do not fall into any of the triangles will be transformed according to the nearest triangle - if fallback_centroid is set to "nearest_side", then points that do not fall into any of the triangles will be transformed according to the triangle with the nearest centroid
2021-10-19TYPE: Update const declarations in proj_trans_boundssnowman2
2021-10-17exportToPROJStringGeneric(): avoid harmless floating-point division by zero ↵Even Rouault
if conversion factor is 0. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=40050
2021-10-16createOperations(): avoid harmless floating-point division by zero if ↵Even Rouault
conversion factor of target unit is 0. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=39969
2021-10-16Fix previous commitEven Rouault