aboutsummaryrefslogtreecommitdiff
path: root/scripts
AgeCommit message (Collapse)Author
2019-09-28Database: update to EPSG 9.8.2Even Rouault
With limitation of https://github.com/OSGeo/PROJ/issues/1632 regarding concatenated operations with more than 3 steps.
2019-09-15API: add CRS::promoteTo3D(), proj_crs_promote_to_3D() and ↵Even Rouault
proj_crs_create_projected_3D_crs_from_2D() (fixes #1587) (projinfo changes adding --3d from master removed)
2019-08-26Add a proj_cleanup() function to free global resources, typically at process ↵Even Rouault
termination
2019-08-23Add proj_create_crs_to_crs_from_pj()Even Rouault
I've been frustrated a number of times with proj_create_crs_to_crs() not accepting a PJ* object for the source and target CRS. And thus constraining to go back to WKT2 in a artificial way.
2019-08-20C API: add proj_context_set_autoclose_database() to automatically close ↵Even Rouault
database (fixes #1565)
2019-08-20Merge pull request #1547 from rouault/json_exportEven Rouault
Add CRS JSON export (refs #1545)
2019-08-17PROJJSON: rename file as projjson.schema.json, and add versionning to it and ↵Even Rouault
to exported PROJJSON strings
2019-08-09C API: add proj_as_projjson()Even Rouault
2019-08-09createFromUserInput(): add capability to import PROJJSONEven Rouault
2019-07-19Add set discard superseded method to api (#1534)Matt Littlemore
Closes #1519
2019-07-08CRS JSON: export GeographicCRS and Projected CRSEven Rouault
2019-07-06Proof-of-concept of JSON export limited to PrimeMeridian (refs #1545)Even Rouault
2019-07-01C API: add proj_concatoperation_get_step_count() and ↵Even Rouault
proj_concatoperation_get_step()
2019-06-30Database: import scope/remarks for coordinate operation and add C APIEven Rouault
- Import scope and remarks for coordinate operations of the EPSG dataset. Database size goes from 5.2 MB to 5.55 MB - Add proj_get_scope() and proj_get_remarks()
2019-06-01Add proj_grid_get_info_from_database to allow retrieval of gridNyall Dawson
metadata from a grid filename
2019-05-08scripts/build_db.py: update to reflect new proj.db structureEven Rouault
2019-05-06createOperations(): for 'Amersfoort / RD New + NAP height' (EPSG:7415) to ↵Even Rouault
ETRS89 (EPSG:4937), make sure that the vgridshift is applied first (ie on Amersfoort datum) before the hgridshift
2019-05-01Merge branch 'master' into check_exported_symbolsKristian Evers
2019-04-26Travis: check that the exported symbols conform to what is expectedEven Rouault
This is to help checking that we do not introduce un-intended API/ABI breakage. Not fully bullet proof, but a start.
2019-04-22Database / ESRI: use EPSG ellipsoid when possibleEven Rouault
2019-04-22Database: import common projections from ESRI projected CRS in structured formEven Rouault
That is Transverse_Mercator/Gauss_Kruger, Lambert_Conformal_Conic and Hotine_Oblique_Mercator_Azimuth_Natural_Origin Decreases proj.db from 5 853 184 bytes to 5 189 632 bytes.
2019-04-22Database: make conversion & helmert_transformation updatable viewsEven Rouault
- Transform conversion as a view, and when inserting into it, actually insert into 3 tables: conversion_table, conversion_method and conversion_param, so that method and parameter names are not repeated each time. - Similarly for helmert_tranformation, insert into helmert_transformation_tabl and coordinate_operation_method. This reduces the db size from 6 344 704 bytes to 5 853 184 bytes, without significant slowdown for queries.
2019-03-25Database: update ESRI to ArcMap 10.7.0Even Rouault
2019-03-25Database: add operation_version column to coordinate operation tablesEven Rouault
2019-03-25Database: update to IGNF v3.0.3Even Rouault
2019-03-18Database: fix import of deprecated ellipsoid and geodetic_datum from ESRI ↵Even Rouault
database
2019-02-22proj.db: update to EPSG 9.6.0Even Rouault
Minor update w.r.t 9.5.5 that adds a few new coordinate operations.
2019-02-20projinfo: advertize the use of '--spatial-test intersects' when it can bring ↵Even Rouault
more results
2019-02-16Make sure that projinfo man-page is added to source distributionKristian Evers
2019-01-02Typo fixesEven Rouault
2018-12-31Update proj_symbol_rename.hEven Rouault
2018-12-30Rename proj_obj_XXX as proj_XXX and PJ_OBJ_XXX as PJ_XXXEven Rouault
2018-12-30Remove PJ_OBJ type since it is now merged into PJEven Rouault
2018-12-26cpp conversion: remove useless pj_, PJ_ and proj_ filename prefixesEven Rouault
2018-12-26cpp conversion: move source files in apps/ iso19111/ conversions/ ↵Even Rouault
projections/ transformations/ tests/ subdirectories
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-06Add API to retrieve non-deprecated equivalent of an objectEven Rouault
2018-12-06Take into account supersession information to filter out irrelevant ↵Even Rouault
transformations
2018-12-04Database: fix ingestion from ESRI of alias names for deprecated objectsEven Rouault
2018-12-04Improve recognition of WKT1 datum namesEven Rouault
2018-11-30C API: more camel_casification of parametersEven Rouault
2018-11-30C API: do not 'cache' PROJ context in PJ_OBJ objectsEven Rouault
We store the PJ_CONTEXT* in the PJ_OBJ objects, but this might cause issues in multi-threaded uses. For example, before this change, let's imagie: - a PJ_OBJ is created in thread A with a PJ_CONTEXT that is specific to this thread A - PJ_OBJ is transfered to another thread that operates on it. It might thus use the PJ_CONTEXT that was TLS(A) - in the meantime thread A does completely different things, but still operate on its PJ_CONTEXT. We might get a concurrent use of the PJ_CONTEXT despite working on different PJ_OBJ Another situation is when using constructor functions that take two PJ_OBJ. Up to now, we arbitrarily selected the context of one of the arguments to attach it to the new object. So better be explicit on which context is used. For reference, in those wrappers of the C++ API, the context is mostly used for two things: - reporting C++ exceptions as PROJ errors with the error handler attached to the PJ_CONTEXT - using the database handle that is associated with the PJ_CONTEXT.
2018-11-29C API extensions and renamingEven Rouault
- proj_obj_create_projected_XXXXX() are renamed to proj_obj_create_conversion_snake_case() and just instanciate a Conversion object - Advanced manipulation functions are moved to a dedicated section at bottom of proj.h - New C API needed for GDAL OGRSpatialReference
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-29Reformat test .cpp filesEven Rouault
2018-11-20Database: use official IGNF.xml registry to create content from the IGNF ↵Even Rouault
authority Up to now, we re-processed the data/IGNF PROJ.4 definition to ingest it into proj.db, but this file originally come from a processing of IGNF.xml ( http://librairies.ign.fr/geoportail/resources/IGNF.xml ) The end result is not strictly equivalent, as data/IGNF has some 'magic' to create towgs84 / nadgrids, since IGNF.xml doesn't necessary contain all transformations from its geodetic systems to WGS84. I've tried to re-add some of those missing transforms (null Helmert transforms), so it can be used for pivoting, but that might be incomplete.
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
2018-10-09Fix typosEven Rouault
2018-09-18Only allow usage of proj_api.h if explicit consent was givenKristian Evers
We want to flag that proj_api_h is now deprecated. With this commit it is now mandatory to #define ACCEPT_USE_OF_DEPRECATED_PROJ_API_H before proj_api.h can be included. proj_api.h is used internally a bunch of places. Therefore ACCEPT_USE_OF_DEPRECATED_PROJ_API_H has been defined in projects.h and a few other necessary files to ensure that PROJ compiles. Closes #836