Bot releases are hidden (Show)
SSL_OPTIONS
: set SSL options on Curl library (#3936)*.tif
if present in data (#3970)createOperationsCompoundToGeog()
: tune selection logic when --grid-check known_available is specified (#3990)+proj=mod_krovak
projection method for Modified Krovak that applies to S-JTSK/05 in the Czech Republic (#4021)+proj=gridshift
: enhance to support grids referenced in projected CRS, and with easting_offset/northing_offset corrections (#4038)Published by kbevers 11 months ago
dry
parameter of EURA and EURA_T (#3870)/std:c++20
on NN_NO_CHECK()
(#3872)CoordinateOperationFactory
: deal with CompoundToCompound with a horizontal similarity transformation and a ballpark vertical (#3881)Ellipsoid::_isEquivalentTo()
: fix so that an ellipsoid of semi-major axis A (and non-zero inv flattening) isn't equivalent to a sphere of radius A (#3882)isEquivalentTo()
: make a datum name 'unknown' equivalent to another one (#3883)cs2cs
: fix handling of input coordinates in grad (#3886)setargv.obj
available on Universal Windows Platform (#3891)createOperations()
: fix GeogCRS 3D with TOWGS84 to geocentric CRS (#3915)ENABLE_TIFF=OFF
(#3916)GeographicBoundingBox::intersects()
: avoid infinite recursion and stack overflow on invalid bounding boxes (#3919)'+proj=topocentric ... +type=crs'
by using a geocentric CRS as the base CRS (#3924)createOperations()
: fix issue with a obscure case involving CompoundCRS of unknown horizontal datum + boundCRS of vertical (#3934)createOperations()
: fix bad PROJ pipeline when converting between with non-metre height to CompoundCRS (#3943)createOperations()
: Fix possible null dereference on invalid WKT input (#3946)proj_factor
: fix when input is a compound CRS of a projected CRS (#3950)pj_get_suggested_operation()
: tune it to give correct result for RGAF09 to RRAF 1991 / UTM zone 20N + Guadeloupe 1988 height transformation (#3954)NameSpace::GLOBAL
definition in static.cpp to avoid 'static initialization fiasco' (#3956)Published by kbevers about 1 year ago
+proj=longlat +datum=WGS84 +type=crs
(#3834)Published by kbevers over 1 year ago
proj_trans()
when doing WGS 84 <--> NAD83 conversions (#3661)vgridshift/gridshift
: accept hydroid_height
as valid band description (#3675)proj_create_crs_to_crs()
: restore transformation selection behaviour of PROJ 9.1 when grids are missing (#3707)cs2cs
/ proj_create_crs_to_crs()
: fix regression with geocentric CRS (#3729)proj_trans()
: set PROJ_ERR_COORD_TRANSFM_NO_OPERATION
error when failing in ONLY_BEST=YES
mode (#3730)tinshift
: raise maximum size of JSON file to 100 MB (#3736)Published by kbevers over 1 year ago
Database
EPSG updated to EPSG 10.082 (#3609)
ESRI objects updated to v3.1.0 (#3575)
Added Slovenian geoid model SLO-VRP2016/Koper (#3610)
Projections
Added generic Space Oblique Mercator (#3338)
Inverse eck4: Add checks for projection domain (#3625)
Transformations
Added support for NADCON5 grids and transformation method (#3510)
Added option ONLY_BEST=YES
(#3535)
When enabled only use the best possible transformation between two CRS's can be
instantiated. If the best possible transfomations can't be instantiated it will
fail instead of opting for the next best transformation.
With ONLY_BEST=YES
a transformation will fail if a needed grid is unavailable.
The option can be toggled in proj.ini and with --only-best
in cs2cs
.
Implement 'Similarity transformation' (EPSG:9621) and import related
tranformations from EPSG (#3578)
Optimise transformations between GDA94, GDA2020 and WGS84 (#3621)
Performance improvements
Pass PJ_COORD
by reference for fwd4d
and inv4d
callbacks (#3503)
Improved of inverse meridian length calculations (#3516)
Avoid very poor performance on a geographic CRS whose datum name is the alias of an official one (#3624)
Well-Known Text improvements
Support WKT:2019 COORDINATEMETADATA[] construct (#2711)
implement alterCSLinearUnit
for CompoundCRS (#3325)
Implement alterCSLinearUnit
for BoundCRS (#3327)
Added PJ_TYPE_DERIVED_PROJECTED_CRS
(#3488)
Added support for ISO19111 CoordinateMetadata class (#3562)
Update WKT import to support WKT2 corrigendum (#3573)
WKT import: Make axis direction and range meaning enumeration case
insensitive as mandated by spec (#3577)
Implement AffineCS and handle it in WKT (#3579)
WKT1 parser: Support inf as inverse flattening value (#3626)
PROJJSON
Version number changed to 0.6
Added an additional optional source_crs
property in abridged_transformation
(#3454)
Added support for ISO19111 CoordinateMetadata class (#3562)
Implement AffineCS and handle it in PROJJSON (#3579)
C/C++ API
proj_get_domain_count
(), proj_get_area_of_use_ex
() and proj_get_scope_ex
() (#3588)DEPRECATIONS
The following functions have been deprecated and will be removed in a future version.
C API function proj_rtodms
. Use proj_rtodms2
instead (#3431)
C experimental API function proj_create_conversion_tunisia_mapping_grid
().
Use proj_create_conversion_tunisia_mining_grid
() instead (#3559)
C++ API function createTunisiaMapingGrid
(). Use createTunisiaMiningGrid
() instead (#3559)
Added explicit NaN
handling to proj_trans
and gie
(#3603)
CMake
Added uninstall
target (#3362)
Adopted use of TIFF:TIFF
and CURL::libcurl
targets (#3374)
Security improvements
sprintf
with the safer snprintf
(#3421, #3431)Various other improvements
Implemented platform independent mutex for better results on lesser used platforms (#3425)
Improved name and remarks in descriptions of some vertical transformations (#3334)
Implemented stricter matching by name to avoid false positives (#3487)
Improved numerical accuracy of the meridian length calculations and its inverse (#3516)
Added PROJ_IGNORE_CELESTIAL_BODY=YES
environment variable that allows better matching of
non-earth shaped ellipsoids to other celestial bodies (#3569)
rtodms():
fix potential buffer overflow not dealt with (#3441)
NetworkFile::open()
: fix memory leak in unlikely error code path (#3443)
When importing LOCAL_CS["foo"], generates a non-empty name for the datum (#3491)
Avoid unit mix-up in CRS::alterCSLinearUnit
for DerivedProjectedCRS
(#3499)
WKT to PROJ conversions: Map 'Lambert Azimuthal Equal Area (Spherical)' to +proj=laea +R_A
(#3526)
ProjectedCRS::identify()
: Relax trust in id/authority in definition to identify (#3532)
Fix instantion of http://www.opengis.net/def/crs/IAU/2015/xxx URNs (#3569)
Fix proj_normalize_for_visualization()
on a transformation with FORCE_OVER=YES
(#3570)
createBoundCRSToWGS84IfPossible()
: Do not report +towgs84
for a CRS with multiple extents,
such as EPSG:6316 (#3587)
pj_get_suggested_operation()
: handle longitudes outside of [-180,180] for coordinate
operation selection (#3595)
WKT1 parser: only emit warning when encountering invalid UNKNOWN WKT1 axis direction (#3618)
projinfo
: fix long option name --source-crs
(#3601)
Published by kbevers almost 2 years ago
Implement alterGeodeticCRS and stripVerticalComponent for DerivedProjected (#3482)
Various improvements to handling of DerivedProjectedCRS (#3482, #3477, #3342, #3319, #3317)
Add missing includes (#3459)
cs2cs: better validate value of -W option (#3453)
DatabaseContext::lookForGridInfo(): fix caching of filenames and set correct URLs (#3448)
Database: register in grid_alternatives grids from PROJ-data that have no corresponding transformation record (#3446)
cass projection: fix forward computation of easting (#3433)
Implement Geographic/Vertical Offset conversions (#3413)
vandg projection: handle +over to extend the validity domain outside of |lon|>180deg
(#3427)
eqdc projection: avoid floating point division by zero in non-nominal case (#3415)
createOperations(): fix issues when transforming between Geog3D and DerivedGeog3D CRS with Geographic3D offsets method (#3411)
VerticalCRS::_isEquivalentTo(): do not consider VerticalCRS and DerivedVerticalCRS as equivalent (#3408)
cct and cs2cs: Avoid problems when encountering UTF-8 BOM characters at beginning of input files (#3395)
createFromUserInput(): Improved lookup when approximate name is provided (#3371)
projinfo / cs2cs : auto promotion to 3D of CRS specified by name (#3367)
findsOpsInRegistryWithIntermediate(): make it work when source/target geodetic CRS has no known id (#3365)
createOperations(): emulate PROJ < 6 behavior when doing geocentric <--> geographic transformation between datum with unknown transformation (#3361)
Fix issue when transforming from/into a WKT2 Bound VerticalCRS with a 'Geographic3D to GravityRelatedHeight' method (#3355)
proj_normalize_for_visualization(): take into account FORCE_OVER property from source operation (#3350)
Link geodtest against libm when available (#3341)
Published by kbevers about 2 years ago
Database
Database: update to EPSG v10.074 (#3273)
Update ESRI objects to version 3.0.0 (#3257)
Generate null transformation between geodetic/vertical datum ensemble and its members (#3266)
Add fk delete cascade
to database tables for improved customizability of the database (#3237)
Add Svalbard geoid grid no_kv_arcgp-2006-sk
to grid alternatives (#3292)
Added French grid fr_ign_RAF20
to grid alternatives (#3228)
WKT & PROJJSON
WKT2 parser: allow unit-less PARAMETER for coordinate operations (#3271)
WKT and PROJJSON adjustments (#3234)
Bump PROJJSON to v0.5 (#3216)
Change order of horizontal and vertical operations when dealing with WKT1 / PROJ4 compound CRS (#3127)
Coordinate Operations
Implement Vertical Offset and slope transformation method (#3200)
Add Interrupted Mollweide (land and ocean view) projections (#3139)
Add invertible Horner polynomials (#3133)
Optimizations
NTv2 and GTX grid readers: add a cache of lines to speed-up (#3241)
IComparable::isEquivalentTo()
optimizations (#3233)
Various Updates
createOperations()
/ proj_trans()
: better take into account area of interest name / do not only keep first returned coordinate operation (#3282)
createOperations()
: take into account axis unit and inversion of target DerivedProjectedCRS (#3281)
Allow a Compound CRS with derived projected (#3283)
Make "Vertical Offset and Slope" method usable as a deriving conversion of a DerivedVerticalCRS (#3270)
PROJ pipeline generator: recognize opposite Helmert transformations using a different convention (#3265)
createOperations()
: prefer simpler pipelines / affects WGS 84 to GDA94/GDA2020 (#3248)
Make it possible to determine which grid files were actually used during a transformation (#3180)
Transformation: no longer do vertical trasnformation when doing compound CRS to 2D CRS / add --3d to cs2cs (#3119)
Deprecate PROJ4 CMake name (#3094)
Use GNUInstallDirs
for CMake install locations (#3100)
Introduce PROJ_DATA
environment variable to deprecate PROJ_LIB
(#3253)
projinfo
: fix crash on --list-crs
when proj.db cannot be opened (#3290)
getCRSInfoList()
: fix retrieval of projected_crs given by text_definition
only (#3289)
WKT parser: fix issue when parsing some WKT1 with Hotine_Oblique_Mercator_Azimuth_Center and ignoring rectified_grid_angle (#3280)
WKT1 import: better deal when the angular unit of the GEOGCS[] of the
PROJCS[] doesn't match the one from the database (#3274)
createOperations()
: avoid potential infinite recursions (#3264)
WKT ESRI: fix related to projected CRS export and add support for geographic
3D CRS with LINUNIT node (#3256)
proj_grid_info()
: make it work again with remote grids (#3239)
createOperations()
: fix projected CRS with non-metre horiz&vertical unit and towgs84 to gencentric CRS (#3231)
createOperations()
: fix infinite recursion in a complex case (#3226)
Published by kbevers over 2 years ago
Update to EPSG 10.064 (#3208)
Add OGC:CRS84h (WGS 84 longitude-latitude-height) (#3155)
Use CMAKE_INSTALL_MANDIR to override default (#3081)
Increase MAX_ITER so Mollweide forward projection works near the poles (#3082)
Fix wrong results with SQLite 3.38.0 (#3091)
Fix issue when transforming from/to BoundCRS of 3D CRS with non-Greenwich prime meridian, created from WKT (#3098)
Fix issues with WKT of concatenated operations (#3105)
CMake: fix installation of proj.pc on Windows (#3109)
createOperations(): fix issue in transformation northing, easting projected CRS -> +proj=longlat +lon_wrap (#3110)
unitconvert: round to nearest date when converting to yyyymmdd (#3111)
Fix comparison of GeodeticRefrenceFrame vs DynamicGeodeticReferenceFrame (#3120)
createOperations(): fix transformation involving CompoundCRS, ToWGS84 and PROJ4_GRIDS (#3124)
Fix datum names when importing from PROJ4 crs strings (affects some transformations using geoidgrids) (#3129)
Deal with PARAMETER["EPSG code for Interpolation CRS",crs_code] (#3149)
createOperations(): fix CompoundCRS[BoundCRS[ProjectedCRS],BoundCRS[VerticalCRS]] to Geog3DCrs (#3151)
ITRF2014: fix ITRF2014:ITRF88,ITRF94 and ITRF96 definitions (#3159)
createBoundCRSToWGS84IfPossible(): improve selection logic to generate +towgs84= taking into account extent (#3160)
createOperations(): fix some complex cases involving TOWGS84 and CompoundCRS (#3163)
Fix cmake CURL dependency, update appveyor - vcpkg interaction (#3185)
WKT import: deal with Projected CRS that is a mix of WKT1:GDAL / WKT1:ESRI (#3189)
createOperations(): fix/improve result of 'BD72 + Ostend height ' to 'WGS84+EGM96 height' (#3199)
Identifier::isEquivalentName(): fix when ending by ' + ' which could indirectly cause an infinite stack call in master (#3202)
WKT import: correctly deal with absence of Latitude_Of_Origin parameter in WKT1 ESRI with Stereographic projection (#3212)
PROJJSON parser: do not error out if a datum ensemble member is unknown in the database (#3223)
Published by kbevers over 2 years ago
proj_create_crs_to_crs_from_pj
method to force +over
onCMAKE_INSTALL_RPATH
for macOS; use -rpath LDFLAGS
for tests (#3009)PROJ_LIB
paths wrapped with double quotes (#3031)BUILD_SHARED_LIBS=ON
the default even on Windows (#3042)proj.ini
: add a ca_bundle_path
variable (#3049)proj_get_crs_info_list_from_database()
: report PJ_TYPE_GEODETIC_CRS for IAU_2015 -ocentric geodetic CRS (#3013)+type
parameter wrongly introduced in 8.2.1 to +shape
(#3014)proj_create()
(#3037)createOperations()
: fix transformations from/to a BoundCRS of a DerivedGeographicCRS coming from WKT (#3046)+init=epsg:XXXX +over
(#3055)+proj=peirce_q
and +shape
different from square or diamond (#3057)Published by kbevers almost 3 years ago
BoundCRS WKT import: fix setting of name (#2917)
PROJStringFormatter::toString(): avoid invalid iterator increment (#2932)
Ensure CApi test are cross-platform (#2934)
createOperations(): do not stop at the first operation in the PROJ namespace or vertical transformations (#2937)
createOperationsCompoundToCompound(): fix null pointer dereference when connection to proj.db doesn't exist. (#2938)
Fix windows.h conflict with Criterion::STRICT (#2950)
Cache result of proj_get_type() to help for performance of proj_factors() (#2967)
createOperations(): improvement for "NAD83(CSRS) + CGVD28 height" to "NAD83(CSRS) + CGVD2013(CGG2013) height" (#2977)
WKT1 import: correctly deal with missing rectified_grid_angle parameter (#2986)
Fix and additional options for Peirce Quincuncial projections (#2978)
Fix build with Intel C++ compiler (#2995)
Published by kbevers almost 3 years ago
From PROJ 9.0.0 and onwards CMake will be the only build system bundled
with the PROJ package. As a consequence support for Autotools builds will
stop when the 8.2 branch of PROJ reaches end of life. We encourage
everyone to adjust their build workflows as soon as possible and report
any discrepancies discovered between Autotools and CMake builds.
Details about the build system unification can be found in PROJ RFC 7.
Added the S2 projection (#2749)
Added support for Degree Sign on input (#2791)
ESRI WKT: add support for import/export of (non interrupted) Goode Homolosine (#2827)
Make filemanager aware of UWP Win32 API (#2831)
Add proj_create_conversion_pole_rotation_netcdf_cf_convention() to address netCDF datasets using a pole rotation method (#2835)
Emit better debug message when a grid isn't found (#2838)
Add support for GeodeticCRS using a Spherical planetocentric coordinate system (#2847)
PROJJSON: support additional properties allowed in id object (version, authority_citation, uri) for parity with WKT2:2019 (#2850)
Database layout modified to include "anchor" field to geodetic_datum and vertical_datum tables, consequently database layout version is increased to 1.2 (#2859)
proj_factors(): accept P to be a projected CRS (#2868)
Add IAU_2015 CRS definitions (#2876)
CRS::extractGeodeticCRS(): implement for DerivedProjectedCRS (#2877)
Added proj_trans_bounds() (#2882)
CMake: add a BUILD_APPS to be able to disable build of all applications (#2895)
CMake: generate invproj/invgeod binaries (symlinks on Unix, copy otherwise) (#2897)
CMake build: add generate_wkt1_parser and generate_wkt2_parser manual target, and logic to detect when they must be run (#2900)
Add fallback strategy for tinshift transform to use closest triangle for points not in any (#2907)
Database: update to EPSG v10.038 (#2910)
CMake: revise handling of symbol export and static builds (#2912)
Fix O(n^2) performance patterns where n is the number of steps of a pipeline (#2820)
Detect ESRI WKT better in certain circumstances (#2823)
Fix performance issue on pipeline instanciation of huge (broken) pipelines (#2824)
Make sure to re-order projection parameters according to their canonical order if needed (#2842)
Fix database access across fork() when SQLite3 doesn't use pread64 (#2845)
Fix error in implementation of Inverse ellipsoidal orthographic projection that cause convergence to sometimes fail (#2853)
Fix handling of edge-case coordinates in invers ortho ellipsoidal oblique (#2855)
proj_normalize_for_visualization(): set input and output units when there are several alternative transformations (#2867)
CRS::identify(): fix ignoring CS order when identifying a geodetic CRS by a PROJ string with just the ellipsoid (#2881)
Fix CRS Equality with PROJ parameter order (#2887)
WKT concatenated operation parsing: fix when a axis order reversal conversion is the first or last operation (#2891)
WKT1 parser: recognize Lambert_Conformal_Conic as projection name for LCC 1SP or 2SP (#2893)
CMake: Always build gie if testing is requested (#2899)
Geographic 3D CRS: allow to export to WKT1:ESRI if only the GEOGCS is known (and thus extrapolating a VERTCS) (#2902)
lib_proj.cmake: add a PROJ::proj alias and add BUILD_INTERFACE include directories, so that proj can be used as a subdirectory of a larger project (#2913)
Published by kbevers about 3 years ago
Include algorithm header file to avoid build errors on Alpine Linux (#2769)
CMake: fix installation of executables on iOS (#2766)
Associate extents to transformations of CRS's that include GEOIDMODEL (#2769)
Logging: avoid some overhead when logging is not enabled (#2775)
ortho: remove useless and invalid log trace (#2777)
CMake: remove external nlohmann_json from INTERFACE_LINK_LIBRARIES
target (#2781)
createOperations()
: fix SourceTargetCRSExtentUse::NONE
mode (#2783)
GeoTIFF grid reading: perf improvements (#2788)
Conversion::createUTM()
: avoid integer overflow (#2796)
Inverse laea ellipsoidal: return PROJ_ERR_COORD_TRANSFM_OUTSIDE_PROJECTION_DOMAIN
when appropriates (#2801)
Make sure that proj_crs_promote_to_3D returns a derived CRS (#2806)
createOperations()
: fix missing deg<-->rad conversion when transforming with a CRS that has a fallback-to-PROJ4-string behaviour and is a BoundCRS of a GeographicCRS (#2808)
WKT2 import/export: preserve PROJ.4 CRS extension string in REMARKS[] (#2812)
BoundCRS: accept importing/exporting in WKT2 and PROJJSON the scope/area/extent/id attributes (#2815)
ConcatenatedOperation::fixStepsDirection(): fix bad chaining of steps when inverse map projection is involved in non-final step (#2819)
Published by kbevers over 3 years ago
Database
Update to EPSG v10.027 (#2751)
Decrease DB size by using WITHOUT ROWID tables (#2730) (#2647)
Add a ANALYZE step during proj.db creation allowing for faster lookups (#2729)
Added a PROJ.VERSION metadata entry (#2646)
Added NGO48 (EPSG:4273) to ETRS89 (EPSG:4258) triangulation-based transformation (#2554)
Additions to the norwegian NKG2020 transformation (#2548)
ESRI projection database updated to version 12.8 (#2717)
API additions
Added proj_get_geoid_models_from_database() function that returns a list of geoid models available for a given CRS (#2681)
Added proj_get_celestial_body_list_from_database that returns a list of celestial bodies in the PROJ database (#2667)
Added proj_get_celestial_body_name() (#2662)
Various improvements
proj_trans/cs2cs: If two operations have the same accuracy, use the one that is contained within a larger one (#2750)
Share SQLite database handle among all contexts (#2738)
Add proj/internal/mutex.hpp as compat layer for mingw32 for std::mutex (#2736)
projsync: make it filter out files not intended for the current version (#2725)
Improvements related to DerivedVerticalCRS using Change Unit and Height/Depth reversal methods (#2696)
Update internal nlohmann/json to 3.9.1, and add a CMake option to be able to use external nlohmann/json (#2686)
createFromUserInput(): change name of CRS built from URN combined references to match the convention of EPSG projected CRS (#2677)
Parse compound id with two authorities, like ESRI:103668+EPSG:5703 (#2669)
Added projinfo option --list-crs (supports --area) (#2663)
Added support for hyperbolic Cassini-Soldner (#2637)
Added capability to get SQL statements to add custom CRS in the database (#2577)
Fix 'Please include winsock2.h before windows.h' warning with msys (#2692)
Minor changes to address lint in geodesic.c (#2752)
BoundCRS::identify(): avoid incompatible transformation for WKT1 / TOWGS84 export (#2747)
proj_create(): do not open proj.db if string is a PROJ string, even if proj_context_set_autoclose_database() has been set (#2735)
Fix export of transformation to PROJ string in a particular situation where CompoundCRS are involved (#2721)
Published by kbevers over 3 years ago
Published by kbevers over 3 years ago
With the release of PROJ 8 the proj_api.h
API is finally removed. See
https://proj.org/development/migration.html for more info on how to migrate
from the old to the proj.h
API.
With the removal of proj_api.h
it has been possible to simplify error codes
and messages given by the software. The error codes are exposed in the API.
Several improvements has been made to the command line utilities as well as
tweaks in the underlying API.
Public header file proj_api.h
removed (#837)
Improved accuracy of the Mercator projection (#2397)
Copyright statement wording updated (#2417)
Allow cct to instantiate operations via object codes or names (#2419)
Allow @filename
syntax in cct
(#2420)
Added geocentric->topocentric conversion (+proj=topocentric
) (#2444)
Update GeographicLib to version 1.51 (#2445)
Added option to allow export of Geographic/Projected 3D CRS
in WKT1_GDAL (#2450)
Added --area
and --bbox
options in cs2cs
to restrict candidate
coordinate operations (#2466)
Added build time option to make PROJ_LIB
env var tested last (#2476)
Added --authority
switch in cs2cs to control where coordinate operations
are looked for. C API function proj_create_crs_to_crs_from_pj()
updated
accordingly (#2477)
Error codes revised and exposed in the public API (#2487)
Added --accuracy
options to projinfo
. C API function
proj_create_crs_to_crs_from_pj()
updated accordingly (#2488)
Added proj_crs_is_derived()
function to C API (#2496)
Enabled linking against static cURL on Windows (#2514)
Updated ESRI CRS database to 12.7 (10.8.1/2.6) (#2519)
Allow a WKT BoundCRS to use a PROJ string transformation (#2521)
Update to EPSG v10.015 (#2539)
Default log level set to PJ_LOG_ERROR
(#2542)
CMake installs a pkg-config file proj.pc
, where supported (#2547)
Do not restrict longitude to [-90;90] range in spherical transver Mercator
forward projection (#2471)
createOperations()
: fix Compound to Geog3D/Projected3D CRS with non-metre ellipsoidal height (#2500)
Avoid error messages to be emitted log level is set to PJ_LOG_NONE
(#2527)
Close database connection when autoclose set to True (#2532)
Published by kbevers almost 4 years ago
Add metadata with the version number of the database layout (#2474)
Split coordinateoperation.cpp and test_operation.cpp in several parts (#2484)
Update to EPSG v10.008 (#2490)
Added the NKG 2008 and 2020 transformations in proj.db (#2495)
Set CURL_ENABLED definition on projinfo build (#2405)
createBoundCRSToWGS84IfPossible(): make it return same result with a CRS
built from EPSG code or WKT1 (#2412)
WKT2 parsing: several fixes related to map projection parameter units (#2428)
createOperation(): make it work properly when one of the CRS is a BoundCRS of
a DerivedGeographicCRS (+proj=ob_tran +o_proj=lonlat +towgs84=....) (#2441)
WKT parsing: fix ingestion of WKT with a Geocentric CRS as the base of the
projected CRS (#2443)
GeographicCRS::_isEquivalentTo(EQUIVALENT_EXCEPT_AXIS_ORDER_GEOGCRS):
make it work when comparing easting,northing,up and northing,easting,up (#2446)
createOperation(): add a ballpark vertical transformation when dealing
with GEOIDMODEL[] (#2449)
Use same arguments to printf format string for both radians and degrees in
output by cct (#2453)
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 (#2455)
createObjectsFromName(): in exact match, make looking for 'ETRS89 / UTM zone 32N'
return only the exact match (#2462)
Inverse tmerc spherical: fix wrong sign of latitude when lat_0 is used (#2469)
Add option to allow export of Geographic/Projected 3D CRS in WKT1_GDAL (#2470)
Fix building proj.db with SQLite built with -DSQLITE_DQS=0 (#2480)
Include JSON Schema files in CMake builds (#2485)
createOperations(): fix inconsistent chaining exception when transforming from BoundCRS of projected CRS based on NTF Paris to BoundCRS of geog CRS NTF Paris (#2486)
Published by kbevers almost 4 years ago
+proj=col_urban projection, implementing a EPSG projection method
used by a number of projected CRS in Colombia (#2395)
+proj=tinshift for triangulation-based transformations (#2344)
Added ellipsoidal formulation of +proj=ortho (#2361)
Update to EPSG 10.003 and make code base robust to dealing with
WKT CRS with DatumEnsemble (#2370)
Added Finland tinshift operations (#2392)
Added transformation from JGD2011 Geographic 3D to JGD2011
height using GSIGEO2011 (#2393)
Improve CompoundCRS identification and name morphing in VerticalCRS
with ESRI WKT1 (#2386)
Added OGC:CRS27 and OGC:CRS83 CRS entries for NAD27 and NAD83
in longitude, latitude order (#2350)
Added temporal, engineering, and parametric datum
PJ_TYPE enumerations (#2274)
Various improvements to context handling (#2329, #2331)
proj_create_vertical_crs_ex(): add a ACCURACY option to provide
an explicit accuracy, or derive it from the grid name if it is
known (#2342)
proj_crs_create_bound_crs_to_WGS84(): make it work on
verticalCRS/compoundCRS such as EPSG:4326+5773 and
EPSG:4326+3855 (#2365)
promoteTo3D(): add a remark with the original CRS identifier (#2369)
Added proj_context_clone (#2383)
Avoid core dumps when copying contexts in certain scenarios (#2324)
proj_trans(): reset errno before attemptying a retry with a new
coordinate operation (#2353)
PROJJSON schema corrected to allow prime meridians values with
explicitly stating a unit (degrees assumed) (#2354)
Adjust createBoundCRSToWGS84IfPossible() and operation filtering
(for POSGAR 2007 to WGS84 issues) (#2357)
createOperations(): several fixes affecting NAD83 -> NAD83(2011) (#2364)
WKT2:2019 import/export: handle DATUM (at top level object) with PRIMEM
WKT1_ESRI: fix import and export of CompoundCRS (#2389)
Published by kbevers about 4 years ago
Added various Brazillian grids to the database #2277
Added geoid file for Canary Islands to the database #2312
Updated EPSG database to version 9.8.15 #2310
WKT parser: do not raise warning when parsing a WKT2:2015 TIMECRS
whose TIMEUNIT is at the CS level, and not inside #2281
Parse '+proj=something_not_latlong +vunits=' without +geoidgrids as a
Projected3D CRS and not a compound CRS with a unknown datum #2289
C API: Avoid crashing due to missing SANITIZE_CTX() in entry points #2293
CMake build: Check "target_clones" before use #2297
PROJ string export of +proj=krovak +czech: make sure we export +czech… #2301
Helmert 2D: do not require a useless +convention= parameter #2305
Fix a few spelling errors ("vgridshit" vs. "vgridshift") #2307
Fix ability to identify EPSG:2154 as a candidate for 'RGF93_Lambert_93' #2316
WKT importer: tune for Oracle WKT and 'Lambert Conformal Conic' #2322
Revert compiler generated Fused Multiply Addition optimized routines #2328
Published by rouault over 4 years ago
New projections:
o Add square conformal projections from libproject:
o Adams Square II: map ESRI WKT to PROJ string, and implement iterative
inverse method (#2157)
o Added IGH Oceanic View projection (#2226)
o Add wink2 inverse by generic inversion of forward method (#2243)
Database:
o Update to EPSG 9.8.12, ESRI 10.8.1 and import scope and remarks for
conversion (#2238) (#2267)
o Map the Behrman projection to cae when converting ESRI CRSes (#1986)
o Support conversion of Flat_Polar_Quartic projection method (#1987)
o Register 4 new Austrian height grids (see https://github.com/OSGeo/PROJ-data/pull/13)
and handle 'Vertical Offset by Grid Interpolation (BEV AT)' method (#1989)
o Add ESRI projection method mappings for Mercator_Variant_A, Mercator_Variant_B
and Transverse_Cylindrical_Equal_Area and various grid mappings (#2020) (#2195)
o Map ESRI Transverse_Mercator_Complex to Transverse Mercator (#2040)
o Register grids for New Caledonia (see https://github.com/OSGeo/PROJ-data/pull/16) (#2051) (#2239)
o Register NZGD2000 -> ITRF96 transformation for NZGD2000 database (#2248)
o Register geoid file for UK added
(see https://github.com/OSGeo//PROJ-data/pull/25() (#2250)
o Register Slovakian geoid transformations with needed code changes (#2259)
o Register Spanish SPED2ETV2 grid for ED50->ETRS89 (#2261)
API:
o Add API function proj_get_units_from_database() (#2065)
o Add API function proj_get_suggested_operation() (#2068)
o Add API functions proj_degree_input() and proj_degree_output() (#2144)
o Moved proj_context_get_url_endpoint & proj_context_get_user_writable_directory
from proj_experimental.h to proj.h (#2162)
o createFromUserInput(): allow compound CRS with the 2 parts given by names,
e.g. 'WGS 84 + EGM96 height' (#2126)
o createOperations(): when converting CompoundCRS<-->Geographic3DCrs, do not
use discard change of ellipsoidal height if a Helmert transformation is
involved (#2227)
o proj_list_units() deprecated, superceeded by proj_get_units_from_database()
o proj_list_angular_units() deprecated, superceeded by proj_get_units_from_database()
Optimizations:
o tmerc/utm: add a +algo=auto/evenden_snyder/poder_engsager parameter (#2030)
o Extended tmerc (Poder/Engsager): speed optimizations (#2036)
o Approximate tmerc (Snyder): speed optimizations (#2039)
o pj_phi2(): speed-up computation (and thus inverse ellipsoidal Mercator and LCC) (#2052)
o Inverse cart: speed-up computation by 33% (#2145)
o Extended tmerc: speed-up forward path by ~5% (#2147)
Various:
o Follow PDAL's CMake RPATH strategy (#2009)
o WKT import/export: add support for WKT1_ESRI VERTCS synta (#2024)
o projinfo: add a --hide-ballpark option (#2127)
o gie: implement a strict mode with (#2168)
o Allow importing WKT1 COMPD_CS with a VERT_DATUM[Ellipsoid,2002] (#2229)
o Add runtime checking that sqlite3 is >= 3.11 (#2235)
o createOperations(): do not remove ballpark transformation if there are only grid
based operations, even if they cover the whole area of use (#2155)
o createFromProjString(): handle default parameters of '+krovak +type=crs', and
handle +czech correctly (#2200)
o ProjectedCRS::identify(): fix identification of EPSG:3059 (#2215)
o Database: add a 'WGS84' alias for the EPSG:4326 CRS (#2218)
o Fixes related to CompoundCRS and BoundCRS (#2222)
o Avoid 2 warnings about missing database indices (#2223)
o Make projinfo --3d --boundcrs-to-wgs84 work better (#2224)
o Many fixes regarding BoundCRS, CompoundCRS, Geographic3D CRS with
non-metre units (#2234)
o Fix identification of (one of the) ESRI WKT formulations of EPSG:3035 (#2240)
o Avoid using deprecated and removed Windows API function with Mingw32 (#2246)
o normalizeForVisualization(): make it switch axis for EPSG:5482
(RSRGD2000 / RSPS2000) (#2256)
o Fix access violation in proj_context_get_database_metadata (#2260)
o Fail gracefully when calling API functions with invalid input (#2272)
Published by kbevers over 4 years ago
Make tests independent of proj-datumgrid (#1995)
Add missing projection property tables (#1996)
Avoid crash when running against SQLite3 binary built with
-DSQLITE_OMIT_AUTOINIT (#1999)
createOperations(): fix wrong pipeline generation with CRS that has +nadgrids=
and +pm= (#2002)
Fix bad copy&replace pattern on HEALPix and rHEALPix projection names (#2007)
createUnitOfMeasure(): use full double resolution for the conversion
factor (#2014)
Update README with info on PROJ-data (#2015)
utm/ups: make sure to set errno to PJD_ERR_ELLIPSOID_USE_REQUIRED if
es==0 (#2045)
data/Makefile.am: remove bashism (#2048)
ProjectedCRS::identify(): tune it to better work with ESRI WKT
representation of EPSG:2193 (#2059)
Fix build with gcc 4.8.5 (#2066)
Autotools/pkg-conf: Define datarootdir (#2069)
cs2cs: don't require +to for '{source_crs} {target_crs} filename...'
syntax (#2081)
CMake: fix bug with find_package(PROJ) with macOS (#2082)
ESRI WKT import / identification: special case for
NAD_1983_HARN_StatePlane_Colorado_North_FIPS_0501 with Foot_US unit (#2088)
ESRI WKT import / identification: special case for
NAD_1983_HARN_StatePlane_Colorado_North_FIPS_0501 with Foot_US unit (#2089)
EngineeringCRS: when exporting to WKT1_GDAL, output unit and axis (#2092)
Use jtsk03-jtsk horizontal grid from CDN (#2098)
CMake: prefer to use use PROJ_SOURCE_DIR and PROJ_BINARY_DIR (#2100)
Fix wrong grids file name in esri.sql (#2104)
Fix identification of projected CRS whose name is close but not strictly
equal to a ESRI alias (#2106)
Fix working of Helmert transform between the horizontal part of
2 compoundCRS (#2111)
Database: fix registration of custom entries of grid_transformation_custom.sql
for geoid grids (#2114)
ESRI_WKT ingestion: make sure to identify to non-deprecated EPSG entry when
possible (#2119)
Make sure that importing a Projected 3D CRS from WKT:2019 keeps the base
geographic CRS as 3D (#2125)
createOperations(): improve results of compoundCRS to compoundCRS case (#2131)
hgridshift/vgridshift: defer grid opening when grid has already
been opened (#2132)
Resolve a few shadowed declaration warnings (#2142)
ProjectedCRS identification: deal with switched 1st/2nd std parallels for
LCC_2SP(#2153)
Fix Robinson inverse projection (#2154)
createOperations(): do not remove ballpark transformation if there are only
grid based operations, even if they cover the whole area of use (#2156)
createFromCoordinateReferenceSystemCodes(): 'optimization' to avoid using
C++ exceptions (#2161)
Ingestion of WKT1_GDAL: correctly map 'Cylindrical_Equal_Area' (#2167)
Add limited support for non-conformant WKT1 LAS COMPD_CS[] (#2172)
PROJ4 string import: take into correctly non-metre unit when the string
looks like the one for WGS 84 / Pseudo Mercator (#2177)
io.hpp: avoid dependency to proj_json_streaming_writer.hpp (#2184)
Fix support of WKT1_GDAL with netCDF rotated pole formulation (#2186)