aboutsummaryrefslogtreecommitdiff
path: root/src/iso19111
AgeCommit message (Collapse)Author
2019-03-26c_api.cpp: avoid mixing enum types. Coverity CID 193542Even Rouault
2019-03-26factory.cpp: avoid warning about int truncation. Coverity CID 193544Even Rouault
2019-03-26Merge pull request #1369 from rouault/grid_fixesEven Rouault
Grid related fixes
2019-03-25lookForGridInfo(): correctly return that a grid is present, if present on ↵Even Rouault
the file system, but not in the database
2019-03-25Database: add operation_version column to coordinate operation tablesEven Rouault
2019-03-25WKT2_2018: always export ID of SOURCECRS/TARGETCRS and STEPsEven Rouault
even if there is one on upper node This is a particular logic allowed by paragraph 7.3.3 Identifier of OGC 18-010r6
2019-03-25WKT2_2018: always export ID in base crs node, even if there is one on upper nodeEven Rouault
This is a particular logic allowed by paragraph 7.3.3 Identifier of OGC 18-010r6
2019-03-25WKT2_2018: export ID in base crs node, when there is none on top of upper nodeEven Rouault
This is the standard logic, that is now possible since ID is allowed in BASEGEOGCRS and similar node
2019-03-25crs.cpp: remove non-intented (harmless here) pass by reference of a pointerEven Rouault
2019-03-24WKT2 parser: update to OGC 18-010r6Even Rouault
- Allow ID[] in base CRS of Derived CRS - Allow VERSION[] in non-conversion coordinate operations - Use VERSION[] to set operationVersion member of CoordinateOperation - Export operationVersion in WKT2:2018
2019-03-23Fix GCC 9 warning about useless std::move()Even Rouault
2019-03-19Doc: impove doc about OGC URNEven Rouault
2019-03-17Fix some issues raised by latest cppcheckEven Rouault
- coordinateoperation_internal.hpp: missing 'explicit' keyword - proj.cpp: unused 'generic' member in enumeration - init.cpp: useless assignment to a_orig and es_orig, because done again a few lines below. - crs.cpp: unused variable - datum.cpp: inefficient use of find() function - io.cpp: * missing 'static' qualifier for method * useles ternary test (left and right have same value) - aeqd.cpp: useless assignment of inv and fwd, snice done again a few lines below - isea.cpp: useless assignment of resolution and aperture since done again a few lines below, and with default values when params are absent - mod_ster.cpp: useless assignment of lp.lam, overriden in below code paths. - stere.cpp: false positive, but better not modify another variable than the iterator in a for() loop.
2019-03-16createOperations(): fix nadgrids -> nadgrids+geoidgridsEven Rouault
2019-03-16createOperations(): fix nadgrids+geoidgrids -> nadgrids+geoidgridsEven Rouault
2019-03-16createOperation(): fix geocent <--> nadgrids+geoidgrids case (fixes #1323)Even Rouault
2019-03-16Run scripts/reformat_cpp.shEven Rouault
2019-03-16Fix doc generation with Breathe 4.12.0Even Rouault
Breathe 4.12.0 (as pulled by MacOSX builds such as https://travis-ci.com/OSGeo/proj.4/jobs/185395222) does not seem to like default initialization in documented C++ structs (regression/bug) /Users/travis/build/OSGeo/proj.4/docs/source/development/reference/cpp/io.rst:6:Parsing of expression failed. Using fallback parser. Error was: Error in postfix expression, expected primary expression or type. If primary expression: Invalid definition: Expected identifier in nested name. [error at 67] std::string osgeo::proj::io::AuthorityFactory::CRSInfo::authName = {} -------------------------------------------------------------------^ If type: Invalid definition: Expected identifier in nested name. [error at 67] std::string osgeo::proj::io::AuthorityFactory::CRSInfo::authName = {} -------------------------------------------------------------------^
2019-03-01Doc: rename to ISO-19111:2019Even Rouault
And publish link to corresponding promoted and public OGC doc: http://docs.opengeospatial.org/as/18-005r4/18-005r4.html
2019-02-26Rename internal constant to avoid conflict with macro in Solaris system headersEven Rouault
2019-02-26io.cpp: cast to 'unsigned char' before isspace() to avoid undefined ↵Even Rouault
behaviour, for example on netBSD 8
2019-02-24ParameterValue::_exportToWKT(): fix null pointer dereference with ↵Even Rouault
-D_GLIBCXX_ASSERTIONS on WKT with PARAMETERFILE (fixes #1290)
2019-02-21Transformation: reintroduce the term of 'Null geographic offset' for ↵Even Rouault
transformations between geographic CRS of same datum (typically 3D to 2D)
2019-02-21Geog2D+Height -> Geog3D of same datum: avoid inserting a useless ballpark ↵Even Rouault
horizontal transformation
2019-02-20typo fixes: s/Explictly/Explicitly/ and s/instanciat/instantiat/Even Rouault
2019-02-20CoordinateOperation: add a hasBallparkTransformation() method that can be ↵Even Rouault
used to know if it includes a very approximative transformation term
2019-02-20CompoundCRS to Geog3DCRS: in synthetised transformation, document in the ↵Even Rouault
name we are lacking an ellipsoid height to vertCRS height correction
2019-02-20PROJStringFormatting: change order of emission of push/pop w.r.t axis ↵Even Rouault
swap/unitconvert to avoid useless simplification rules
2019-02-20PROJStringFormatter: remove useless push/pop in another caseEven Rouault
2019-02-20Operation sorting: tweakEven Rouault
2019-02-20Vertical CRS transformation: synthetize a vertical unit change ↵Even Rouault
transformation when needed, and also sort Null geographic offset transformation in last
2019-02-20compoundCRS to compoundCRS: avoid emitting dummy 'Null geographic offset ↵Even Rouault
from X to X' in transformation name
2019-02-20Add VERTCON grid name alternatives in database, and handle filename ↵Even Rouault
substitution for VERTCON method
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-17Modify the default strategy of researching intermediate CRS to do it only if ↵Even Rouault
there is no direct transformation
2019-02-16Make sure proj_get_source_crs() and proj_get_target_crs() work on 'pseudo' ↵Even Rouault
PJ object returned by proj_create_crs_to_crs() when there are several alternatives
2019-02-14Coordinate operations where a grid is present, but not in grid_alternatives ↵Even Rouault
table, should be considered as known to be sorted first
2019-02-13EPSG Helmert and Molodensky-Badekas methods in the Geographic 2D domain: use ↵Even Rouault
the push/pop v_3 operator to preserve the Z component
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-12Merge remote-tracking branch 'osgeo/master' into pipestackKristian Evers
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-11Use pj_new()Even Rouault
2019-02-07Rename proj_crs_list_destroy() to proj_crs_info_list_destroy()Even Rouault
2019-02-07Add proj_get_crs_info_list_from_database()Even Rouault
This method is intended to be used typically by GUI that lists all possible CRS. What is does could be done by previously existing functions, but it is much faster. It typically runs in less than 0.1s (hot run) versus ~0.5s with the method that consists in enumerating all codes and instanciating a PJ object for each of them.
2019-02-06Shut up pj_create_internal when varifying validity of generated proj-stringKristian Evers
2019-02-06ISO19111: Handle database area objects with no bounding boxEven Rouault
2019-02-05PROJStringParser::createFromPROJString(): avoid potential infinite loop. ↵Even Rouault
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12913. Credit to OSS Fuzz
2019-02-03typo fixJürgen Fischer
2019-02-03Avoid division by zero in Ellipsoid::computeSemiMinorAxis(). Fixes ↵Even Rouault
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12867. Credit to OSS Fuzz. master only
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