aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2022-01-20lookForGridInfo(): make it work properly when passed the old PROJ nameEven Rouault
Fixes https://github.com/qgis/QGIS/issues/45470 That is, if the file for the old PROJ name is not found, but the file for the new PROJ name is found, then use the later for fullFilename and gridAvailable.
2022-01-13Specify CMAKE_INSTALL_RPATH for macOS; use -rpath LDFLAGS for tests (#3009)Mike Taves
2022-01-12Conversion::_exportToPROJString(): fix potential crash introduced in recent ↵Even Rouault
commit. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=43546
2022-01-12Merge pull request #3010 from rouault/fix_2739Even Rouault
Implement Geographic3D to Depth/Geog2D+Depth as used by ETRS89 to CD Norway depth
2022-01-11Merge pull request #3014 from rouault/fix_3011Even Rouault
peirce_q: rename +type parameter wrongly introduced in 8.2.1 to +shape (fixes #3011)
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