aboutsummaryrefslogtreecommitdiff
path: root/test/unit/test_io.cpp
AgeCommit message (Collapse)Author
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-15Fix size_t comparisons in testsKai Pastor
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-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-03WKT1 export: avoid division by zero. Fixes ↵Even Rouault
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12854. Credit to OSS Fuzz
2019-02-02PROJStringSyntaxParser: avoid assertion on illegal input. Fixes ↵Even Rouault
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12837. Credit to OSS Fuzz
2019-01-31exportToWKT(): restrict a8e7ef45d132b44dd4096c6fe3703fe92b390d1e to TOWGS84 ↵Even Rouault
only to avoid breaking other use cases
2019-01-29Update test with correct parameterKaroline Skaar
Update ds to be in correspondence with ITRF2000 file
2019-01-22Merge pull request #1233 from rouault/fix_1232Kristian Evers
Coordinate operation computation with boundcrs / wktext: drop useless early bindins terms in generated pipeline (fixes #1232)
2019-01-22ISO19111 PROJ string parser: discard parameters not recognized by PROJEven Rouault
2019-01-22exportToWKT: use upper-case exponent (E) to conform to WKT-2 EBNFEven Rouault
2019-01-22Coordinate operation computation with boundcrs / wktext: drop useless early ↵Even Rouault
bindins terms in generated pipeline (fixes #1232)
2019-01-17Remove proj_create_from_proj_string() and proj_create_from_user_input(), and ↵Even Rouault
make proj_create() do more or less what proj_create_from_user_input() did before (fixes #1214)
2019-01-17import/export PROJ strings from ISO19111 code: require/output +type=crs for ↵Even Rouault
CRS objects (refs #1214)
2019-01-16PROJBasedOperation: write it as a conformant CONVERSION WKT, and make it ↵Even Rouault
parsed appropriately on the reading side
2019-01-09createOperations(): fix a particular case of boundcrs to boundcrs ↵Even Rouault
transformation (fixes #1220)
2019-01-08ISO19111: remove PROJ.5 specific format for CRS (refs #1214)Even Rouault
As discussed in https://github.com/OSGeo/proj.4/issues/1214#issuecomment-452084720, the introduction of a new PROJ.5 format to export CRS using pipeline/unitconvert/axisswap as an attempt of improving the PROJ.4 format used by GDAL and other products is likely a dead-end since it is still lossy in many aspects and can cause confusion with coodinate operations. Consequently the PROJ_5 convention will be identical to PROJ_4 for CRS export. Note: on the import side, I've kept the code that could parse unitconvert and axisswap when building a CRS definition from a pipeline. It is there as a hidden feature as it was kind of a tear to remove that code in case it might still be useful...
2019-01-07Update wkt2_grammar.py according to the latest draft of WKT2:2018Even Rouault
2019-01-02WKT CONCATENATEDOPERATION parsing: allow CONVERSION steps and reverse ↵Even Rouault
operations when neededs (fixes #1197)
2019-01-02Typo fixesEven Rouault
2018-12-28ISO19111: fix export to PROJ string of vgridshift to explictly use multiplier=1Even Rouault
2018-12-28Merge remote-tracking branch 'rouault/gdalbarn'Even Rouault
2018-12-28importFromWKT: better deal with axis of the baseCRS of a projected CRSEven Rouault
2018-12-28WKT parser: fix parsing of BoundCRS of VerticalCRS to Geographic3D CRSEven Rouault
2018-12-27Remove proj_def.dat (fixes #201)Even Rouault
2018-12-22Support Projected 3D with method name suffixed with ' (3D)', and be more lax ↵Even Rouault
on projection parameter names
2018-12-17WKT2 grammar: fix for VERTCRS and GEOIDMODELEven Rouault
2018-12-17Add WKT2 grammar validationEven Rouault
2018-12-17Add WKT1 grammar validation; change prototype of proj_obj_create_from_wkt()Even Rouault
2018-12-13Tune behaviour for LAEA vs LAEA Spherical or EQC vs EQC SphericalEven Rouault
2018-12-13import from WKT1 and PROJ string: tune CS for Polar LAEAEven Rouault
2018-12-13import from WKT1: fix axis direction when importing from Polar Stereographic ↵Even Rouault
variant B
2018-12-04Improve management of 'deprecated' suffix in object namesEven Rouault
2018-12-04Improve recognition of WKT1 datum namesEven Rouault
2018-12-03WKTParser: fix to avoid creation of empty nodesEven Rouault
2018-12-01importFromWKT: morph GDAL_WKT1 datum names into their EPSG spellingEven Rouault
2018-11-29importFromWKT v1: properly handle latitude_of_origin=0 for Mercator_1SPEven Rouault
2018-11-29exportToWKT WKT1_GDAL: export axis by default for GeocentricCRSEven Rouault
2018-11-29importFromWKT: check we have a valid unit where we need oneEven Rouault
2018-11-29Redirect epsg:XXXX and IGNF:XXXX CRS expansions to the database, and remove ↵Even Rouault
the data/epsg and data/IGNF files
2018-11-29cs2cs: upgrade to use proj_create_crs_to_crs()Even Rouault
2018-11-22Make proj_create_crs_to_crs() use proj_obj_create_operations() and use area ↵Even Rouault
of use argument, and make createFromUserInput() recognize init=epsg: / init=IGNF: in legacy mode, that is when proj_context_get_use_proj4_init_rules() is used
2018-11-22Fix transformation between geographic CRS that differ by axis order and unitsEven Rouault
2018-11-21createFromUserInput("authname:code"): make it case insensitive regarding ↵Even Rouault
authname
2018-11-19Assorted set of fixes for PROJString to ISO19111 model:Even Rouault
- createFromPROJString(): take into account axisswap step for Krovak and Transverse Mercator (South Orientated) - Geocentric export to PROJ4: use datum when possible, and add explicit units=m - ESRI WKT parser: make it case insensitive to parameter and projection names, and more tolerant about possible parameter name aliases - import from WKT1 for Polar_Stereographic: don't be case sensitive - importFromPROJString: allow pm to override datum - Equidistant cylindrical: add support for non-standard latitude of natural origin, used in a GDAL test case - tmerc export to PROJString: use 'k' instead of 'k_0' - pj_ellps: use official value from EPSG for reverse flattening of Airy ellipsoid - GDAL compatibility: add support for importing odd formulations of Mercator as WKT1, but rejecting them when exporting to PROJ - Add export of 'Geostationary Satellite (Sweep X)' to WKT1_GDAL via EXTENSION.PROJ4 node - importFromPROJString: add support for +f - WKT1 / PROJ4: add support for EXTENSION.PROJ4 nodes and +wktext - exportToWKT: change way we deal with AXIS by default for WKT1_GDAL - Improve etmerc handling - Fix WKT import of peg_point_heading for Spherical_Cross_Track_Height - International Map of the World Polyconic: change parameter mapping - exportToPROJ: add alpha parameter - Hotine_Oblique_Mercator_Two_Point_Natural_Origin: GDAL_WKT1 related fix - GDAL compatibility improvements in import from PROJ4 / WKT1 for polar stereographic - Add support for +towgs84 when importing a +proj=geocent - import from WKT1: add support for an odd Mercator_1SP formulation handled by GDAL - export to proj4 strings: add +units=m to projected CRS for better GDAL compatibility - export to proj4 strings: add +no_defs to CRS for better GDAL compatibility
2018-11-14Implement RFC 2: Initial integration of "GDAL SRS barn" workEven Rouault
This work mostly consists of: - a C++ implementation of the ISO-19111:2018 / OGC Topic 2 "Referencing by coordinates" classes to represent Datums, Coordinate systems, CRSs (Coordinate Reference Systems) and Coordinate Operations. - methods to convert between this C++ modeling and WKT1, WKT2 and PROJ string representations of those objects - management and query of a SQLite3 database of CRS and Coordinate Operation definition - a C API binding part of those capabilities This is all-in-one squashed commit of the work of https://github.com/OSGeo/proj.4/pull/1040