aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2020-11-29Spherical tmerc forward: do not restrict to [-90,90] longitude rangeEven Rouault
The restriction was a copy&paste from the Evenden/Snyder approximate ellipsoidal implementation, but the spherical one is exact, so this restriction isn't needed. Also tune a bit the handling of lat=0, |lon| > 90
2020-11-29Merge pull request #2450 from rouault/setAllowEllipsoidalHeightAsVerticalCRSEven Rouault
Add option to allow export of Geographic/Projected 3D CRS in WKT1_GDAL
2020-11-29Inverse tmerc spherical: fix wrong sign of latitude when lat_0 is used ↵Even Rouault
(fixes #2468) Corrected formula given by @evanmiller
2020-11-28createOperations(): get a '+proj=noop' instead of '+proj=affine +s33=-1' ↵Even Rouault
when attempting (non-sensical) EPSG:3855 to EPSG:4326
2020-11-28WKT1 import: better deal with apps.epsg.org output w.r.t datum ensemble namesEven Rouault
2020-11-28proj_create_crs_to_crs_from_pj(): do not use ↵Even Rouault
PROJ_SPATIAL_CRITERION_PARTIAL_INTERSECTION if area is specified
2020-11-28cs2cs: add --area and --bbox options to restrict candidate coordinate ↵Even Rouault
operations (fixes #2423)
2020-11-28Use same arguments to printf format string for both radians and degrees in ↵Houder
output by cct (#2453) Currently the output of the cct utility is different between radians and degrees (as expected by cct), because of a bug in cct: $ printf "1 2\n" | cct -z 0 -t 0 +proj=pipeline +step +proj=unitconvert +xy_in=deg +xy_out=rad 1.0000000000 2.0000000000 0.0000 0.0000 $ printf "1 2\n" | cct -z 0 -t 0 +proj=pipeline +step +proj=unitconvert +xy_in=deg +xy_out=deg 1.0000 2.0000 0.0000 0.0000 The arguments to the printf format string are as follows: * radians: width 14, precision 10 * degrees: width 13, precision 4 (this is by mistake. bug!) After the suggested fix has been applied, output will be the same for both radians and degrees: $ printf "1 2\n" | cct -z 0 -t 0 +proj=pipeline +step +proj=unitconvert +xy_in=deg +xy_out=rad 1.0000000000 2.0000000000 0.0000 0.0000 $ printf "1 2\n" | cct -z 0 -t 0 +proj=pipeline +step +proj=unitconvert +xy_in=deg +xy_out=deg 1.0000000000 2.0000000000 0.0000 0.0000 The cause of the bug is that cct does test if it "has radians to output", but "neglects" to test if it "has degrees to output", resulting in using different arguments to the printf format string in the latter case. The fix makes cct test if it "has either radians or degrees to output".
2020-11-28createObjectsFromName(): in exact match, make looking for 'ETRS89 / UTM zone ↵Even Rouault
32N' return only the exact match
2020-11-27Merge pull request #2455 from rouault/primem_fixesEven Rouault
PRIMEM WKT handling: fixes on import for 'sexagesimal DMS' or from WKT1:GDAL/ESRI when GEOGCS UNIT != Degree; morph to ESRI the PRIMEM name on export
2020-11-27formatting fixesEven Rouault
2020-11-27PRIMEM WKT handling: fixes on import for 'sexagesimal DMS' or from ↵Even Rouault
WKT1:GDAL/ESRI when GEOGCS UNIT != Degree; morph to ESRI the PRIMEM name on export
2020-11-26Fix mingw_w64 warning about pj_acquire_lock() prototype being missingEven Rouault
2020-11-26Merge pull request #2403 from kbevers/remove-proj_api.hKristian Evers
Remove proj_api.h
2020-11-24Add option to allow export of Geographic/Projected 3D CRS in WKT1_GDALEven Rouault
as CompoundCRS with a VerticalCRS being an ellipsoidal height, which is not conformant. But needed for LAS 1.4 that only supports WKT1
2020-11-24Merge pull request #2449 from rouault/geoidmodel_ballparkEven Rouault
createOperation(): add a ballpark vertical transformation when dealing with GEOIDMODEL[]
2020-11-24createOperation(): add a ballpark vertical transformation when dealing with ↵Even Rouault
GEOIDMODEL[]
2020-11-24Merge pull request #2448 from rouault/gha_mingw_w64Even Rouault
CI: move mingw job to GitHub actions
2020-11-24Sync w GeographicLib 1.51. Remove C99 compatibility functions. (#2445)Charles Karney
Should be no changes in the compiled code.
2020-11-24mutex.cpp: replace NULL by nullptrEven Rouault
2020-11-23Add +proj=topocentric geocentric->topocentric conversion (fixes #500)Even Rouault
2020-11-23GeographicCRS::_isEquivalentTo(EQUIVALENT_EXCEPT_AXIS_ORDER_GEOGCRS): make ↵Even Rouault
it work when comparing easting,northing,up and northing,easting,up
2020-11-22projinfo.cpp: improve hint when to use --spatial-test intersectsEven Rouault
2020-11-21PROJJSON parsing: fix parsing of a Geodetic CRS with a DatumEnsemble, and ↵Even Rouault
fix parsing of a ProjectedCRS whose base is a Geocentric CRS
2020-11-21WKT parsing: fix ingestion of WKT with a Geocentric CRS as the base of the ↵Even Rouault
projected CRS
2020-11-21createOperation(): make it work properly when one of the CRS is a BoundCRS ↵Even Rouault
of a DerivedGeographicCRS (+proj=ob_tran +o_proj=lonlat +towgs84=....)
2020-11-21Make GeographicCRS/GeodeticCRS::isEquivalentTo() work properly when ↵Even Rouault
comparing to a DerivedGeographicCRS/DerivedGeodeticCRS
2020-11-20Remove old pj_ memory (de)allocation functionsKristian Evers
Gone are pj_malloc, pj_calloc, pj_dalloc and pj_dealloc. Their primary function as API memory functions in proj_api.h is no longer there and the other use as a workaround for old errno problems is no longer valid either. Replaced with malloc and free across the codebase.
2020-11-20Remove pj_errno and related functionsKristian Evers
2020-11-20Remove pj_free() and move it's functional parts to proj_destroy()Kristian Evers
2020-11-20Removed unused function pj_set_searchpath() and pj_set_finder()Kristian Evers
2020-11-20Remove unused pj_apply_gridshift()Kristian Evers
2020-11-20Removed unused functions from src/utils.cppKristian Evers
2020-11-20Remove pj_ctx_* functions and use their proj_context counterpartsKristian Evers
2020-11-20Remove legacy file APIKristian Evers
2020-11-20Convert multistresstest to new APIKristian Evers
2020-11-20Weed out proj_api.h datatypes and replace them with their proj.h counterpartsKristian Evers
2020-11-20Remove src/transform.cpp and related testsKristian Evers
2020-11-20Raise error when ACCEPT_USE_OF_DEPRECATED_PROJ_API_H is definedKristian Evers
2020-11-20Remove ACCEPT_USE_OF_DEPRECATED_PROJ_API_H macroKristian Evers
2020-11-20Remove proj_api.hKristian Evers
Removes proj_api.h from the public API. The contents of the header file has been moved to proj_internal.h verbatim and any references to proj_api.h has been changed to proj_internal.h. The documentation of proj_api.h has been removed. The only exception to this is the API migration guides which still mention the old API. Fixes #837
2020-11-19Replace line feed in input line by null characterJ.H. van de Water
As result of a modification in logging (adding a line feed), many changes had to be made in different places of cct.cpp. However, one missed the line feed in input to cct. As result of missing this, the output from cct showed a superfluous empty line after each output line, but only if the corresponding input line ended with comment. Replacing the LF in the "comment" string (present if the input line ended with comment) by a null character ('\0') solves this issue. Modification in logging? https://github.com/OSGeo/PROJ/commit/37da5e243191c04607597f6b8a77acfa017a5c99 ( cct: revise end-of-line handling in logging, and always output debug ) See also: https://github.com/OSGeo/PROJ/issues/1677 ( cct outputs excessive whitespace comments are included in input data )
2020-11-17cs2cs, cct, proj and geod: fflush(stdout) after each line to emit each ↵Even Rouault
result as soon as it is produced This is needed when working with pipes, when stdout is not an interactive terminal, and thus the behaviour is to have it buffered as a regular file, whereas with an interactive terminal, each newline character causes an implicit flush.
2020-11-16WKT2 parsing: several fixes related to map projection parameter unitsEven Rouault
- WKT2 grammar: accept PARAMETER[name,value,id] without unit - Recognize "Ellipsoid scaling factor" as a parameter with a scaling unit, and defaults to Unity when not specified - WKT2 parsing: implement the requirement of 18-010r7.html#80, that is when a map projection parameter has no explicit unit, use metre/degree/unity as the default unit (contrary to WKT1 parsing rules where they are deduced from the GeogCRS angular unit and coordinate system)
2020-11-12Polar stereographic at pole: make it return (0,0)Even Rouault
Due to the improved accuracy of pj_tsfn(), it no longer returns 0 when phi=90° due to the conversion in radians. Some GDAL tests are very sensitive to the pole transforming to (0,0) exactly, so add a special case for that. master only
2020-11-10cct: allow @filename syntaxEven Rouault
Similarly as for projinfo, allow "cct @filename" to mean read filename and use its content as if it was provided inline. Useful for WKT or PROJJSON And a tiny improvements, when the object definition contains ':', only try proj_create_from_database() if the left part (authority name) matches a known authority, to avoid a warning.
2020-11-10Allow cct to instantiate operations via object codes or names (#2419)Kristian Evers
Running cct like cct EPSG:8366 or cct "ITRF2014 to ETRF2014 (1)" is now possible.
2020-11-04createBoundCRSToWGS84IfPossible(): make it return same result with a CRS ↵Even Rouault
built from EPSG code or WKT1 Related to https://github.com/OSGeo/gdal/issues/3144
2020-11-02cmake build: set CURL_ENABLED definition on projinfo build (#2404)Olli Raisa
Fixes projinfo operation, when --remote-data command line option is parsed.
2020-11-01Merge pull request #2371 from rouault/epsg10_part2Even Rouault
EPSG v10 update part 2: ingest DatumEnsemble from the database