Compare commits

...
87 Commits
Author SHA1 Message Date
Mike Taves 8fa1ec4c80 ReadTheDocs: fix branch ref [ci skip] 2023-01-25 22:55:58 +13:00
Mike Taves fba6618a77 ReadTheDocs: update output directory for artefacts, other updates 2023-01-25 16:45:31 +13:00
Mike Taves 0bbd172316 Implement ReadTheDocs for 8.0, disable other CI workflows (#3557) 2023-01-14 07:23:56 +13:00
Kristian Evers 4c1d54eaea Avoid accidental doc publishing from the 8.0 branch 2021-06-30 22:40:50 +02:00
Even Rouault 6e32ab522b Merge pull request #2741 from OSGeo/backport-2740-to-8.0
[Backport 8.0] Update link in docs to Dutch coord transform website.
2021-06-05 11:49:39 +02:00
Even Rouault 4216ab1c91 Merge pull request #2740 from RoelvandenBerg/master
Update link in docs to Dutch coord transform website.
2021-06-05 09:47:55 +00:00
Heidi Vanparys 8c473a0671 Update install.rst: update Windows note
Add info that OSGeo4W Shell may be present already when QGIS is present.
2021-05-19 12:53:27 +02:00
Heidi Vanparys 263993d95f Update projinfo doc: add example --single-line 2021-05-19 12:52:59 +02:00
Even Rouault 0b766435ad Merge pull request #2716 from OSGeo/backport-2715-to-8.0
[Backport 8.0] Mention what the default +units are
2021-05-11 04:22:38 +02:00
積丹尼 Dan Jacobson e43eba3d88 Mention what the default +units are 2021-05-09 17:32:00 +00:00
Even Rouault 0a34af2d7f Merge pull request #2714 from OSGeo/backport-2708-to-8.0
[Backport 8.0] Fix typo: "Mod. Stererographics" -> "Modified Stereographic"
2021-05-08 13:29:16 +02:00
Even Rouault 70d9a59ab3 Merge pull request #2708 from mwtoews/stereographic
Fix typo: "Mod. Stererographics" -> "Modified Stereographic"
2021-05-07 21:45:36 +00:00
Even Rouault f196dbb0d1 Doc: fix URL 2021-05-07 21:46:36 +02:00
Even Rouault b9db9c74e2 Doc: update GDAL version 2021-05-07 21:31:26 +02:00
Mike Taves 22654ce7c0 DOC: configure and add spelling wordlist; fix typos, apply Sphinx syntax (#2707) 2021-05-06 10:37:06 +12:00
Kristian Evers 45a88fe245 Update docs for 8.0.1 release 2021-05-05 10:50:52 +02:00
Even Rouault fddc2e791b docs/Makefile: copy triangulation.schema.json (fixes #2699) 2021-04-28 16:16:32 +02:00
Kristian Evers 4aa56f2d0e Update version numbers for 8.0.1 2021-04-28 13:13:26 +02:00
Kristian Evers ff63939f9b Update NEWS for 8.0.1 release 2021-04-28 11:16:25 +02:00
Kristian Evers aea3d29de8 Update man-pages from Sphinx-docs 2021-04-28 10:42:30 +02:00
Kristian Evers 07754f7cae Update ABI numbers for 8.0.1 release 2021-04-28 10:31:28 +02:00
Kristian Evers a035a83d03 Update release data for 8.0.1 2021-04-28 10:28:38 +02:00
Even Rouault a7a4d35816 Merge pull request #2693 from OSGeo/backport-2687-to-8.0
[Backport 8.0] pj_vlog(): fix buffer overflow in case of super lengthy error message
2021-04-23 21:47:54 +02:00
Even Rouault 71f6e3a21f Merge pull request #2687 from rouault/pj_vlog_buffer_overflow
pj_vlog(): fix buffer overflow in case of super lengthy error message
2021-04-23 16:22:15 +00:00
Even Rouault ae168e009b ConcatenatedOperation::fixStepsDirection(): fix potential nullptr dereference 2021-04-23 10:10:38 +02:00
Even Rouault 30d6ec80fd Merge pull request #2679 from OSGeo/backport-2678-to-8.0
[Backport 8.0] Revert "proj_create_crs_to_crs_from_pj(): do not use PROJ_SPATIAL_CRITERION_PARTIAL_INTERSECTION if area is specified"
2021-04-20 12:30:17 +02:00
Even Rouault 3d75435aa9 Merge pull request #2678 from rouault/revert_ebe3425bf
Revert "proj_create_crs_to_crs_from_pj(): do not use PROJ_SPATIAL_CRITERION_PARTIAL_INTERSECTION if area is specified"
2021-04-20 09:23:49 +00:00
Kristian Evers cedc9789a1 Merge pull request #2673 from OSGeo/backport-2672-to-8.0
[Backport 8.0] utm: error out when value of +zone= is not an integer (fixes #2671)
2021-04-16 08:31:50 +02:00
Even Rouault e4d0c40f82 Merge pull request #2672 from rouault/utm_invalid_zone
utm: error out when value of +zone= is not an integer (fixes #2671)
2021-04-15 21:48:11 +00:00
Even Rouault e03a9aacec CRS::normalizeForVisualization(): propagate domains/extent of original CRS (fixes #2603) 2021-04-12 11:51:30 +02:00
Even Rouault a42b447021 Merge pull request #2661 from OSGeo/backport-2660-to-8.0
[Backport 8.0] getCRSInfoList(): make result order deterministic (by increasing auth_name, code)
2021-04-11 02:02:41 +02:00
Even Rouault 0d96f25f2e Merge pull request #2660 from rouault/getCRSInfoList_deterministic_result_order
getCRSInfoList(): make result order deterministic (by increasing auth_name, code)
2021-04-10 23:28:25 +00:00
Even Rouault 79a93bcb21 Doc: remove mention of k_0 and lat_ts in aeqd projection. They are not used. Fixes #2638 and fixes #2639 2021-04-10 20:58:35 +02:00
Kristian Evers 4669819b87 Merge pull request #2649 from OSGeo/backport-2648-to-8.0
[Backport 8.0] Add missing comma
2021-04-05 14:23:56 +02:00
Kristian Evers f8423cb908 Merge pull request #2648 from jidanni/patch-1
Add missing comma
2021-04-05 05:05:55 +00:00
Even Rouault 76973c9e56 Generic inverse: fix when initial guess if super close to result 2021-04-03 21:59:30 +02:00
Even Rouault 734b698043 Merge pull request #2636 from OSGeo/backport-2635-to-8.0
[Backport 8.0] Database: update to EPSG v10.018
2021-04-02 18:32:09 +02:00
Even Rouault 31ca31f3a7 Merge pull request #2635 from rouault/epsg_10_018
Database: update to EPSG v10.018
2021-04-02 16:12:29 +00:00
Even Rouault 45bea392cb Merge pull request #2634 from OSGeo/backport-2631-to-8.0
[Backport 8.0] Reduce doubled information
2021-04-02 12:47:22 +02:00
積丹尼 Dan Jacobson 5ca8e3cf6e Doc: geod.rst: reduce doubled information (#2631)
Don't repeat neighboring information.
2021-04-02 10:18:12 +00:00
Even Rouault c19c6606a2 Merge pull request #2628 from OSGeo/backport-2627-to-8.0
[Backport 8.0] Database: refine checks for 'Geog3D to Geog2D+XXX' transformations, …
2021-04-01 23:45:24 +02:00
Even Rouault 3c202610d3 Merge pull request #2627 from rouault/improve_grid_transformation_check
Database: refine checks for 'Geog3D to Geog2D+XXX' transformations, …
2021-04-01 21:21:57 +00:00
Even Rouault 4f5df6999e Merge pull request #2626 from OSGeo/backport-2625-to-8.0
[Backport 8.0] Database: update to EPSG 10.017
2021-04-01 22:12:31 +02:00
Even Rouault f1635cec8d Merge pull request #2625 from rouault/epsg_10_017
Database: update to EPSG 10.017
2021-04-01 19:12:05 +00:00
Even Rouault 8cb60c89d8 Doxyfile: remove obsolete COLS_IN_ALPHA_INDEX tag 2021-03-29 13:55:06 +02:00
Even Rouault c44e53dec5 Merge pull request #2623 from rouault/backport_2622
[Backport 8.0] createOperation(): make sure no to discard deprecated operations...
2021-03-29 13:54:39 +02:00
Even Rouault 62038f4a38 createOperation(): make sure no to discard deprecated operations...
if the replacement uses a grid unknown to us.

Fixes issue reported at https://lists.osgeo.org/pipermail/gdal-dev/2021-March/053771.html

The issue comes from the fact that EPSG has created 2 transformations
using grids BALR2009.gsb ad PENR2009.gsb that supersede the one which
uses the single grid SPED2ETV2 we have in PROJ-data.
2021-03-29 12:46:50 +02:00
Even Rouault 56449166e5 Merge pull request #2621 from OSGeo/backport-2620-to-8.0
[Backport 8.0] Fix build on Solaris 11.4
2021-03-28 22:55:09 +02:00
Even Rouault 6355e5533b Merge pull request #2620 from rouault/fix_build_solaris
Fix build on Solaris 11.4
2021-03-28 20:30:23 +00:00
Even Rouault b73903790a Merge pull request #2617 from OSGeo/backport-2613-to-8.0
[Backport 8.0] Doc: fix typo in man page of utilities, and reduce copy&paste
2021-03-28 15:54:21 +02:00
Even Rouault 89deef0171 Merge pull request #2613 from rouault/doc_fix_app_typo
Doc: fix typo in man page of utilities, and reduce copy&paste
2021-03-28 11:08:23 +00:00
Even Rouault 752cb2a162 Merge pull request #2612 from OSGeo/backport-2611-to-8.0
[Backport 8.0] Add mapping of ESRI Equal_Area projection method to EPSG (fixes #2610)
2021-03-27 20:23:40 +01:00
Even Rouault 08c522c210 Merge pull request #2611 from rouault/fix_2610
Add mapping of ESRI Equal_Area projection method to EPSG (fixes #2610)
2021-03-27 18:51:46 +00:00
Even Rouault 38e507c341 Merge pull request #2604 from OSGeo/backport-2584-to-8.0
[Backport 8.0] Add transformations for CHGeo2004, Swiss geoid model
2021-03-25 15:57:21 +01:00
Javier Jimenez Shaw c5f2cc2c8c Database: add grid alternatives and transformation custom for ch_swisstopo_chgeo2004_ETRS89_LHN95 and ch_swisstopo_chgeo2004_ETRS89_LN02 (#2584) 2021-03-25 13:47:53 +00:00
Kristian Evers 03b5f40edf Merge pull request #2600 from rouault/backport_2548
[Backport 8.0] Database: Additions to the norwegian NKG2020 transformation (#2548), …
2021-03-23 21:06:52 +01:00
Kristian Evers 9a7ee56058 Merge pull request #2599 from OSGeo/backport-2598-to-8.0
[Backport 8.0] Incorrect EPGS extent code for EPSG:7789>EPSG:4976 NKG transformation
2021-03-23 21:06:25 +01:00
Sveinung HimleandEven Rouault eeb9fef28a Database: Additions to the norwegian NKG2020 transformation (#2548), and NGO48 to ETRS89 TIN transfrm (#2554)
* Correction grid NKG:ETRF14 to EPSG:7922

* Added NKG:ITRF_TO_NO GIE test

* Correction grid no_kv_NKGETRF14_EPSG7922_2000 added to grid_alternatives.sql

* proj_method 'velocity_grid' added in check_grid_alternatives_proj_method. NKG velocity grid added to grid_alternatives.sql

* also include follow-up fix to master #2548: e10a849cd0

* Add NGO48 (EPSG:4273) to ETRS89 (EPSG:4258) triangulation-based transformation (#2554)

Co-authored-by: Even Rouault <even.rouault@spatialys.com>
2021-03-23 15:52:34 +01:00
Even Rouault 6804e7dfc7 Merge pull request #2598 from himsve/nkg_sweden
Incorrect EPGS extent code for EPSG:7789>EPSG:4976 NKG transformation
2021-03-23 14:33:03 +00:00
Even Rouault 8e9239cfe4 Merge pull request #2597 from OSGeo/backport-2596-to-8.0
[Backport 8.0] fix wrong capitalization of CHENyx06_ETRS.gsb
2021-03-23 12:32:25 +01:00
Javier Jimenez Shaw 0ef80def8c data/CH: fix wrong capitalization of CHENyx06_ETRS.gsb (#2596)
The file data/CH containing the +proj string to use CHENyx06_ETRS.gsb was wrongly capitalized. It was not consistent with EPSG and therefore other entries in proj.db.
2021-03-23 11:24:44 +00:00
Kristian Evers afc0af3afd Merge pull request #2595 from OSGeo/backport-2594-to-8.0
[Backport 8.0] createOperations(): fix regression for the fix of #2588
2021-03-21 07:21:39 +01:00
Even Rouault b14fba9857 Merge pull request #2594 from rouault/fix_of_fix_2588
createOperations(): fix regression for the fix of #2588
2021-03-20 23:23:39 +00:00
Even Rouault 4e5f622590 Merge pull request #2593 from OSGeo/backport-2592-to-8.0
[Backport 8.0] createOperations(): fix Compound to Geog3D CRS computations in the case
2021-03-20 12:47:48 +01:00
Even Rouault 7f0d6a0839 Merge pull request #2592 from rouault/fix_2588
createOperations(): fix Compound to Geog3D CRS computations in the ca…
2021-03-20 11:03:16 +00:00
Kristian Evers e77545c092 Merge pull request #2591 from OSGeo/backport-2590-to-8.0
[Backport 8.0] docs: update community site with links to FOSS4G 2021
2021-03-19 21:02:06 +01:00
Kristian Evers 9263a33ef7 Merge pull request #2590 from kbevers/update-foss4g
docs: update community site with links to FOSS4G 2021
2021-03-19 18:05:14 +00:00
Even Rouault fda68193f0 CRS::promoteTo3D(): propagate the extent from the 2D CRS (fixes #2587)
This will help getting more consistent results between the 2D and 3D
cases, as identified in
https://github.com/OSGeo/PROJ/issues/2587#issue-836061171
2021-03-19 17:13:21 +01:00
Even Rouault 9393831dce createFromCRSCodesWithIntermediates(): improve perf when no match
createFromCRSCodesWithIntermediates() runs a rather costly self-join.
Only run it if the source and target CRS are the source/target of a
coordinate operation. This helps for the performance of
proj_create_crs_to_crs() when run on projected CRS for example that are
extremely unlikely to be the source/target of an operation (except
currently the Finish ones). For the EPSG:26915 to EPSG:3857 case of
https://github.com/OSGeo/gdal/issues/3470, this helps decreasing the
time of proj_create_crs_to_crs() from 18 ms to 10 ms.
2021-03-18 16:04:44 +01:00
Even Rouault 6293c434c6 Fix proj_clone() to work on 'meta' coordinate operation PJ* objects that can be returned by proj_create_crs_to_crs() 2021-03-17 16:34:11 +01:00
Even Rouault f4bd832184 Doc: add a page to document macros 2021-03-17 16:34:11 +01:00
Even Rouault 861ae257f4 proj.h: add PROJ_COMPUTE_VERSION, PROJ_VERSION_NUMBER, PROJ_AT_LEAST_VERSION macros
Makes it easier for users to test if they build against a PROJ version
later than a given x.y.z version.
2021-03-17 16:34:11 +01:00
Mike Taves b595edeaf0 DOC: Use breathe>=4.27 to support Doxygen \page, \section, etc. 2021-03-16 08:41:30 +13:00
Mike Taves 0d90ce1834 Fix configuration for sphinxcontrib-bibtex version 2 or later (#2572) 2021-03-11 23:26:43 +13:00
Kristian Evers acca996513 Improve docs for geodesic distance functions in proj.h 2021-03-10 21:21:23 +01:00
Even Rouault ce97e244e3 Make proj_lp_dist() and proj_geod() work on a PJ* CRS object 2021-03-10 20:45:01 +01:00
Even Rouault 22f5eb4724 doc: typo fixes 2021-03-07 20:31:55 +01:00
Even Rouault 2299fa9e16 projinfo: catch exception on bad value for --accuracy (CID 314810) 2021-03-07 11:58:23 +01:00
Even Rouault 6651e97dae cs2cs: catch exception on bad value for --accuracy (CID 314818) 2021-03-07 11:58:23 +01:00
Even Rouault 4075266be0 Fix gcc 11 -Wnonnull warnings
```
/proj-8.0.0/src/iso19111/operation/coordinateoperationfactory.cpp: In function 'osgeo::proj::operation::TransformationNNPtr osgeo::proj::operation::createBallparkGeographicOffset(const CRSNNPtr&, const CRSNNPtr&, const DatabaseContextPtr&)':
/proj-8.0.0/src/iso19111/operation/coordinateoperationfactory.cpp:1860:36: warning: 'this' pointer is null [-Wnonnull]
 1860 |                 ->coordinateSystem()
      |                                    ^
In file included from /proj-8.0.0/src/iso19111/operation/coordinateoperationfactory.cpp:35:
/proj-8.0.0/include/proj/crs.hpp:196:47: note: in a call to non-static member function 'const CoordinateSystemNNPtr& osgeo::proj::crs::SingleCRS::coordinateSystem() const'
  196 |     PROJ_DLL const cs::CoordinateSystemNNPtr &coordinateSystem() PROJ_PURE_DECL;
      |                                               ^~~~~~~~~~~~~~~~
/proj-8.0.0/src/iso19111/operation/coordinateoperationfactory.cpp:1864:36: warning: 'this' pointer is null [-Wnonnull]
 1864 |                 ->coordinateSystem()
      |                                    ^
In file included from /proj-8.0.0/src/iso19111/operation/coordinateoperationfactory.cpp:35:
/proj-8.0.0/include/proj/crs.hpp:196:47: note: in a call to non-static member function 'const CoordinateSystemNNPtr& osgeo::proj::crs::SingleCRS::coordinateSystem() const'
  196 |     PROJ_DLL const cs::CoordinateSystemNNPtr &coordinateSystem() PROJ_PURE_DECL;
      |                                               ^~~~~~~~~~~~~~~~
/proj-8.0.0/src/iso19111/factory.cpp: In member function 'std::vector<dropbox::oxygen::nn<std::shared_ptr<osgeo::proj::operation::CoordinateOperation> > > osgeo::proj::io::AuthorityFactory::createBetweenGeodeticCRSWithDatumBasedIntermediates(const CRSNNPtr&, const string&, const string&, const CRSNNPtr&, const string&, const string&, bool, bool, bool, bool, const std::vector<std::__cxx11::basic_string<char> >&, const ExtentPtr&, const ExtentPtr&) const':
/proj-8.0.0/src/iso19111/factory.cpp:4724:66: warning: 'this' pointer is null [-Wnonnull]
 4724 |         dynamic_cast<crs::GeodeticCRS *>(sourceCRS.get())->datum();
      |                                                                  ^
In file included from /proj-8.0.0/src/iso19111/factory.cpp:36:
/proj-8.0.0/include/proj/crs.hpp:254:54: note: in a call to non-static member function 'const GeodeticReferenceFramePtr& osgeo::proj::crs::GeodeticCRS::datum() const'
  254 |     PROJ_DLL const datum::GeodeticReferenceFramePtr &datum() PROJ_PURE_DECL;
      |                                                      ^~~~~
/proj-8.0.0/src/iso19111/factory.cpp:4726:66: warning: 'this' pointer is null [-Wnonnull]
 4726 |         dynamic_cast<crs::GeodeticCRS *>(targetCRS.get())->datum();
      |                                                                  ^
In file included from /proj-8.0.0/src/iso19111/factory.cpp:36:
/proj-8.0.0/include/proj/crs.hpp:254:54: note: in a call to non-static member function 'const GeodeticReferenceFramePtr& osgeo::proj::crs::GeodeticCRS::datum() const'
  254 |     PROJ_DLL const datum::GeodeticReferenceFramePtr &datum() PROJ_PURE_DECL;
      |                                                      ^~~~~
```
2021-03-06 22:40:46 +01:00
Even Rouault 6f1a3c4648 gie_self_tests: fix use of uninitialized memory (fixes #2557) 2021-03-06 22:40:13 +01:00
Even Rouault 339b71fa32 createOperations(): fix incorrect height transformation between 3D promoted RGF93 and CH1903+ (fixes #2541) 2021-03-05 21:32:09 +01:00
Even Rouault da406335b3 Merge pull request #2553 from rouault/backport_8.0_clang_format
[Backport 8.0] Reformat code with clang-format-10 from ubuntu 20.04
2021-03-04 11:39:22 +01:00
Even Rouault d7d5e48de5 CI: disable FreeBSD / Cirrus builds
They started to fail a few weeks ago with the following error
```
./autogen.sh
Running aclocal
autom4te-2.69: need GNU m4 1.4 or later: /usr/local/bin/gm4
aclocal: error: autom4te failed with exit status: 1

  Something went wrong, giving up!
```
2021-03-03 18:41:15 +01:00
Even Rouault d5e07c5399 Reformat code with clang-format-10 from ubuntu 20.04 2021-03-03 18:34:50 +01:00
Kristian Evers 5cf4ca197c +proj=latlon docs: Datum list is given with cs2cs -ld
Closes #2549
2021-03-01 13:31:53 +01:00
Kristian Evers ba9e15cc22 reconfigure 'edit on github' links to 8.0 branch 2021-03-01 13:05:51 +01:00
193 changed files with 4129 additions and 2015 deletions
+1 -1
View File
@@ -96,9 +96,9 @@ install_manifest.txt
/data/for_tests/
# docs
tmp_breathe
/docs/.doxygen_up_to_date
/docs/build
/docs/plot/images
/latex
# m4
+52
View File
@@ -0,0 +1,52 @@
# .readthedocs.yaml
# Read the Docs configuration file
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
# Required
version: 2
build:
os: "ubuntu-22.04"
tools:
python: "mambaforge-4.10"
jobs:
post_checkout:
# Cancel building pull requests when there aren't changed in the docs directory or YAML file.
# You can add any other files or directories that you'd like here as well,
# like your docs requirements file, or other files that will change your docs build.
#
# If there are no changes (git diff exits with 0) we force the command to return with 183.
# This is a special exit code on Read the Docs that will cancel the build immediately.
- |
if [ "$READTHEDOCS_VERSION_TYPE" = "external" ] && git diff --quiet origin/8.0 -- docs/ .readthedocs.yaml;
then
exit 183;
fi
- (git --no-pager log --pretty="tformat:%s -- %b" -1 | grep -viqP "skip ci|ci skip") || exit 183
pre_build:
- ./docs/rtd/pre_build.sh
- ./scripts/doxygen.sh
- ./docs/rtd/plot.sh
post_build:
- ./docs/rtd/post_build.sh
apt_packages:
- cmake
- ninja-build
- g++
- sqlite3
- libsqlite3-dev
- libtiff-dev
- libcurl4-openssl-dev
formats:
- pdf
- epub
conda:
environment: docs/environment.yml
sphinx:
configuration: docs/source/conf.py
fail_on_warning: true
+1 -1
View File
@@ -1,6 +1,6 @@
To cite PROJ in publications use:
PROJ contributors (2020). PROJ coordinate transformation software
PROJ contributors (2021). PROJ coordinate transformation software
library. Open Source Geospatial Foundation. URL https://proj.org/.
A BibTeX entry for LaTeX users is
+2 -2
View File
@@ -110,9 +110,9 @@ message(STATUS "Configuring PROJ:")
#PROJ version information
################################################################################
include(ProjVersion)
proj_version(MAJOR 8 MINOR 0 PATCH 0)
proj_version(MAJOR 8 MINOR 0 PATCH 1)
set(PROJ_API_VERSION "22")
set(PROJ_BUILD_VERSION "22.0.0")
set(PROJ_BUILD_VERSION "22.1.0")
################################################################################
# Build features and variants
+1 -1
View File
@@ -601,7 +601,7 @@
2010-03-16 Frank Warmerdam <warmerdam@pobox.com>
* src/pj_transform.c, src/pj_init.c, src/projects.h, src/pj_gridlist.c,
src/pj_apply_gridshit.c: rework the translation of nadgrids parameters
src/pj_apply_gridshift.c: rework the translation of nadgrids parameters
into a list of gridshift files to avoid use of static "lastnadgrids"
information which screws up multithreading. Changes the PJ structure.
-7
View File
@@ -1033,13 +1033,6 @@ VERBATIM_HEADERS = YES
ALPHABETICAL_INDEX = YES
# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in
# which the alphabetical index list will be split.
# Minimum value: 1, maximum value: 20, default value: 5.
# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
COLS_IN_ALPHA_INDEX = 5
# In case all classes in a project start with a common prefix, all classes will
# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag
# can be used to specify a prefix (or a list of prefixes) that should be ignored
+74 -5
View File
@@ -1,3 +1,72 @@
8.0.1 Release Notes
-------------------
Updates
-------
o Database: update to EPSG v10.018 (#2636)
o Add transformations for CHGeo2004, Swiss geoid model (#2604)
o Additions to the norwegian NKG2020 transformation (#2600)
Bug fixes
---------
o pj_vlog(): fix buffer overflow in case of super lengthy error message (#2693)
o Revert "proj_create_crs_to_crs_from_pj(): do not use PROJ_SPATIAL_CRITERION_PARTIAL_INTERSECTION if area is specified" (#2679)
o UTM: error out when value of +zone= is not an integer (#2672)
o getCRSInfoList(): make result order deterministic (by increasing auth_name,
code) (#2661)
o createOperation(): make sure no to discard deprecated operations if the
replacement uses an unknow grid (#2623)
o Fix build on Solaris 11.4 (#2621)
o Add mapping of ESRI Equal_Area projection method to EPSG (#2612)
o Fix incorrect EPGS extent code for EPSG:7789>EPSG:4976 NKG transformation (#2599)
o fix wrong capitalization of CHENyx06_ETRS.gsb (#2597)
o createOperations(): improve handling of vertical transforms when
when compound CRSs are used (#2592)
o CRS::promoteTo3D(): propagate the extent from the 2D CRS (#2589)
o createFromCRSCodesWithIntermediates(): improve performance when there is
no match (#2583)
o Fix proj_clone() to work on 'meta' coordinate operation PJ* objects that
can be returned by proj_create_crs_to_crs() (#2582)
o add PROJ_COMPUTE_VERSION, PROJ_VERSION_NUMBER,
PROJ_AT_LEAST_VERSION macros (#2581)
o Make proj_lp_dist() and proj_geod() work on a PJ* CRS object (#2570)
o Fix gcc 11 -Wnonnull compilation warnings (#2559)
o Fix use of uninitialized memory in gie tests (#2558)
o createOperations(): fix incorrect height transformation between 3D promoted RGF93 and CH1903+ (#2555)
THANKS TO
---------
Dan Jacobson
Sveinung Himle
Mike Taves
Javier Jimenez Shaw
Kristian Evers
Even Rouault
8.0.0 Release Notes
-------------------
@@ -62,7 +131,7 @@ tweaks in the underlying API.
Bug fixes
---------
o Do not restrict longitude to [-90;90] range in spherical transver Mercator
o Do not restrict longitude to [-90;90] range in spherical transverse Mercator
forward projection (#2471)
o createOperations(): fix Compound to Geog3D/Projected3D CRS with non-metre ellipsoidal height (#2500)
@@ -338,7 +407,7 @@ tweaks in the underlying API.
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 Map the Behrmann projection to cae when converting ESRI CRSes (#1986)
o Support conversion of Flat_Polar_Quartic projection method (#1987)
@@ -1682,13 +1751,13 @@ o The PROJ.4 project also distributes the datum-grid package,
o Return correct latitude when using negative northings in
Transverse Mercator (tmerc). #138.
o Return correct result at origin in inverse Mod. Stererographic
o Return correct result at origin in inverse Modified Stereographic
of Alaska. #161.
o Return correct result at origin in inverse Mod. Stererographic
o Return correct result at origin in inverse Modified Stereographic
of 48 U.S. #162.
o Return correct result at origin in inverse Mod. Stererographic
o Return correct result at origin in inverse Modified Stereographic
of 50 U.S. #163.
o Return correct result at origin in inverse Lee Oblated
+1 -1
View File
@@ -1,7 +1,7 @@
dnl Process this file with autoconf to produce a configure script.
AC_PREREQ(2.59)
AC_INIT([PROJ], [8.0.0],
AC_INIT([PROJ], [8.0.1],
[https://github.com/OSGeo/PROJ/issues], proj, [https://proj.org])
AC_CONFIG_MACRO_DIR([m4])
AC_LANG(C)
+2 -2
View File
@@ -18,6 +18,6 @@
#
<metadata> +origin=Swisstopo +lastupdate=2012-02-27
# CH1903/LV03
<1903_LV03> +proj=somerc +lat_0=46.95240555555556 +lon_0=7.439583333333333 +k_0=1 +x_0=600000 +y_0=200000 +ellps=bessel +units=m +nadgrids=CHENYX06_etrs.gsb +no_defs
<1903_LV03> +proj=somerc +lat_0=46.95240555555556 +lon_0=7.439583333333333 +k_0=1 +x_0=600000 +y_0=200000 +ellps=bessel +units=m +nadgrids=CHENyx06_ETRS.gsb +no_defs
# CH1903
<1903> +proj=longlat +ellps=bessel +nadgrids=CHENYX06_etrs.gsb +no_defs <>
<1903> +proj=longlat +ellps=bessel +nadgrids=CHENyx06_ETRS.gsb +no_defs <>
+2 -1
View File
@@ -39,10 +39,11 @@ SQL_ORDERED_LIST = sql/begin.sql \
sql/deprecation.sql \
sql/esri.sql \
sql/ignf.sql \
sql/nkg.sql \
sql/grid_alternatives.sql \
sql/grid_alternatives_generated_noaa.sql \
sql/customizations.sql \
sql/nkg.sql \
sql/nkg_post_customizations.sql \
sql/commit.sql
EXTRA_DIST = proj.ini GL27 nad.lst nad27 nad83 \
+26 -5
View File
@@ -620,6 +620,10 @@ INSERT INTO "alias_name" VALUES('vertical_datum','EPSG','1303','NVD 1992','EPSG'
INSERT INTO "alias_name" VALUES('vertical_datum','EPSG','1301','CD Norway','EPSG');
INSERT INTO "alias_name" VALUES('vertical_datum','EPSG','1199','Greenland Vertical Reference 2000','EPSG');
INSERT INTO "alias_name" VALUES('geodetic_datum','EPSG','1304','REDGEOMIN','EPSG');
INSERT INTO "alias_name" VALUES('vertical_datum','EPSG','1297','EVRF2007-PL','EPSG');
INSERT INTO "alias_name" VALUES('geodetic_datum','EPSG','1305','ETRF2000-PL','EPSG');
INSERT INTO "alias_name" VALUES('geodetic_datum','EPSG','6277','OSGB36','EPSG');
INSERT INTO "alias_name" VALUES('geodetic_datum','EPSG','6277','OSGB 1936','EPSG');
INSERT INTO "alias_name" VALUES('projected_crs','EPSG','21100','Genuk / NEIEZ','EPSG');
INSERT INTO "alias_name" VALUES('projected_crs','EPSG','2140','NAD83(CSRS98) / SCoPQ zone 3','EPSG');
INSERT INTO "alias_name" VALUES('projected_crs','EPSG','2141','NAD83(CSRS98) / SCoPQ zone 4','EPSG');
@@ -2131,11 +2135,11 @@ INSERT INTO "alias_name" VALUES('projected_crs','EPSG','2172','System 1965 zone
INSERT INTO "alias_name" VALUES('projected_crs','EPSG','2173','System 1965 zone III','EPSG');
INSERT INTO "alias_name" VALUES('projected_crs','EPSG','2174','System 1965 zone IV','EPSG');
INSERT INTO "alias_name" VALUES('projected_crs','EPSG','2175','System 1965 zone V','EPSG');
INSERT INTO "alias_name" VALUES('projected_crs','EPSG','2176','System 2000/15','EPSG');
INSERT INTO "alias_name" VALUES('projected_crs','EPSG','2177','System 2000/18','EPSG');
INSERT INTO "alias_name" VALUES('projected_crs','EPSG','2178','System 2000/21','EPSG');
INSERT INTO "alias_name" VALUES('projected_crs','EPSG','2179','System 2000/24','EPSG');
INSERT INTO "alias_name" VALUES('projected_crs','EPSG','2180','System 1992','EPSG');
INSERT INTO "alias_name" VALUES('projected_crs','EPSG','2176','PL-2000/15','EPSG');
INSERT INTO "alias_name" VALUES('projected_crs','EPSG','2177','PL-2000/18','EPSG');
INSERT INTO "alias_name" VALUES('projected_crs','EPSG','2178','PL-2000/21','EPSG');
INSERT INTO "alias_name" VALUES('projected_crs','EPSG','2179','PL-2000/24','EPSG');
INSERT INTO "alias_name" VALUES('projected_crs','EPSG','2180','PL-1992','EPSG');
INSERT INTO "alias_name" VALUES('projected_crs','EPSG','3120','System 1965 zone I','EPSG');
INSERT INTO "alias_name" VALUES('projected_crs','EPSG','3346','LKS94','EPSG');
INSERT INTO "alias_name" VALUES('projected_crs','EPSG','3346','LT_LKS94 / LT_TM','EPSG');
@@ -7228,6 +7232,18 @@ INSERT INTO "alias_name" VALUES('projected_crs','EPSG','9680','WGS 84 / BUTM 201
INSERT INTO "alias_name" VALUES('compound_crs','EPSG','6893','WGS 84 / World Mercator + EGM2008 height','EPSG');
INSERT INTO "alias_name" VALUES('compound_crs','EPSG','7955','St. Helena Tritan / UTM zone 30S + Tritan 2011 height','EPSG');
INSERT INTO "alias_name" VALUES('compound_crs','EPSG','7956','SHMG2015 + SHVD2015 height','EPSG');
INSERT INTO "alias_name" VALUES('projected_crs','EPSG','2176','ETRS89 / Poland CS2000 zone 5','EPSG');
INSERT INTO "alias_name" VALUES('projected_crs','EPSG','2177','ETRS89 / Poland CS2000 zone 6','EPSG');
INSERT INTO "alias_name" VALUES('projected_crs','EPSG','2178','ETRS89 / Poland CS2000 zone 7','EPSG');
INSERT INTO "alias_name" VALUES('projected_crs','EPSG','2179','ETRS89 / Poland CS2000 zone 8','EPSG');
INSERT INTO "alias_name" VALUES('projected_crs','EPSG','2180','ETRS89 / Poland CS92','EPSG');
INSERT INTO "alias_name" VALUES('vertical_crs','EPSG','9650','PL_KRON / NH','EPSG');
INSERT INTO "alias_name" VALUES('vertical_crs','EPSG','9650','Kronzstad 86','EPSG');
INSERT INTO "alias_name" VALUES('vertical_crs','EPSG','9650','Kronstadt 1986 height','EPSG');
INSERT INTO "alias_name" VALUES('vertical_crs','EPSG','9651','PL_AMST / NH','EPSG');
INSERT INTO "alias_name" VALUES('vertical_crs','EPSG','9651','PL-EVRF2007-NH','EPSG');
INSERT INTO "alias_name" VALUES('geodetic_crs','EPSG','9700','PL-ETRF2000','EPSG');
INSERT INTO "alias_name" VALUES('geodetic_crs','EPSG','9701','PL-ETRF2000','EPSG');
INSERT INTO "alias_name" VALUES('geodetic_crs','EPSG','8401','748','EPSG');
INSERT INTO "alias_name" VALUES('geodetic_crs','EPSG','8401','ETRF2014 - XYZ','EPSG');
INSERT INTO "alias_name" VALUES('geodetic_crs','EPSG','8403','747','EPSG');
@@ -7235,3 +7251,8 @@ INSERT INTO "alias_name" VALUES('geodetic_crs','EPSG','8403','ETRF2014 - LatLonE
INSERT INTO "alias_name" VALUES('geodetic_crs','EPSG','9069','746','EPSG');
INSERT INTO "alias_name" VALUES('geodetic_crs','EPSG','9069','ETRF2014- LatLon','EPSG');
INSERT INTO "alias_name" VALUES('vertical_crs','EPSG','9672','CD Norway','EPSG');
INSERT INTO "alias_name" VALUES('compound_crs','EPSG','9656','PL-ETRF2000 + Kronzstad 86','EPSG');
INSERT INTO "alias_name" VALUES('compound_crs','EPSG','9657','PL-ETRF2000 + Kronzstad 86','EPSG');
INSERT INTO "alias_name" VALUES('geodetic_crs','EPSG','4277','OSGB 1936','EPSG');
INSERT INTO "alias_name" VALUES('projected_crs','EPSG','27700','OSGB 1936 / British National Grid','EPSG');
INSERT INTO "alias_name" VALUES('geodetic_crs','EPSG','9702','PL-ETRF2000','EPSG');
+8 -8
View File
@@ -172,10 +172,6 @@ INSERT INTO "axis" VALUES('EPSG','63','Geodetic latitude','Lat','north','EPSG','
INSERT INTO "axis" VALUES('EPSG','64','Geodetic longitude','Long','east','EPSG','6405',2,'EPSG','9102');
INSERT INTO "axis" VALUES('EPSG','65','Geodetic latitude','Lat','north','EPSG','6406',1,'EPSG','9116');
INSERT INTO "axis" VALUES('EPSG','66','Geodetic longitude','Long','east','EPSG','6406',2,'EPSG','9116');
INSERT INTO "axis" VALUES('EPSG','69','Geodetic latitude','Lat','north','EPSG','6408',1,'EPSG','9115');
INSERT INTO "axis" VALUES('EPSG','70','Geodetic longitude','Long','east','EPSG','6408',2,'EPSG','9115');
INSERT INTO "axis" VALUES('EPSG','71','Geodetic latitude','Lat','north','EPSG','6409',1,'EPSG','9118');
INSERT INTO "axis" VALUES('EPSG','72','Geodetic longitude','Long','east','EPSG','6409',2,'EPSG','9118');
INSERT INTO "axis" VALUES('EPSG','106','Geodetic latitude','Lat','north','EPSG','6422',1,'EPSG','9122');
INSERT INTO "axis" VALUES('EPSG','107','Geodetic longitude','Lon','east','EPSG','6422',2,'EPSG','9122');
INSERT INTO "axis" VALUES('EPSG','115','Geocentric X','X','geocentricX','EPSG','6500',1,'EPSG','9001');
@@ -204,10 +200,10 @@ INSERT INTO "axis" VALUES('EPSG','174','Plant North','y','northwest','EPSG','651
INSERT INTO "axis" VALUES('EPSG','211','Plant East','x','east','EPSG','6512',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','212','Plant North','y','north','EPSG','6512',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','213','Local height','z','up','EPSG','6512',3,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','32763','Bin grid I','I','J-axis plus 90 degrees','EPSG','32760',1,NULL,NULL);
INSERT INTO "axis" VALUES('EPSG','32764','Bin grid J','J','See associated operation','EPSG','32760',2,NULL,NULL);
INSERT INTO "axis" VALUES('EPSG','32765','Bin grid I','I','J-axis minus 90 degrees','EPSG','32761',1,NULL,NULL);
INSERT INTO "axis" VALUES('EPSG','32766','Bin grid J','J','See associated operation','EPSG','32761',2,NULL,NULL);
INSERT INTO "axis" VALUES('EPSG','32845','Bin grid I','I','J-axis plus 90 degrees','EPSG','32760',1,NULL,NULL);
INSERT INTO "axis" VALUES('EPSG','32846','Bin grid J','J','See associated operation','EPSG','32760',2,NULL,NULL);
INSERT INTO "axis" VALUES('EPSG','32847','Bin grid I','I','J-axis minus 90 degrees','EPSG','32761',1,NULL,NULL);
INSERT INTO "axis" VALUES('EPSG','32848','Bin grid J','J','See associated operation','EPSG','32761',2,NULL,NULL);
INSERT INTO "axis" VALUES('EPSG','1082','Gravity-related height','H','up','EPSG','1030',1,'EPSG','9002');
INSERT INTO "axis" VALUES('EPSG','1516','Depth','D','down','EPSG','1043',1,'EPSG','9003');
INSERT INTO "axis" VALUES('EPSG','1051','Local depth','d','down','EPSG','1049',1,'EPSG','9001');
@@ -224,6 +220,10 @@ INSERT INTO "axis" VALUES('EPSG','61','Spherical longitude','Long','east','EPSG'
INSERT INTO "axis" VALUES('EPSG','62','Geocentric radius','R','up','EPSG','6404',3,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','67','Geodetic latitude','Lat','north','EPSG','6407',1,'EPSG','9117');
INSERT INTO "axis" VALUES('EPSG','68','Geodetic longitude','Long','east','EPSG','6407',2,'EPSG','9117');
INSERT INTO "axis" VALUES('EPSG','69','Geodetic latitude','Lat','north','EPSG','6408',1,'EPSG','9115');
INSERT INTO "axis" VALUES('EPSG','70','Geodetic longitude','Long','east','EPSG','6408',2,'EPSG','9115');
INSERT INTO "axis" VALUES('EPSG','71','Geodetic latitude','Lat','north','EPSG','6409',1,'EPSG','9118');
INSERT INTO "axis" VALUES('EPSG','72','Geodetic longitude','Long','east','EPSG','6409',2,'EPSG','9118');
INSERT INTO "axis" VALUES('EPSG','73','Geodetic latitude','Lat','north','EPSG','6410',1,'EPSG','9119');
INSERT INTO "axis" VALUES('EPSG','74','Geodetic longitude','Long','east','EPSG','6410',2,'EPSG','9119');
INSERT INTO "axis" VALUES('EPSG','75','Geodetic latitude','Lat','north','EPSG','6411',1,'EPSG','9107');
+17 -5
View File
@@ -118,21 +118,32 @@ FOR EACH ROW BEGIN
g.method_name LIKE 'Geographic3D to GravityRelatedHeight%' AND
g.target_crs_auth_name || g.target_crs_code NOT IN
(SELECT auth_name || code FROM vertical_crs));
SELECT RAISE(ABORT, 'One grid_transformation with Geographic3D to GravityRelatedHeight has not its source_crs in geodetic_crs table with type = ''geographic 3D''')
SELECT RAISE(ABORT, 'One grid_transformation with Geographic3D to GravityRelatedHeight or Geog3D to Geog2D+XXX has not its source_crs in geodetic_crs table with type = ''geographic 3D''')
WHERE EXISTS (SELECT * FROM grid_transformation g WHERE
g.deprecated = 0 AND
g.method_name LIKE 'Geographic3D to GravityRelatedHeight%' AND
NOT (g.auth_name = 'EPSG' AND g.code IN (7648, 7649, 7650)) AND -- those are wrongly registered as they use a geocentric CRS. Reported to EPSG
(g.method_name LIKE 'Geographic3D to %' OR g.method_name LIKE 'Geog3D to %') AND
g.source_crs_auth_name || g.source_crs_code NOT IN
(SELECT auth_name || code FROM geodetic_crs
WHERE type = 'geographic 3D'));
-- check that grids with 'Vertical Offset by Grid Interpolation' methods are properly registered
SELECT RAISE(ABORT, 'One grid_transformation with Vertical Offset by Grid Interpolation has not its source_crs in vertical_crs table')
WHERE EXISTS (SELECT * FROM grid_transformation g WHERE
g.method_name LIKE 'Vertical Offset by Grid Interpolation%' AND
g.source_crs_auth_name || g.source_crs_code NOT IN
(SELECT auth_name || code FROM vertical_crs));
SELECT RAISE(ABORT, 'One grid_transformation with Vertical Offset by Grid Interpolation has not its target_crs in vertical_crs table')
WHERE EXISTS (SELECT * FROM grid_transformation g WHERE
g.method_name LIKE 'Vertical Offset by Grid Interpolation%' AND
g.target_crs_auth_name || g.target_crs_code NOT IN
(SELECT auth_name || code FROM vertical_crs));
-- check that transformations intersect the area of use of their source/target CRS
-- EPSG, ESRI and IGNF have cases where this does not hold.
SELECT RAISE(ABORT, 'The area of use of at least one coordinate_operation does not intersect the one of its source CRS')
WHERE EXISTS (SELECT * FROM coordinate_operation_view v, crs_view c, usage vu, extent ve, usage cu, extent ce WHERE
v.deprecated = 0 AND
v.auth_name NOT IN ('EPSG', 'ESRI', 'IGNF') AND
(v.table_name = 'grid_transformation' OR v.auth_name NOT IN ('EPSG', 'ESRI', 'IGNF')) AND
v.source_crs_auth_name = c.auth_name AND
v.source_crs_code = c.code AND
vu.object_table_name = v.table_name AND
@@ -149,7 +160,8 @@ FOR EACH ROW BEGIN
SELECT RAISE(ABORT, 'The area of use of at least one coordinate_operation does not intersect the one of its target CRS')
WHERE EXISTS (SELECT * FROM coordinate_operation_view v, crs_view c, usage vu, extent ve, usage cu, extent ce WHERE
v.deprecated = 0 AND
v.auth_name NOT IN ('EPSG', 'ESRI', 'IGNF') AND
((v.table_name = 'grid_transformation' AND NOT (v.auth_name = 'IGNF' AND v.code = 'TSG1185'))
OR v.auth_name NOT IN ('EPSG', 'ESRI', 'IGNF')) AND
v.target_crs_auth_name = c.auth_name AND
v.target_crs_code = c.code AND
vu.object_table_name = v.table_name AND
+5 -1
View File
@@ -268,7 +268,7 @@ INSERT INTO "compound_crs" VALUES('EPSG','7403','NTF (Paris) / France III + NGF
INSERT INTO "usage" VALUES('EPSG','5268','compound_crs','EPSG','7403','EPSG','1733','EPSG','1142');
INSERT INTO "compound_crs" VALUES('EPSG','7404','RT90 + RH70 height',NULL,'EPSG','4124','EPSG','5718',0);
INSERT INTO "usage" VALUES('EPSG','5269','compound_crs','EPSG','7404','EPSG','3313','EPSG','1142');
INSERT INTO "compound_crs" VALUES('EPSG','7405','OSGB 1936 / British National Grid + ODN height',NULL,'EPSG','27700','EPSG','5701',0);
INSERT INTO "compound_crs" VALUES('EPSG','7405','OSGB36 / British National Grid + ODN height',NULL,'EPSG','27700','EPSG','5701',0);
INSERT INTO "usage" VALUES('EPSG','5270','compound_crs','EPSG','7405','EPSG','2792','EPSG','1142');
INSERT INTO "compound_crs" VALUES('EPSG','7406','NAD27 + NGVD29 height (ftUS)',NULL,'EPSG','4267','EPSG','5702',0);
INSERT INTO "usage" VALUES('EPSG','5271','compound_crs','EPSG','7406','EPSG','1323','EPSG','1142');
@@ -690,6 +690,10 @@ INSERT INTO "compound_crs" VALUES('EPSG','9543','ITRF2005 + SA LLD height',NULL,
INSERT INTO "usage" VALUES('EPSG','14522','compound_crs','EPSG','9543','EPSG','3309','EPSG','1026');
INSERT INTO "compound_crs" VALUES('EPSG','9544','NAD83(CSRS)v6 + CGVD2013(CGG2013a) height',NULL,'EPSG','8252','EPSG','9245',0);
INSERT INTO "usage" VALUES('EPSG','14525','compound_crs','EPSG','9544','EPSG','1061','EPSG','1026');
INSERT INTO "compound_crs" VALUES('EPSG','9656','ETRF2000-PL + Baltic 1986 height',NULL,'EPSG','9702','EPSG','9650',0);
INSERT INTO "usage" VALUES('EPSG','15108','compound_crs','EPSG','9656','EPSG','3293','EPSG','1270');
INSERT INTO "compound_crs" VALUES('EPSG','9657','ETRF2000-PL + EVRF2007-PL height',NULL,'EPSG','9702','EPSG','9651',0);
INSERT INTO "usage" VALUES('EPSG','15109','compound_crs','EPSG','9657','EPSG','3293','EPSG','1270');
INSERT INTO "compound_crs" VALUES('EPSG','9705','WGS 84 + MSL height',NULL,'EPSG','4326','EPSG','5714',0);
INSERT INTO "usage" VALUES('EPSG','15089','compound_crs','EPSG','9705','EPSG','1262','EPSG','1026');
INSERT INTO "compound_crs" VALUES('EPSG','9707','WGS 84 + EGM96 height',NULL,'EPSG','4326','EPSG','5773',0);
+5 -3
View File
@@ -268,7 +268,6 @@ INSERT INTO "alias_name" VALUES('geodetic_datum','EPSG','6223','carthage','PROJ'
INSERT INTO "alias_name" VALUES('geodetic_datum','EPSG','6312','hermannskogel','PROJ');
INSERT INTO "alias_name" VALUES('geodetic_datum','EPSG','6299','ire65','PROJ');
INSERT INTO "alias_name" VALUES('geodetic_datum','EPSG','6272','nzgd49','PROJ');
INSERT INTO "alias_name" VALUES('geodetic_datum','EPSG','6277','OSGB36','PROJ');
-- Given that we have installed above a WGS84 alias to the datum, add also one
-- to the EPSG:4326 CRS, as this is a common use case (https://github.com/OSGeo/PROJ/issues/2216)
@@ -341,7 +340,9 @@ FROM grid_transformation gt
JOIN compound_crs c ON gt.target_crs_code = c.code AND gt.target_crs_auth_name = c.auth_name
JOIN geodetic_crs gcrs ON gt.source_crs_auth_name = gcrs.auth_name AND gt.source_crs_code = gcrs.code
JOIN vertical_crs vcrs on vcrs.auth_name = c.vertical_crs_auth_name AND vcrs.code = c.vertical_crs_code
WHERE method_auth_name = 'EPSG' AND method_code IN ('1088', '1089', '1090', '1091', '1092', '1093', '1094', '1095', '1096', '1097', '1098', '1103') AND gt.deprecated = 0;
WHERE method_auth_name = 'EPSG' AND method_name LIKE 'Geog3D to Geog2D+%'
AND NOT EXISTS (SELECT 1 FROM grid_transformation gt2 WHERE gt2.method_name LIKE 'Geographic3D to%' AND gt2.source_crs_auth_name = gt.source_crs_auth_name AND gt2.source_crs_code = gt.source_crs_code AND gt2.target_crs_auth_name = vcrs.auth_name AND gt2.target_crs_code = vcrs.code)
AND gt.deprecated = 0;
INSERT INTO "usage"
SELECT
@@ -356,4 +357,5 @@ SELECT
u.scope_code
FROM grid_transformation gt
JOIN usage u ON u.object_auth_name = gt.auth_name AND u.object_code = gt.code AND u.object_table_name = 'grid_transformation'
WHERE method_auth_name = 'EPSG' AND method_code IN ('1088', '1089', '1090', '1091', '1092', '1093', '1094', '1095', '1096', '1097', '1098', '1103') AND gt.deprecated = 0;
WHERE method_auth_name = 'EPSG' AND method_name LIKE 'Geog3D to Geog2D+%'
AND EXISTS (SELECT 1 FROM grid_transformation gt2 WHERE gt2.auth_name = 'PROJ' AND gt2.code = gt.auth_name || '_' || gt.code || '_RESTRICTED_TO_VERTCRS');
+18 -6
View File
@@ -8131,11 +8131,17 @@ INSERT INTO "projected_crs" VALUES('ESRI','53032','Sphere_Azimuthal_Equidistant'
INSERT INTO "usage" VALUES('ESRI', 'PCRS_53032_USAGE','projected_crs','ESRI','53032','EPSG','1262','EPSG','1024');
INSERT INTO "projected_crs" VALUES('ESRI','53034','Sphere_Cylindrical_Equal_Area',NULL,NULL,NULL,'EPSG','4035',NULL,NULL,'PROJCS["Sphere_Cylindrical_Equal_Area",GEOGCS["GCS_Sphere",DATUM["D_Sphere",SPHEROID["Sphere",6371000.0,0.0]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Cylindrical_Equal_Area"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",0.0],PARAMETER["Standard_Parallel_1",0.0],UNIT["Meter",1.0]]',0);
INSERT INTO "usage" VALUES('ESRI', 'PCRS_53034_USAGE','projected_crs','ESRI','53034','EPSG','1262','EPSG','1024');
INSERT INTO "projected_crs" VALUES('ESRI','53035','Sphere_Equal_Earth_Greenwich',NULL,NULL,NULL,'ESRI','104047',NULL,NULL,'PROJCS["Sphere_Equal_Earth_Greenwich",GEOGCS["GCS_Sphere_GRS_1980_Mean_Radius",DATUM["D_Sphere_GRS_1980_Mean_Radius",SPHEROID["Sphere_GRS_1980_Mean_Radius",6371008.7714,0.0]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Equal_Earth"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",0.0],UNIT["Meter",1.0]]',0);
INSERT INTO "conversion" VALUES('ESRI','53035','unnamed',NULL,'EPSG','1078','Equal Earth','EPSG','8802','Longitude of natural origin',0.0,'EPSG','9102','EPSG','8806','False easting',0.0,'EPSG','9001','EPSG','8807','False northing',0.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "usage" VALUES('ESRI', 'CONV_53035_USAGE','conversion','ESRI','53035','EPSG','1262','EPSG','1024');
INSERT INTO "projected_crs" VALUES('ESRI','53035','Sphere_Equal_Earth_Greenwich',NULL,'EPSG','4400','ESRI','104047','ESRI','53035',NULL,0);
INSERT INTO "usage" VALUES('ESRI', 'PCRS_53035_USAGE','projected_crs','ESRI','53035','EPSG','1262','EPSG','1024');
INSERT INTO "projected_crs" VALUES('ESRI','53036','Sphere_Equal_Earth_Americas',NULL,NULL,NULL,'ESRI','104047',NULL,NULL,'PROJCS["Sphere_Equal_Earth_Americas",GEOGCS["GCS_Sphere_GRS_1980_Mean_Radius",DATUM["D_Sphere_GRS_1980_Mean_Radius",SPHEROID["Sphere_GRS_1980_Mean_Radius",6371008.7714,0.0]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Equal_Earth"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-90.0],UNIT["Meter",1.0]]',0);
INSERT INTO "conversion" VALUES('ESRI','53036','unnamed',NULL,'EPSG','1078','Equal Earth','EPSG','8802','Longitude of natural origin',-90.0,'EPSG','9102','EPSG','8806','False easting',0.0,'EPSG','9001','EPSG','8807','False northing',0.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "usage" VALUES('ESRI', 'CONV_53036_USAGE','conversion','ESRI','53036','EPSG','1262','EPSG','1024');
INSERT INTO "projected_crs" VALUES('ESRI','53036','Sphere_Equal_Earth_Americas',NULL,'EPSG','4400','ESRI','104047','ESRI','53036',NULL,0);
INSERT INTO "usage" VALUES('ESRI', 'PCRS_53036_USAGE','projected_crs','ESRI','53036','EPSG','1262','EPSG','1024');
INSERT INTO "projected_crs" VALUES('ESRI','53037','Sphere_Equal_Earth_Asia_Pacific',NULL,NULL,NULL,'ESRI','104047',NULL,NULL,'PROJCS["Sphere_Equal_Earth_Asia_Pacific",GEOGCS["GCS_Sphere_GRS_1980_Mean_Radius",DATUM["D_Sphere_GRS_1980_Mean_Radius",SPHEROID["Sphere_GRS_1980_Mean_Radius",6371008.7714,0.0]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Equal_Earth"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",150.0],UNIT["Meter",1.0]]',0);
INSERT INTO "conversion" VALUES('ESRI','53037','unnamed',NULL,'EPSG','1078','Equal Earth','EPSG','8802','Longitude of natural origin',150.0,'EPSG','9102','EPSG','8806','False easting',0.0,'EPSG','9001','EPSG','8807','False northing',0.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "usage" VALUES('ESRI', 'CONV_53037_USAGE','conversion','ESRI','53037','EPSG','1262','EPSG','1024');
INSERT INTO "projected_crs" VALUES('ESRI','53037','Sphere_Equal_Earth_Asia_Pacific',NULL,'EPSG','4400','ESRI','104047','ESRI','53037',NULL,0);
INSERT INTO "usage" VALUES('ESRI', 'PCRS_53037_USAGE','projected_crs','ESRI','53037','EPSG','1262','EPSG','1024');
INSERT INTO "projected_crs" VALUES('ESRI','53042','Sphere_Winkel_Tripel_NGS',NULL,NULL,NULL,'EPSG','4035',NULL,NULL,'PROJCS["Sphere_Winkel_Tripel_NGS",GEOGCS["GCS_Sphere",DATUM["D_Sphere",SPHEROID["Sphere",6371000.0,0.0]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Winkel_Tripel"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",0.0],PARAMETER["Standard_Parallel_1",50.467],UNIT["Meter",1.0]]',0);
INSERT INTO "usage" VALUES('ESRI', 'PCRS_53042_USAGE','projected_crs','ESRI','53042','EPSG','1262','EPSG','1024');
@@ -8223,11 +8229,17 @@ INSERT INTO "projected_crs" VALUES('ESRI','54032','World_Azimuthal_Equidistant',
INSERT INTO "usage" VALUES('ESRI', 'PCRS_54032_USAGE','projected_crs','ESRI','54032','EPSG','1262','EPSG','1024');
INSERT INTO "projected_crs" VALUES('ESRI','54034','World_Cylindrical_Equal_Area',NULL,NULL,NULL,'EPSG','4326',NULL,NULL,'PROJCS["World_Cylindrical_Equal_Area",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Cylindrical_Equal_Area"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",0.0],PARAMETER["Standard_Parallel_1",0.0],UNIT["Meter",1.0]]',0);
INSERT INTO "usage" VALUES('ESRI', 'PCRS_54034_USAGE','projected_crs','ESRI','54034','EPSG','1262','EPSG','1024');
INSERT INTO "projected_crs" VALUES('ESRI','54035','WGS_1984_Equal_Earth_Greenwich',NULL,NULL,NULL,'EPSG','4326',NULL,NULL,'PROJCS["WGS_1984_Equal_Earth_Greenwich",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Equal_Earth"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",0.0],UNIT["Meter",1.0]]',1);
INSERT INTO "conversion" VALUES('ESRI','54035','unnamed',NULL,'EPSG','1078','Equal Earth','EPSG','8802','Longitude of natural origin',0.0,'EPSG','9102','EPSG','8806','False easting',0.0,'EPSG','9001','EPSG','8807','False northing',0.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "usage" VALUES('ESRI', 'CONV_54035_USAGE','conversion','ESRI','54035','EPSG','1262','EPSG','1024');
INSERT INTO "projected_crs" VALUES('ESRI','54035','WGS_1984_Equal_Earth_Greenwich',NULL,'EPSG','4400','EPSG','4326','ESRI','54035',NULL,1);
INSERT INTO "usage" VALUES('ESRI', 'PCRS_54035_USAGE','projected_crs','ESRI','54035','EPSG','1262','EPSG','1024');
INSERT INTO "projected_crs" VALUES('ESRI','54036','WGS_1984_Equal_Earth_Americas',NULL,NULL,NULL,'EPSG','4326',NULL,NULL,'PROJCS["WGS_1984_Equal_Earth_Americas",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Equal_Earth"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-90.0],UNIT["Meter",1.0]]',1);
INSERT INTO "conversion" VALUES('ESRI','54036','unnamed',NULL,'EPSG','1078','Equal Earth','EPSG','8802','Longitude of natural origin',-90.0,'EPSG','9102','EPSG','8806','False easting',0.0,'EPSG','9001','EPSG','8807','False northing',0.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "usage" VALUES('ESRI', 'CONV_54036_USAGE','conversion','ESRI','54036','EPSG','1262','EPSG','1024');
INSERT INTO "projected_crs" VALUES('ESRI','54036','WGS_1984_Equal_Earth_Americas',NULL,'EPSG','4400','EPSG','4326','ESRI','54036',NULL,1);
INSERT INTO "usage" VALUES('ESRI', 'PCRS_54036_USAGE','projected_crs','ESRI','54036','EPSG','1262','EPSG','1024');
INSERT INTO "projected_crs" VALUES('ESRI','54037','WGS_1984_Equal_Earth_Asia_Pacific',NULL,NULL,NULL,'EPSG','4326',NULL,NULL,'PROJCS["WGS_1984_Equal_Earth_Asia_Pacific",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Equal_Earth"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",150.0],UNIT["Meter",1.0]]',1);
INSERT INTO "conversion" VALUES('ESRI','54037','unnamed',NULL,'EPSG','1078','Equal Earth','EPSG','8802','Longitude of natural origin',150.0,'EPSG','9102','EPSG','8806','False easting',0.0,'EPSG','9001','EPSG','8807','False northing',0.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "usage" VALUES('ESRI', 'CONV_54037_USAGE','conversion','ESRI','54037','EPSG','1262','EPSG','1024');
INSERT INTO "projected_crs" VALUES('ESRI','54037','WGS_1984_Equal_Earth_Asia_Pacific',NULL,'EPSG','4400','EPSG','4326','ESRI','54037',NULL,1);
INSERT INTO "usage" VALUES('ESRI', 'PCRS_54037_USAGE','projected_crs','ESRI','54037','EPSG','1262','EPSG','1024');
INSERT INTO "projected_crs" VALUES('ESRI','54042','World_Winkel_Tripel_NGS',NULL,NULL,NULL,'EPSG','4326',NULL,NULL,'PROJCS["World_Winkel_Tripel_NGS",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Winkel_Tripel"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",0.0],PARAMETER["Standard_Parallel_1",50.467],UNIT["Meter",1.0]]',0);
INSERT INTO "usage" VALUES('ESRI', 'PCRS_54042_USAGE','projected_crs','ESRI','54042','EPSG','1262','EPSG','1024');
+2 -1
View File
@@ -240,7 +240,7 @@ INSERT INTO "extent" VALUES('EPSG','1260','Zambia','Zambia.',-18.08,-8.19,21.99,
INSERT INTO "extent" VALUES('EPSG','1261','Zimbabwe','Zimbabwe.',-22.42,-15.61,25.23,33.08,0);
INSERT INTO "extent" VALUES('EPSG','1262','World','World.',-90.0,90.0,-180.0,180.0,0);
INSERT INTO "extent" VALUES('EPSG','1263','Not specified','Not specified.',-90.0,90.0,-180.0,180.0,0);
INSERT INTO "extent" VALUES('EPSG','1264','UK - Great Britain; Isle of Man','United Kingdom (UK) - Great Britain - England and Wales onshore, Scotland onshore and Western Isles nearshore; Isle of Man onshore.',49.79,60.94,-8.82,1.92,0);
INSERT INTO "extent" VALUES('EPSG','1264','UK - Great Britain onshore and nearshore; Isle of Man','United Kingdom (UK) - Great Britain - England and Wales onshore, Scotland onshore and Western Isles nearshore including Sea of the Hebrides and The Minch; Isle of Man onshore.',49.797,60.935,-8.818,1.92,0);
INSERT INTO "extent" VALUES('EPSG','1265','Argentina - Comodoro Rivadavia','Argentina - Comodoro Rivadavia area.',-46.7,-45.19,-69.5,-67.1,0);
INSERT INTO "extent" VALUES('EPSG','1266','Venezuela - Puerto La Cruz','Venezuela - Puerto La Cruz area.',10.0,10.31,-64.7,-64.5,0);
INSERT INTO "extent" VALUES('EPSG','1267','Venezuela - Barinas','Venezuela - Barinas area.',7.31,9.07,-71.49,-67.58,0);
@@ -3591,3 +3591,4 @@ INSERT INTO "extent" VALUES('EPSG','4612','Canada - Newfoundland','Canada - Newf
INSERT INTO "extent" VALUES('EPSG','4613','Europe - Lyon-Turin','France and Italy - on or related to the rail route from Lyon to Turin.',44.87236950014,45.88320957683,4.6505192204449,7.8772423467624,0);
INSERT INTO "extent" VALUES('EPSG','4614','Argentina - Comodoro Rivadavia - west of 67.5°W','Argentina - Comodoro Rivadavia area west of 67°30''W.',-46.699998855591,-45.199998855591,-69.5,-67.5,0);
INSERT INTO "extent" VALUES('EPSG','4615','Norway, Svalbard and Jan Mayen - offshore','Norway (offshore) and Svalbard and Jan Mayen (offshore).',56.087,84.723,-13.63,38.0,0);
INSERT INTO "extent" VALUES('EPSG','4616','UK - Great Britain onshore; Isle of Man','United Kingdom (UK) - Great Britain - England, Scotland and Wales onshore; Isle of Man onshore.',49.815037348282,60.926651214189,-8.6861861839429,1.9002468741098,0);
+7 -1
View File
@@ -434,7 +434,7 @@ INSERT INTO "geodetic_crs" VALUES('EPSG','4275','NTF',NULL,'geographic 2D','EPSG
INSERT INTO "usage" VALUES('EPSG','3157','geodetic_crs','EPSG','4275','EPSG','3694','EPSG','1027');
INSERT INTO "geodetic_crs" VALUES('EPSG','4276','NSWC 9Z-2',NULL,'geographic 2D','EPSG','6422','EPSG','6276',NULL,0);
INSERT INTO "usage" VALUES('EPSG','3158','geodetic_crs','EPSG','4276','EPSG','1262','EPSG','1027');
INSERT INTO "geodetic_crs" VALUES('EPSG','4277','OSGB 1936',NULL,'geographic 2D','EPSG','6422','EPSG','6277',NULL,0);
INSERT INTO "geodetic_crs" VALUES('EPSG','4277','OSGB36',NULL,'geographic 2D','EPSG','6422','EPSG','6277',NULL,0);
INSERT INTO "usage" VALUES('EPSG','3159','geodetic_crs','EPSG','4277','EPSG','4390','EPSG','1027');
INSERT INTO "geodetic_crs" VALUES('EPSG','4278','OSGB70',NULL,'geographic 2D','EPSG','6422','EPSG','6278',NULL,0);
INSERT INTO "usage" VALUES('EPSG','3160','geodetic_crs','EPSG','4278','EPSG','1264','EPSG','1027');
@@ -2120,3 +2120,9 @@ INSERT INTO "geodetic_crs" VALUES('EPSG','9695','REDGEOMIN',NULL,'geographic 3D'
INSERT INTO "usage" VALUES('EPSG','14947','geodetic_crs','EPSG','9695','EPSG','1066','EPSG','1181');
INSERT INTO "geodetic_crs" VALUES('EPSG','9696','REDGEOMIN',NULL,'geographic 2D','EPSG','6422','EPSG','1304',NULL,0);
INSERT INTO "usage" VALUES('EPSG','14949','geodetic_crs','EPSG','9696','EPSG','1066','EPSG','1183');
INSERT INTO "geodetic_crs" VALUES('EPSG','9700','ETRF2000-PL',NULL,'geocentric','EPSG','6500','EPSG','1305',NULL,0);
INSERT INTO "usage" VALUES('EPSG','15062','geodetic_crs','EPSG','9700','EPSG','1192','EPSG','1027');
INSERT INTO "geodetic_crs" VALUES('EPSG','9701','ETRF2000-PL',NULL,'geographic 3D','EPSG','6423','EPSG','1305',NULL,0);
INSERT INTO "usage" VALUES('EPSG','15063','geodetic_crs','EPSG','9701','EPSG','1192','EPSG','1027');
INSERT INTO "geodetic_crs" VALUES('EPSG','9702','ETRF2000-PL',NULL,'geographic 2D','EPSG','6422','EPSG','1305',NULL,0);
INSERT INTO "usage" VALUES('EPSG','15131','geodetic_crs','EPSG','9702','EPSG','1192','EPSG','1183');
+3 -1
View File
@@ -328,6 +328,8 @@ INSERT INTO "geodetic_datum" VALUES('EPSG','1295','Lyon Turin Ferroviaire 2004',
INSERT INTO "usage" VALUES('EPSG','14538','geodetic_datum','EPSG','1295','EPSG','4613','EPSG','1271');
INSERT INTO "geodetic_datum" VALUES('EPSG','1304','Red Geodesica Para Mineria en Chile',NULL,'EPSG','7019','EPSG','8901','2019-01-01',2019.0,NULL,0);
INSERT INTO "usage" VALUES('EPSG','15025','geodetic_datum','EPSG','1304','EPSG','1066','EPSG','1181');
INSERT INTO "geodetic_datum" VALUES('EPSG','1305','ETRF2000 Poland',NULL,'EPSG','7019','EPSG','8901','2012-11-15',NULL,NULL,0);
INSERT INTO "usage" VALUES('EPSG','15061','geodetic_datum','EPSG','1305','EPSG','1192','EPSG','1180');
INSERT INTO "geodetic_datum" VALUES('EPSG','6001','Not specified (based on Airy 1830 ellipsoid)',NULL,'EPSG','7001','EPSG','8901',NULL,NULL,NULL,0);
INSERT INTO "usage" VALUES('EPSG','13422','geodetic_datum','EPSG','6001','EPSG','1263','EPSG','1213');
INSERT INTO "geodetic_datum" VALUES('EPSG','6002','Not specified (based on Airy Modified 1849 ellipsoid)',NULL,'EPSG','7002','EPSG','8901',NULL,NULL,NULL,0);
@@ -718,7 +720,7 @@ INSERT INTO "geodetic_datum" VALUES('EPSG','6275','Nouvelle Triangulation Franca
INSERT INTO "usage" VALUES('EPSG','13616','geodetic_datum','EPSG','6275','EPSG','3694','EPSG','1153');
INSERT INTO "geodetic_datum" VALUES('EPSG','6276','NSWC 9Z-2',NULL,'EPSG','7025','EPSG','8901','1976-01-01',NULL,NULL,0);
INSERT INTO "usage" VALUES('EPSG','13617','geodetic_datum','EPSG','6276','EPSG','1262','EPSG','1245');
INSERT INTO "geodetic_datum" VALUES('EPSG','6277','OSGB 1936',NULL,'EPSG','7001','EPSG','8901','1936-01-01',NULL,NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6277','Ordnance Survey of Great Britain 1936',NULL,'EPSG','7001','EPSG','8901','1936',NULL,NULL,0);
INSERT INTO "usage" VALUES('EPSG','13618','geodetic_datum','EPSG','6277','EPSG','4390','EPSG','1153');
INSERT INTO "geodetic_datum" VALUES('EPSG','6278','OSGB 1970 (SN)',NULL,'EPSG','7001','EPSG','8901','1970-01-01',NULL,NULL,0);
INSERT INTO "usage" VALUES('EPSG','13619','geodetic_datum','EPSG','6278','EPSG','1264','EPSG','1027');
+8
View File
@@ -85,6 +85,8 @@ VALUES
-- ch_swisstopo - Swisstopo Federal Office of Topography
('CHENyx06a.gsb','ch_swisstopo_CHENyx06a.tif','CHENyx06a.gsb','GTiff','hgridshift',0,NULL,'https://cdn.proj.org/ch_swisstopo_CHENyx06a.tif',1,1,NULL),
('CHENyx06_ETRS.gsb','ch_swisstopo_CHENyx06_ETRS.tif','CHENyx06_ETRS.gsb','GTiff','hgridshift',0,NULL,'https://cdn.proj.org/ch_swisstopo_CHENyx06_ETRS.tif',1,1,NULL),
('chgeo2004_ETRS.agr','ch_swisstopo_chgeo2004_ETRS89_LHN95.tif',NULL,'GTiff','geoid_like',0,NULL,'https://cdn.proj.org/ch_swisstopo_chgeo2004_ETRS89_LHN95.tif',1,1,NULL),
('chgeo2004_htrans_ETRS.agr','ch_swisstopo_chgeo2004_ETRS89_LN02.tif',NULL,'GTiff','geoid_like',0,NULL,'https://cdn.proj.org/ch_swisstopo_chgeo2004_ETRS89_LN02.tif',1,1,NULL),
-- de_adv - Arbeitsgemeinschaft der Vermessungsverwaltungender der Länder der Bundesrepublik Deutschland (AdV)
('BETA2007.gsb','de_adv_BETA2007.tif','BETA2007.gsb','GTiff','hgridshift',0,NULL,'https://cdn.proj.org/de_adv_BETA2007.tif',1,1,NULL),
@@ -116,6 +118,10 @@ VALUES
('EGM08_REDNAP.txt','es_ign_egm08-rednap.tif',NULL,'GTiff','geoid_like',0,NULL,'https://cdn.proj.org/es_ign_egm08-rednap.tif',1,1,NULL),
('EGM08_REDNAP_Canarias.txt','es_ign_egm08-rednap-canarias.tif',NULL,'GTiff','geoid_like',0,NULL,'https://cdn.proj.org/es_ign_egm08-rednap-canarias.tif',1,1,NULL),
-- eur_nkg - Nordic Geodetic Commission
('eur_nkg_nkgrf03vel_realigned.tif','eur_nkg_nkgrf03vel_realigned.tif',NULL,'GTiff','velocity_grid',0,NULL,'https://cdn.proj.org/eur_nkg_nkgrf03vel_realigned.tif',1,1,NULL),
('eur_nkg_nkgrf17vel.tif','eur_nkg_nkgrf17vel.tif',NULL,'GTiff','velocity_grid',0,NULL,'https://cdn.proj.org/eur_nkg_nkgrf17vel.tif',1,1,NULL),
-- fi_nls - National Land Survey of Finland (MML)
('fi_nls_n43_n60.json','fi_nls_n43_n60.json',NULL,'JSON','tinshift',0,NULL,'https://cdn.proj.org/fi_nls_n43_n60.json',1,1,NULL),
('fi_nls_n60_n2000.json','fi_nls_n60_n2000.json',NULL,'JSON','tinshift',0,NULL,'https://cdn.proj.org/fi_nls_n60_n2000.json',1,1,NULL),
@@ -184,6 +190,8 @@ VALUES
-- Norwegian grids
('HREF2018B_NN2000_EUREF89.gtx','no_kv_HREF2018B_NN2000_EUREF89.tif',NULL,'GTiff','geoid_like',0,NULL,'https://cdn.proj.org/no_kv_HREF2018B_NN2000_EUREF89.tif',1,1,NULL),
('href2008a.gtx','no_kv_href2008a.tif',NULL,'GTiff','geoid_like',0,NULL,'https://cdn.proj.org/no_kv_href2008a.tif',1,1,NULL),
('no_kv_NKGETRF14_EPSG7922_2000.tif','no_kv_NKGETRF14_EPSG7922_2000.tif',NULL,'GTiff','geocentricoffset',0,NULL,'https://cdn.proj.org/no_kv_NKGETRF14_EPSG7922_2000.tif',1,1,NULL),
('no_kv_ETRS89NO_NGO48_TIN.json','no_kv_ETRS89NO_NGO48_TIN.json',NULL,'JSON','tinshift',0,NULL,'https://cdn.proj.org/no_kv_ETRS89NO_NGO48_TIN.json',1,1,NULL),
-- nz_linz - New Zealand
('nzgd2kgrid0005.gsb','nz_linz_nzgd2kgrid0005.tif','nzgd2kgrid0005.gsb','GTiff','hgridshift',0,NULL,'https://cdn.proj.org/nz_linz_nzgd2kgrid0005.tif',1,1,NULL),
+30 -4
View File
@@ -323,9 +323,9 @@ INSERT INTO "usage" VALUES('EPSG','9347','grid_transformation','EPSG','5334','EP
INSERT INTO "grid_transformation" VALUES('EPSG','5335','ETRS89 to Malin Head height (1)','May be used for transformations from WGS 84 to Malin Head. Replaced by ETRS89 to Malin Head height (2) (code 7959).','EPSG','1045','Geographic3D to GravityRelatedHeight (OSGM02-Ire)','EPSG','4937','EPSG','5731',0.04,'EPSG','8666','Geoid (height correction) model file','OSGM02_RoI.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-Ire',0);
INSERT INTO "usage" VALUES('EPSG','9348','grid_transformation','EPSG','5335','EPSG','1305','EPSG','1133');
INSERT INTO "grid_transformation" VALUES('EPSG','5338','OSGB 1936 to ETRS89 (1)','Approximate alternative to official OSTN02 method (tfm code 7952). Accuracy at 2000 test points compared to OSTN02 (tfm code 1039): latitude 0.5mm av, 17mm max; longitude 0.8mm av, 23mm max. May be taken as approximate CT to WGS 84 - see code 5339.','EPSG','9615','NTv2','EPSG','4277','EPSG','4258',0.03,'EPSG','8656','Latitude and longitude difference file','OSTN02_NTv2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OSGB-UK Gbr02 NT',0);
INSERT INTO "usage" VALUES('EPSG','9349','grid_transformation','EPSG','5338','EPSG','1264','EPSG','1273');
INSERT INTO "usage" VALUES('EPSG','9349','grid_transformation','EPSG','5338','EPSG','4616','EPSG','1273');
INSERT INTO "grid_transformation" VALUES('EPSG','5339','OSGB 1936 to WGS 84 (7)','Parameter values taken from OSGB 1936 to ETRS89 (1) (tfm code 5338) assuming that ETRS89 is coincident with WGS 84 within the accuracy of the tfm. Within accuracy of the tfm equivalent to OSGB 1936 / British National Grid to WGS 84 (2) (tfm code 15956).','EPSG','9615','NTv2','EPSG','4277','EPSG','4326',1.0,'EPSG','8656','Latitude and longitude difference file','OSTN02_NTv2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-UK Gbr02 NT',0);
INSERT INTO "usage" VALUES('EPSG','9350','grid_transformation','EPSG','5339','EPSG','1264','EPSG','1041');
INSERT INTO "usage" VALUES('EPSG','9350','grid_transformation','EPSG','5339','EPSG','4616','EPSG','1041');
INSERT INTO "grid_transformation" VALUES('EPSG','5409','NGVD29 height to NAVD88 height (1)','Interpolation within the gridded data file may be made using any of the horizontal CRSs NAD27, NAD83 or NAD83(HARN).','EPSG','9658','Vertical Offset by Grid Interpolation (VERTCON)','EPSG','5702','EPSG','5703',0.02,'EPSG','8732','Vertical offset file','vertconw.94',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus W',1);
INSERT INTO "usage" VALUES('EPSG','9377','grid_transformation','EPSG','5409','EPSG','2950','EPSG','1255');
INSERT INTO "grid_transformation" VALUES('EPSG','5410','NGVD29 height to NAVD88 height (2)','Interpolation within the gridded data file may be made using any of the horizontal CRSs NAD27, NAD83 or NAD83(HARN).','EPSG','9658','Vertical Offset by Grid Interpolation (VERTCON)','EPSG','5702','EPSG','5703',0.02,'EPSG','8732','Vertical offset file','vertconc.94',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus C',1);
@@ -424,9 +424,9 @@ INSERT INTO "grid_transformation" VALUES('EPSG','7673','CH1903 to CHTRF95 (1)','
INSERT INTO "usage" VALUES('EPSG','10205','grid_transformation','EPSG','7673','EPSG','1286','EPSG','1084');
INSERT INTO "grid_transformation" VALUES('EPSG','7674','CH1903 to ETRS89 (2)','Replaces tfm code 1646. Equivalent to concatenation of transformations 15486 and 1647 to within 2cm. Also used as transformation between CH1903 and CHTRF95 (see code 7673). May be used as approximate tfm CH1903 to WGS 84 - see code 7788.','EPSG','9615','NTv2','EPSG','4149','EPSG','4258',0.25,'EPSG','8656','Latitude and longitude difference file','CHENyx06_ETRS.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'BfL-Che NTv2',0);
INSERT INTO "usage" VALUES('EPSG','10206','grid_transformation','EPSG','7674','EPSG','1286','EPSG','1083');
INSERT INTO "grid_transformation" VALUES('EPSG','7709','OSGB 1936 to ETRS89 (2)','Approximate alternative to official OSTN15 method (tfm code 7953). May be taken as approximate transformation OSGB 1936 to WGS 84 - see code 7710. Replaces OSGB 1936 to ETRS89 (1) (tfm code 5338).','EPSG','9615','NTv2','EPSG','4277','EPSG','4258',0.03,'EPSG','8656','Latitude and longitude difference file','OSTN15_NTv2_OSGBtoETRS.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OSGB-UK Gbr15 NT',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7709','OSGB36 to ETRS89 (2)','Approximate alternative to official OSTN15 method (tfm code 7953). May be taken as approximate transformation OSGB36 to WGS 84 - see code 7710. Replaces OSGB36 to ETRS89 (1) (tfm code 5338).','EPSG','9615','NTv2','EPSG','4277','EPSG','4258',0.03,'EPSG','8656','Latitude and longitude difference file','OSTN15_NTv2_OSGBtoETRS.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OSGB-UK Gbr15 NT',0);
INSERT INTO "usage" VALUES('EPSG','10222','grid_transformation','EPSG','7709','EPSG','4390','EPSG','1273');
INSERT INTO "grid_transformation" VALUES('EPSG','7710','OSGB 1936 to WGS 84 (9)','Parameter values taken from OSGB 1936 to ETRS89 (3) (tfm code 7709) assuming that ETRS89 is coincident with WGS 84 within the accuracy of the tfm. Replaces OSGB 1936 to WGS 84 (7) (tfm code 5339).','EPSG','9615','NTv2','EPSG','4277','EPSG','4326',1.0,'EPSG','8656','Latitude and longitude difference file','OSTN15_NTv2_OSGBtoETRS.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-UK Gbr15 NT',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7710','OSGB36 to WGS 84 (9)','Parameter values taken from OSGB36 to ETRS89 (3) (tfm code 7709) assuming that ETRS89 is coincident with WGS 84 within the accuracy of the tfm. Replaces OSGB36 to WGS 84 (7) (tfm code 5339).','EPSG','9615','NTv2','EPSG','4277','EPSG','4326',1.0,'EPSG','8656','Latitude and longitude difference file','OSTN15_NTv2_OSGBtoETRS.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-UK Gbr15 NT',0);
INSERT INTO "usage" VALUES('EPSG','10223','grid_transformation','EPSG','7710','EPSG','4390','EPSG','1252');
INSERT INTO "grid_transformation" VALUES('EPSG','7711','ETRS89 to ODN height (2)','OSGM15 supersedes OSGM02 geoid model. Replaces ETRS89 to Newlyn height (1) (tfm code 10021). For reversible alternative to this transformation see ETRS89 to ETRS89 + ODN height (2) (code 9587).','EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5701',0.008,'EPSG','8666','Geoid (height correction) model file','OSTN15_OSGM15_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Gbr 2015',0);
INSERT INTO "usage" VALUES('EPSG','14515','grid_transformation','EPSG','7711','EPSG','2792','EPSG','1133');
@@ -1030,6 +1030,24 @@ INSERT INTO "grid_transformation" VALUES('EPSG','9648','RH2000 height to EVRF201
INSERT INTO "usage" VALUES('EPSG','14697','grid_transformation','EPSG','9648','EPSG','3313','EPSG','1059');
INSERT INTO "grid_transformation" VALUES('EPSG','9649','RH2000 height to EVRF2019 mean-tide height (1)','Determined at 3356 points, SD 0.016m. Offset: mean 0.036m, minimum 0.003m, maximum 0.071m.','EPSG','1085','Vertical Offset by Grid Interpolation (asc)','EPSG','5613','EPSG','9390',0.032,'EPSG','8732','Vertical offset file','se_2019m.asc',NULL,NULL,NULL,NULL,'EPSG','4258','EuG-Swe 2019m 2020-09',0);
INSERT INTO "usage" VALUES('EPSG','14778','grid_transformation','EPSG','9649','EPSG','3313','EPSG','1059');
INSERT INTO "grid_transformation" VALUES('EPSG','9652','Baltic 1986 height to EVRF2019 height (1)','Determined at 300 points, SD 0.010m. Offset: mean 0.178m, minimum 0.144m, maximum 0.203m. May also use CRS 9702 (ETRF2000-PL) as interpolation CRS.','EPSG','1085','Vertical Offset by Grid Interpolation (asc)','EPSG','9650','EPSG','9389',0.02,'EPSG','8732','Vertical offset file','pl86_2019z.asc',NULL,NULL,NULL,NULL,'EPSG','4258','EuG-Pol 2019z 2020-09',0);
INSERT INTO "usage" VALUES('EPSG','15035','grid_transformation','EPSG','9652','EPSG','3293','EPSG','1059');
INSERT INTO "grid_transformation" VALUES('EPSG','9653','Baltic 1986 height to EVRF2019 mean-tide height (1)','Determined at 300 points, SD 0.010m. Offset: mean 0.176m, minimum 0.133m, maximum 0.201m. May also use CRS 9702 (ETRF2000-PL) as interpolation CRS.','EPSG','1085','Vertical Offset by Grid Interpolation (asc)','EPSG','9650','EPSG','9390',0.02,'EPSG','8732','Vertical offset file','pl86_2019m.asc',NULL,NULL,NULL,NULL,'EPSG','4258','EuG-Pol 2019m 2020-09',0);
INSERT INTO "usage" VALUES('EPSG','15036','grid_transformation','EPSG','9653','EPSG','3293','EPSG','1059');
INSERT INTO "grid_transformation" VALUES('EPSG','9654','EVRF2007-PL height to EVRF2019 height (1)','Determined at 319 points, SD 0.003m. Offset: mean 0.012m, minimum 0.002m, maximum 0.024m. May also use CRS 9702 (ETRF2000-PL) as interpolation CRS.','EPSG','1085','Vertical Offset by Grid Interpolation (asc)','EPSG','9651','EPSG','9389',0.006,'EPSG','8732','Vertical offset file','pl07_2019z.asc',NULL,NULL,NULL,NULL,'EPSG','4258','EuG-Pol 2019z 2020-09',0);
INSERT INTO "usage" VALUES('EPSG','15037','grid_transformation','EPSG','9654','EPSG','3293','EPSG','1059');
INSERT INTO "grid_transformation" VALUES('EPSG','9655','EVRF2000-PL height to EVRF2019 mean-tide height (1)','Determined at 319 points, SD 0.006m. Offset: mean 0.011m, minimum -0.006m, maximum 0.022m. May also use CRS 9702 (ETRF2000-PL) as interpolation CRS.','EPSG','1085','Vertical Offset by Grid Interpolation (asc)','EPSG','9651','EPSG','9390',0.012,'EPSG','8732','Vertical offset file','pl07_2019m.asc',NULL,NULL,NULL,NULL,'EPSG','4258','EuG-Pol 2019m 2020-09',0);
INSERT INTO "usage" VALUES('EPSG','15038','grid_transformation','EPSG','9655','EPSG','3293','EPSG','1059');
INSERT INTO "grid_transformation" VALUES('EPSG','9658','ETRF2000-PL to Baltic 1986 height (1)','For reversible alternative to this transformation see ETRF2000-PL to ETRF2000-PL + Baltic 1986 height (1) (code 9659).','EPSG','1099','Geographic3D to GravityRelatedHeight (PL txt)','EPSG','9702','EPSG','9650',0.03,'EPSG','8666','Geoid (height correction) model file','gugik-geoid2011-PL-KRON86-NH.txt',NULL,NULL,NULL,NULL,NULL,NULL,'GUGiK-Pol geoid11 KRON86',1);
INSERT INTO "usage" VALUES('EPSG','15013','grid_transformation','EPSG','9658','EPSG','3293','EPSG','1133');
INSERT INTO "grid_transformation" VALUES('EPSG','9659','ETRF2000-PL to ETRF2000-PL + Baltic 1986 height (1)','Reversible alternative to ETRF2000-PL to Baltic 1986 height (1) (code 9658).','EPSG','1100','Geog3D to Geog2D+GravityRelatedHeight (PL txt)','EPSG','9702','EPSG','9656',0.03,'EPSG','8666','Geoid (height correction) model file','gugik-geoid2011-PL-KRON86-NH.txt',NULL,NULL,NULL,NULL,'EPSG','9702','GUGiK-Pol geoid11 KRON86',1);
INSERT INTO "usage" VALUES('EPSG','15106','grid_transformation','EPSG','9659','EPSG','3293','EPSG','1270');
INSERT INTO "grid_transformation" VALUES('EPSG','9660','ETRF2000-PL to EVRF2007-PL height (1)','For reversible alternative to this transformation see ETRF2000-PL to ETRF2000-PL + EVRF2007-PL height (1) (code 9661).','EPSG','1099','Geographic3D to GravityRelatedHeight (PL txt)','EPSG','9702','EPSG','9651',0.03,'EPSG','8666','Geoid (height correction) model file','gugik-geoid2011-PL-EVRF2007-NH.txt',NULL,NULL,NULL,NULL,NULL,NULL,'GUGiK-Pol geoid11 EVRF07',1);
INSERT INTO "usage" VALUES('EPSG','15039','grid_transformation','EPSG','9660','EPSG','3293','EPSG','1133');
INSERT INTO "grid_transformation" VALUES('EPSG','9661','ETRF2000-PL to ETRF2000-PL + EVRF2007-PL height (1)','Reversible alternative to ETRF2000-PL to EVRF2007-PL height (1) (code 9660).','EPSG','1100','Geog3D to Geog2D+GravityRelatedHeight (PL txt)','EPSG','9702','EPSG','9657',0.03,'EPSG','8666','Geoid (height correction) model file','gugik-geoid2011-PL-EVRF2007-NH.txt',NULL,NULL,NULL,NULL,'EPSG','9702','GUGiK-Pol geoid11 EVRF07',1);
INSERT INTO "usage" VALUES('EPSG','15107','grid_transformation','EPSG','9661','EPSG','3293','EPSG','1270');
INSERT INTO "grid_transformation" VALUES('EPSG','9662','Baltic 1986 height to EVRF2007-PL height (1)','Gives same result as differencing quasi-geoid models geoid2011-KRON86 and geoid2011-EVRF2007 (transformations 9658 and 9660).','EPSG','1101','Vertical Offset by Grid Interpolation (PL txt)','EPSG','9650','EPSG','9651',0.04,'EPSG','8732','Vertical offset file','gugik-evrf2007.txt',NULL,NULL,NULL,NULL,'EPSG','9702','GUGiK-Pol',0);
INSERT INTO "usage" VALUES('EPSG','15052','grid_transformation','EPSG','9662','EPSG','3293','EPSG','1059');
INSERT INTO "grid_transformation" VALUES('EPSG','9664','EH2000 height to EVRF2019 height (1)','Determined at 367 points, SD 0.001m. Offset: mean 0.011m, minimum 0.008m, maximum 0.013m.','EPSG','1085','Vertical Offset by Grid Interpolation (asc)','EPSG','9663','EPSG','9389',0.002,'EPSG','8732','Vertical offset file','ee_2019z.asc',NULL,NULL,NULL,NULL,'EPSG','4258','EuG-Est 2019z 2020-09',0);
INSERT INTO "usage" VALUES('EPSG','14748','grid_transformation','EPSG','9664','EPSG','3246','EPSG','1059');
INSERT INTO "grid_transformation" VALUES('EPSG','9665','EH2000 height to EVRF2019 mean-tide height (1)','Determined at 367 points, SD 0.002m. Offset: mean 0.041m, minimum 0.037m, maximum 0.045m.','EPSG','1085','Vertical Offset by Grid Interpolation (asc)','EPSG','9663','EPSG','9390',0.004,'EPSG','8732','Vertical offset file','ee_2019m.asc',NULL,NULL,NULL,NULL,'EPSG','4258','EuG-Est 2019m 2020-09',0);
@@ -1056,6 +1074,14 @@ INSERT INTO "grid_transformation" VALUES('EPSG','9706','WGS 84 to WGS 84 + MSL h
INSERT INTO "usage" VALUES('EPSG','15105','grid_transformation','EPSG','9706','EPSG','1262','EPSG','1270');
INSERT INTO "grid_transformation" VALUES('EPSG','9708','WGS 84 to WGS 84 + EGM96 height (1)','Reversible alternative to WGS 84 to EGM96 height (1) (code 10084).','EPSG','1103','Geog3D to Geog2D+GravityRelatedHeight (EGM)','EPSG','4979','EPSG','9707',1.0,'EPSG','8666','Geoid (height correction) model file','WW15MGH.GRD',NULL,NULL,NULL,NULL,'EPSG','4326','NGA-World',0);
INSERT INTO "usage" VALUES('EPSG','15101','grid_transformation','EPSG','9708','EPSG','1262','EPSG','1270');
INSERT INTO "grid_transformation" VALUES('EPSG','9717','ETRF2000-PL to Baltic 1986 height (1)','For reversible alternative to this transformation see ETRF2000-PL to ETRF2000-PL + Baltic 1986 height (1) (code 9718).','EPSG','1099','Geographic3D to GravityRelatedHeight (PL txt)','EPSG','9701','EPSG','9650',0.03,'EPSG','8666','Geoid (height correction) model file','gugik-geoid2011-PL-KRON86-NH.txt',NULL,NULL,NULL,NULL,NULL,NULL,'GUGiK-Pol geoid11 KRON86',0);
INSERT INTO "usage" VALUES('EPSG','15236','grid_transformation','EPSG','9717','EPSG','3293','EPSG','1133');
INSERT INTO "grid_transformation" VALUES('EPSG','9718','ETRF2000-PL to ETRF2000-PL + Baltic 1986 height (1)','Reversible alternative to ETRF2000-PL to Baltic 1986 height (1) (code 9717).','EPSG','1100','Geog3D to Geog2D+GravityRelatedHeight (PL txt)','EPSG','9701','EPSG','9656',0.03,'EPSG','8666','Geoid (height correction) model file','gugik-geoid2011-PL-KRON86-NH.txt',NULL,NULL,NULL,NULL,'EPSG','9702','GUGiK-Pol geoid11 KRON86',0);
INSERT INTO "usage" VALUES('EPSG','15237','grid_transformation','EPSG','9718','EPSG','3293','EPSG','1270');
INSERT INTO "grid_transformation" VALUES('EPSG','9719','ETRF2000-PL to EVRF2007-PL height (1)','For reversible alternative to this transformation see ETRF2000-PL to ETRF2000-PL + EVRF2007-PL height (1) (code 9720).','EPSG','1099','Geographic3D to GravityRelatedHeight (PL txt)','EPSG','9701','EPSG','9651',0.03,'EPSG','8666','Geoid (height correction) model file','gugik-geoid2011-PL-EVRF2007-NH.txt',NULL,NULL,NULL,NULL,NULL,NULL,'GUGiK-Pol geoid11 EVRF07',0);
INSERT INTO "usage" VALUES('EPSG','15238','grid_transformation','EPSG','9719','EPSG','3293','EPSG','1133');
INSERT INTO "grid_transformation" VALUES('EPSG','9720','ETRF2000-PL to ETRF2000-PL + EVRF2007-PL height (1)','Reversible alternative to ETRF2000-PL to EVRF2007-PL height (1) (code 9719).','EPSG','1100','Geog3D to Geog2D+GravityRelatedHeight (PL txt)','EPSG','9701','EPSG','9657',0.03,'EPSG','8666','Geoid (height correction) model file','gugik-geoid2011-PL-EVRF2007-NH.txt',NULL,NULL,NULL,NULL,'EPSG','9702','GUGiK-Pol geoid11 EVRF07',0);
INSERT INTO "usage" VALUES('EPSG','15239','grid_transformation','EPSG','9720','EPSG','3293','EPSG','1270');
INSERT INTO "grid_transformation" VALUES('EPSG','10000','RGF93 to NGF-IGN69 height (1)','May be used for transformations from WGS 84 to NGF-IGN69 height. Accuracy at each 0.1 deg x 0.1 degree grid node is given within the geoid model file.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4965','EPSG','5720',0.5,'EPSG','8666','Geoid (height correction) model file','ggf97a.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Fra',0);
INSERT INTO "usage" VALUES('EPSG','11001','grid_transformation','EPSG','10000','EPSG','1326','EPSG','1133');
INSERT INTO "grid_transformation" VALUES('EPSG','10001','ETRS89 to NGF-IGN69 height (1)','Parameter values taken from RGF93 to NGF-IGN69 height (1) (code 10000) assuming that RGF93 is equivalent to ETRS89 within the accuracy of the transformation. Accuracy at each 0.1 deg x 0.1 degree grid node is given within the geoid model file.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4937','EPSG','5720',0.5,'EPSG','8666','Geoid (height correction) model file','ggf97a.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Fra',0);
+42
View File
@@ -169,3 +169,45 @@ INSERT INTO "usage" VALUES(
'EPSG','3263', -- area of use: Japan - onshore mainland
'EPSG','1024' -- unknown
);
-- Switzerland
INSERT INTO "grid_transformation" VALUES(
'PROJ','EPSG_4937_TO_EPSG_5729','ETRS89 to LHN95 height',
NULL,
'EPSG','9665','Geographic3D to GravityRelatedHeight (gtx)',
'EPSG','4937', -- source CRS (ETRS89)
'EPSG','5729', -- target CRS (LHN95 height)
NULL,
'EPSG','8666','Geoid (height correction) model file','chgeo2004_ETRS.agr',
NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "usage" VALUES(
'PROJ',
'EPSG_4937_TO_EPSG_5729_USAGE',
'grid_transformation',
'PROJ',
'EPSG_4937_TO_EPSG_5729',
'EPSG','1286', -- area of use: Europe - Liechtenstein and Switzerland
'EPSG','1024' -- unknown
);
INSERT INTO "grid_transformation" VALUES(
'PROJ','EPSG_4937_TO_EPSG_5728','ETRS89 to LN02 height',
NULL,
'EPSG','9665','Geographic3D to GravityRelatedHeight (gtx)',
'EPSG','4937', -- source CRS (ETRS89)
'EPSG','5728', -- target CRS (LN02 height)
NULL,
'EPSG','8666','Geoid (height correction) model file','chgeo2004_htrans_ETRS.agr',
NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "usage" VALUES(
'PROJ',
'EPSG_4937_TO_EPSG_5728_USAGE',
'grid_transformation',
'PROJ',
'EPSG_4937_TO_EPSG_5728',
'EPSG','1286', -- area of use: Europe - Liechtenstein and Switzerland
'EPSG','1024' -- unknown
);
+11 -9
View File
@@ -272,15 +272,15 @@ INSERT INTO "helmert_transformation" VALUES('EPSG','1193','NTF to WGS 84 (1)','T
INSERT INTO "usage" VALUES('EPSG','8114','helmert_transformation','EPSG','1193','EPSG','3694','EPSG','1042');
INSERT INTO "helmert_transformation" VALUES('EPSG','1194','MGI to WGS 84 (8)','May be taken as approximate transformation MGI to ETRS89 assuming ETRS89 is equivalent to WGS 84 within the accuracy of the transformation - see tfm code 1024. Information source gives scale as -2.388739 ppm.','EPSG','9607','Coordinate Frame rotation (geog2D domain)','EPSG','4312','EPSG','4326',0.5,601.705,84.263,485.227,'EPSG','9001',-4.7354,-1.3145,-5.393,'EPSG','9104',-2.3887,'EPSG','9202',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'LBD-Aut Sty',0);
INSERT INTO "usage" VALUES('EPSG','8115','helmert_transformation','EPSG','1194','EPSG','1543','EPSG','1035');
INSERT INTO "helmert_transformation" VALUES('EPSG','1195','OSGB 1936 to WGS 84 (1)','Derived at 38 stations. Accuracy 10m, 10m and 15m in X, Y and Z axes.','EPSG','9603','Geocentric translations (geog2D domain)','EPSG','4277','EPSG','4326',21.0,375.0,-111.0,431.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'DMA-Gbr',0);
INSERT INTO "helmert_transformation" VALUES('EPSG','1195','OSGB36 to WGS 84 (1)','Derived at 38 stations. Accuracy 10m, 10m and 15m in X, Y and Z axes.','EPSG','9603','Geocentric translations (geog2D domain)','EPSG','4277','EPSG','4326',21.0,375.0,-111.0,431.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'DMA-Gbr',0);
INSERT INTO "usage" VALUES('EPSG','8116','helmert_transformation','EPSG','1195','EPSG','1264','EPSG','1160');
INSERT INTO "helmert_transformation" VALUES('EPSG','1196','OSGB 1936 to WGS 84 (2)','Derived at 24 stations. Accuracy 5m, 5m and 6m in X, Y and Z axes.','EPSG','9603','Geocentric translations (geog2D domain)','EPSG','4277','EPSG','4326',10.0,371.0,-112.0,434.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'DMA-Gbr Eng',0);
INSERT INTO "helmert_transformation" VALUES('EPSG','1196','OSGB36 to WGS 84 (2)','Derived at 24 stations. Accuracy 5m, 5m and 6m in X, Y and Z axes.','EPSG','9603','Geocentric translations (geog2D domain)','EPSG','4277','EPSG','4326',10.0,371.0,-112.0,434.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'DMA-Gbr Eng',0);
INSERT INTO "usage" VALUES('EPSG','8117','helmert_transformation','EPSG','1196','EPSG','2395','EPSG','1160');
INSERT INTO "helmert_transformation" VALUES('EPSG','1197','OSGB 1936 to WGS 84 (3)','Derived at 25 stations. Accuracy 10m, 10m and 15m in X, Y and Z axes.','EPSG','9603','Geocentric translations (geog2D domain)','EPSG','4277','EPSG','4326',21.0,371.0,-111.0,434.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'DMA-Gbr E&W',0);
INSERT INTO "helmert_transformation" VALUES('EPSG','1197','OSGB36 to WGS 84 (3)','Derived at 25 stations. Accuracy 10m, 10m and 15m in X, Y and Z axes.','EPSG','9603','Geocentric translations (geog2D domain)','EPSG','4277','EPSG','4326',21.0,371.0,-111.0,434.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'DMA-Gbr E&W',0);
INSERT INTO "usage" VALUES('EPSG','8118','helmert_transformation','EPSG','1197','EPSG','2396','EPSG','1160');
INSERT INTO "helmert_transformation" VALUES('EPSG','1198','OSGB 1936 to WGS 84 (4)','Derived at 13 stations. Accuracy 10m in each axis.','EPSG','9603','Geocentric translations (geog2D domain)','EPSG','4277','EPSG','4326',18.0,384.0,-111.0,425.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'DMA-Gbr Sco',0);
INSERT INTO "helmert_transformation" VALUES('EPSG','1198','OSGB36 to WGS 84 (4)','Derived at 13 stations. Accuracy 10m in each axis.','EPSG','9603','Geocentric translations (geog2D domain)','EPSG','4277','EPSG','4326',18.0,384.0,-111.0,425.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'DMA-Gbr Sco',0);
INSERT INTO "usage" VALUES('EPSG','8119','helmert_transformation','EPSG','1198','EPSG','2397','EPSG','1160');
INSERT INTO "helmert_transformation" VALUES('EPSG','1199','OSGB 1936 to WGS 84 (5)','Derived at 3 stations. Accuracy 20m in each axis.','EPSG','9603','Geocentric translations (geog2D domain)','EPSG','4277','EPSG','4326',35.0,370.0,-108.0,434.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'DMA-Gbr Wal',0);
INSERT INTO "helmert_transformation" VALUES('EPSG','1199','OSGB36 to WGS 84 (5)','Derived at 3 stations. Accuracy 20m in each axis.','EPSG','9603','Geocentric translations (geog2D domain)','EPSG','4277','EPSG','4326',35.0,370.0,-108.0,434.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'DMA-Gbr Wal',0);
INSERT INTO "usage" VALUES('EPSG','8120','helmert_transformation','EPSG','1199','EPSG','2398','EPSG','1160');
INSERT INTO "helmert_transformation" VALUES('EPSG','1200','Pointe Noire to WGS 84 (1)','Derived at 1 station. Accuracy 25m in each axis.','EPSG','9603','Geocentric translations (geog2D domain)','EPSG','4282','EPSG','4326',44.0,-148.0,51.0,-291.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'DMA-Cog',0);
INSERT INTO "usage" VALUES('EPSG','8121','helmert_transformation','EPSG','1200','EPSG','1072','EPSG','1160');
@@ -475,11 +475,11 @@ INSERT INTO "helmert_transformation" VALUES('EPSG','1309','DHDN to ETRS89 (1)','
INSERT INTO "usage" VALUES('EPSG','8230','helmert_transformation','EPSG','1309','EPSG','2326','EPSG','1045');
INSERT INTO "helmert_transformation" VALUES('EPSG','1310','Pulkovo 1942 to ETRS89 (1)','Mean of 20 stations.','EPSG','9607','Coordinate Frame rotation (geog2D domain)','EPSG','4284','EPSG','4258',2.0,24.0,-123.0,-94.0,'EPSG','9001',-0.02,0.25,0.13,'EPSG','9104',1.1,'EPSG','9202',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'IfAG-Deu E',1);
INSERT INTO "usage" VALUES('EPSG','8231','helmert_transformation','EPSG','1310','EPSG','1343','EPSG','1042');
INSERT INTO "helmert_transformation" VALUES('EPSG','1311','ED50 to WGS 84 (18)','Recommended transformation for UKCS and IrishCS petroleum purposes. Based on ED50 to WGS72 (precise ephemeris) 6-nations agreement of 1981 to which precise to broadcast and broadcast to WGS 84 transformations have been concatenated.','EPSG','9606','Position Vector transformation (geog2D domain)','EPSG','4230','EPSG','4326',1.0,-89.5,-93.8,-123.1,'EPSG','9001',0.0,0.0,-0.156,'EPSG','9104',1.2,'EPSG','9202',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'UKOOA-CO',0);
INSERT INTO "helmert_transformation" VALUES('EPSG','1311','ED50 to WGS 84 (18)','Recommended CT for UKCS and IrishCS petroleum purposes, known as "Common Offshore". Based on ED50 to WGS 72 (precise ephemeris) 6-nations agreement of 1981 with which precise to broadcast and broadcast to WGS 84 transformations have been concatenated.','EPSG','9606','Position Vector transformation (geog2D domain)','EPSG','4230','EPSG','4326',1.0,-89.5,-93.8,-123.1,'EPSG','9001',0.0,0.0,-0.156,'EPSG','9104',1.2,'EPSG','9202',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'UKOOA-CO',0);
INSERT INTO "usage" VALUES('EPSG','8232','helmert_transformation','EPSG','1311','EPSG','2342','EPSG','1136');
INSERT INTO "helmert_transformation" VALUES('EPSG','1314','OSGB 1936 to WGS 84 (6)','For a more accurate transformation see ETRS89 to OSGB 1936 / British National Grid (3) (code 7953).','EPSG','9606','Position Vector transformation (geog2D domain)','EPSG','4277','EPSG','4326',2.0,446.448,-125.157,542.06,'EPSG','9001',0.15,0.247,0.842,'EPSG','9104',-20.489,'EPSG','9202',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'UKOOA-Pet',0);
INSERT INTO "helmert_transformation" VALUES('EPSG','1314','OSGB36 to WGS 84 (6)','Commonly referred to as the "OSGB Petroleum transformation". For a more accurate transformation see ETRS89 to OSGB36 / British National Grid (3) (code 7953).','EPSG','9606','Position Vector transformation (geog2D domain)','EPSG','4277','EPSG','4326',2.0,446.448,-125.157,542.06,'EPSG','9001',0.15,0.247,0.842,'EPSG','9104',-20.489,'EPSG','9202',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'UKOOA-Pet',0);
INSERT INTO "usage" VALUES('EPSG','8235','helmert_transformation','EPSG','1314','EPSG','1264','EPSG','1136');
INSERT INTO "helmert_transformation" VALUES('EPSG','1315','OSGB 1936 to ED50 (UKOOA)','This transformation is concatenated from OSGB36 to WGS 84 (Petroleum) (code 1314) minus ED50 to WGS 84 (Common Offshore) (code 1311). Accuracy better than 4m and generally better than 2m.','EPSG','9606','Position Vector transformation (geog2D domain)','EPSG','4277','EPSG','4230',2.0,535.948,-31.357,665.16,'EPSG','9001',0.15,0.247,0.998,'EPSG','9104',-21.689,'EPSG','9202',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'UKOOA-UKCS',0);
INSERT INTO "helmert_transformation" VALUES('EPSG','1315','OSGB36 to ED50 (1)','Known as the "UKOOA landward/seaward transformation". This transformation is concatenated from OSGB36 to WGS 84 (6) (Petroleum) (code 1314) minus ED50 to WGS 84 (18) (Common Offshore) (code 1311). Accuracy better than 4m and generally better than 2m.','EPSG','9606','Position Vector transformation (geog2D domain)','EPSG','4277','EPSG','4230',2.0,535.948,-31.357,665.16,'EPSG','9001',0.15,0.247,0.998,'EPSG','9104',-21.689,'EPSG','9202',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'UKOOA-UKCS',0);
INSERT INTO "usage" VALUES('EPSG','8236','helmert_transformation','EPSG','1315','EPSG','1264','EPSG','1136');
INSERT INTO "helmert_transformation" VALUES('EPSG','1316','Manoca to WGS 84 (1)','','EPSG','9603','Geocentric translations (geog2D domain)','EPSG','4260','EPSG','4326',999.0,-70.9,-151.8,-41.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'SCS-Cmr',1);
INSERT INTO "usage" VALUES('EPSG','8237','helmert_transformation','EPSG','1316','EPSG','1060','EPSG','1025');
@@ -1589,7 +1589,7 @@ INSERT INTO "helmert_transformation" VALUES('EPSG','5590','UCS-2000 to WGS 84 (1
INSERT INTO "usage" VALUES('EPSG','9476','helmert_transformation','EPSG','5590','EPSG','1242','EPSG','1045');
INSERT INTO "helmert_transformation" VALUES('EPSG','5599','FEH2010 to WGS 84 (1)','','EPSG','9603','Geocentric translations (geog2D domain)','EPSG','5593','EPSG','4326',1.0,0.0,0.0,0.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Dnk-Deu Feh',0);
INSERT INTO "usage" VALUES('EPSG','9479','helmert_transformation','EPSG','5599','EPSG','3889','EPSG','1252');
INSERT INTO "helmert_transformation" VALUES('EPSG','5622','OSGB 1936 to WGS 84 (8)','Derived by CGG for 1994 3D seismic survey.','EPSG','9603','Geocentric translations (geog2D domain)','EPSG','4277','EPSG','4326',3.0,370.936,-108.938,435.682,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bp-Gbr WytchF',0);
INSERT INTO "helmert_transformation" VALUES('EPSG','5622','OSGB36 to WGS 84 (8)','Derived by CGG for 1994 3D seismic survey.','EPSG','9603','Geocentric translations (geog2D domain)','EPSG','4277','EPSG','4326',3.0,370.936,-108.938,435.682,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bp-Gbr WytchF',0);
INSERT INTO "usage" VALUES('EPSG','9480','helmert_transformation','EPSG','5622','EPSG','3893','EPSG','1136');
INSERT INTO "helmert_transformation" VALUES('EPSG','5630','Nord Sahara 1959 to WGS 84 (8)','Derived at 1 station (L38).','EPSG','9603','Geocentric translations (geog2D domain)','EPSG','4307','EPSG','4326',5.0,-168.52,-72.05,304.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'Tot-Dza Ahnet',0);
INSERT INTO "usage" VALUES('EPSG','9482','helmert_transformation','EPSG','5630','EPSG','3917','EPSG','1136');
@@ -2424,6 +2424,8 @@ INSERT INTO "helmert_transformation" VALUES('EPSG','9688','GDA94 to WGS 84 (2)',
INSERT INTO "usage" VALUES('EPSG','14921','helmert_transformation','EPSG','9688','EPSG','4177','EPSG','1275');
INSERT INTO "helmert_transformation" VALUES('EPSG','9690','WGS 84 to GDA2020 (3)','Concatenation of CTs 1150 and 8048 through GDA94. Scale difference in ppb where 1/billion = 1E-9. See WGS 84 to GDA2020 (4) (CT code 9691) for alternative for Australia including distortion model.','EPSG','9607','Coordinate Frame rotation (geog2D domain)','EPSG','4326','EPSG','7844',3.0,61.55,-10.87,-40.19,'EPSG','1025',-39.4924,-32.7221,-32.8979,'EPSG','1031',-9.994,'EPSG','1028',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'ICSM-Aus Conf',0);
INSERT INTO "usage" VALUES('EPSG','14920','helmert_transformation','EPSG','9690','EPSG','4177','EPSG','1276');
INSERT INTO "helmert_transformation" VALUES('EPSG','9703','ETRF2000-PL to ETRS89 (1)','','EPSG','9603','Geocentric translations (geog2D domain)','EPSG','9702','EPSG','4258',0.0,0.0,0.0,0.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'IOGP-Pol',0);
INSERT INTO "usage" VALUES('EPSG','15011','helmert_transformation','EPSG','9703','EPSG','1192','EPSG','1161');
INSERT INTO "helmert_transformation" VALUES('EPSG','10085','Trinidad 1903 to WGS 84 (2)','Parameter values provided to EOG by Trinidad Ministry of Energy and Energy Industries. Used by EOG offshore Trinidad (including Pelican, Kiskadee and Ibis fields) since 1996.','EPSG','9603','Geocentric translations (geog2D domain)','EPSG','4302','EPSG','4326',3.0,-61.0,285.2,471.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'EOG-Tto Trin',0);
INSERT INTO "usage" VALUES('EPSG','11086','helmert_transformation','EPSG','10085','EPSG','1339','EPSG','1136');
INSERT INTO "helmert_transformation" VALUES('EPSG','10086','JAD69 to WGS 72 (1)','Derived in 1977 through Transit observations at 2 stations by US DMA.','EPSG','9603','Geocentric translations (geog2D domain)','EPSG','4242','EPSG','4322',15.0,48.0,208.0,382.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'SD-Jam',0);
+2 -2
View File
@@ -9,5 +9,5 @@
INSERT INTO "metadata" VALUES('DATABASE.LAYOUT.VERSION.MAJOR', 1);
INSERT INTO "metadata" VALUES('DATABASE.LAYOUT.VERSION.MINOR', 0);
INSERT INTO "metadata" VALUES('EPSG.VERSION', 'v10.015');
INSERT INTO "metadata" VALUES('EPSG.DATE', '2021-02-11');
INSERT INTO "metadata" VALUES('EPSG.VERSION', 'v10.018');
INSERT INTO "metadata" VALUES('EPSG.DATE', '2021-04-02');
+179 -14
View File
@@ -2,19 +2,6 @@ INSERT INTO "metadata" VALUES('NKG.SOURCE', 'https://github.com/NordicGeodesy/No
INSERT INTO "metadata" VALUES('NKG.VERSION', '1.0.0');
INSERT INTO "metadata" VALUES('NKG.DATE', '2020-12-21');
-- Append NKG to authority references
UPDATE
authority_to_authority_preference
SET
allowed_authorities = allowed_authorities || ',NKG'
WHERE
source_auth_name = 'EPSG' AND target_auth_name = 'EPSG';
INSERT INTO "authority_to_authority_preference"
(source_auth_name,target_auth_name, allowed_authorities)
VALUES
('NKG', 'EPSG', 'NKG,PROJ,EPSG');
-- extent for NKG2008 transformations
INSERT INTO "extent" VALUES(
'NKG','EXTENT_2008', -- extend auth+code
@@ -693,7 +680,75 @@ INSERT INTO "usage" VALUES (
'NKG', 'SCOPE_GENERIC' -- scope
);
-- NO
INSERT INTO "helmert_transformation" VALUES (
'NKG','PAR_2020_NO', -- operation auth+code
'NKG_ETRF14 to ETRF93@2000.0', -- name
'Transformation from NKG_ETRF14 to ETRF93, at transformation reference epoch 2000.0', -- description / remark
'EPSG','1033', -- method auth+code
'Position Vector transformation (geocentric domain)',
'NKG','ETRF14', -- source auth+code
'EPSG','7922', -- target auth+code
0.01, -- accuracy
-0.05172, -- x
0.13747, -- y
-0.01648, -- z
'EPSG','9001',
0.00268452, -- rx
0.00329165, -- ry
-0.00116569, -- rz
'EPSG','9104',
0.002583, -- s
'EPSG','9202',
NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,
'NKG 2020', -- operation version
0
);
INSERT INTO "usage" VALUES (
'NKG', '5041', -- usage auth+code
'helmert_transformation', -- object_table_name
'NKG','PAR_2020_NO', -- object auth+code
'EPSG', '1352', -- extent: Norway - onshore
'NKG', 'SCOPE_GENERIC' -- scope
);
INSERT INTO "other_transformation" (
auth_name,
code,
name,
description,
method_auth_name,
method_code,
method_name,
source_crs_auth_name,
source_crs_code,
target_crs_auth_name,
target_crs_code,
accuracy,
operation_version,
deprecated
)
VALUES(
'NKG', 'NKG_ETRF14_ETRF93_2000', -- object auth+code
'NKG_ETRF14 to ETRF93@2000.0', -- name
'Transformation from NKG_ETRF14 to ETRF93, at transformation reference epoch 2000.0', -- description / remark
'PROJ', 'PROJString',
'+proj=xyzgridshift +grids=no_kv_NKGETRF14_EPSG7922_2000.tif',
'NKG','ETRF14', -- source auth+code
'EPSG','7922', -- target auth+code
0.005, -- accuracy
'NKG 2020', -- operation_version
0 -- deprecated
);
INSERT INTO "usage" VALUES (
'NKG', '5064',
'other_transformation',
'NKG', 'NKG_ETRF14_ETRF93_2000',
'EPSG', '1352',
'NKG', 'SCOPE_GENERIC'
);
-- SE
INSERT INTO "helmert_transformation" VALUES (
@@ -2056,6 +2111,116 @@ INSERT INTO "supersession" VALUES (
);
-------------------------------------------------------
-- Transformation: NKG_ETRF14 -> ETRF93@1995.0 (NO)
-------------------------------------------------------
INSERT INTO "other_transformation" (
auth_name,
code,
name,
description,
method_auth_name,
method_code,
method_name,
source_crs_auth_name,
source_crs_code,
target_crs_auth_name,
target_crs_code,
accuracy,
operation_version,
deprecated
)
VALUES(
'NKG', 'NO_2020_INTRAPLATE', -- object auth+code
'ETRF93@2000.0 to ETRF93@1995.0', -- name
NULL, -- description
'PROJ', 'PROJString', -- method auth+cod
'+proj=deformation +dt=-5 +grids=eur_nkg_nkgrf17vel.tif',
'EPSG','7922', -- source_crs: ETRF93@2000.0
'EPSG','4936', -- target_crs: ETRS89 (NO)
0.005, -- accuracy
'NKG 2020', -- operation_version
0 -- deprecated
);
INSERT INTO "usage" VALUES (
'NKG', '5058', -- usage auth+code
'other_transformation', -- object_table_name
'NKG', 'NO_2020_INTRAPLATE', -- object auth+code
'EPSG', '1352', -- extent: Norway - onshore and offshore
'NKG', 'SCOPE_GENERIC' -- scope
);
INSERT INTO "concatenated_operation" VALUES(
'NKG', 'ETRF14_TO_NO', -- operation auth+code
'NKG_ETRF14 to ETRS89(NO)', -- name
'Transformation from NKG_ETRF14@2000.0 to ETRF93@1995.0', -- description
'NKG', 'ETRF14',-- source_crs: NKG_ETRF00
'EPSG','4936', -- target_crs: ETRS89 (NO)
0.01, -- accuracy
'NKG 2020', -- operation_version
0 -- deprecated
);
INSERT INTO "concatenated_operation_step" (
operation_auth_name, operation_code, step_number, step_auth_name, step_code
) VALUES
('NKG', 'ETRF14_TO_NO', 1, 'NKG', 'PAR_2020_NO'),
('NKG', 'ETRF14_TO_NO', 2, 'NKG', 'NO_2020_INTRAPLATE')
;
INSERT INTO "usage" VALUES (
'NKG', '5059', -- usage auth+code
'concatenated_operation', -- object_table_name
'NKG', 'ETRF14_TO_NO', -- object auth+code
'EPSG', '1352', -- extent: Norway - onshore and offshore
'NKG', 'SCOPE_GENERIC' -- scope auth+code
);
-------------------------------------------------------
-- Transformation: ITRF2014 -> ETRF93@1995.0 (NO)
-------------------------------------------------------
INSERT INTO "concatenated_operation" VALUES (
'NKG', 'ITRF2014_TO_NO', -- operation auth+code
'ITRF2014 to ETRS89(NO)', -- name
'Time-dependent transformation from ITRF2014 to ETRS89(NO)', -- description
'EPSG', '7789', -- source_crs: ITRF2014
'EPSG', '4936', -- target_crs: ETRS89(NO)
0.01, -- accuracy
'NKG 2020', -- operation_version
0 -- deprecated
);
INSERT INTO "concatenated_operation_step" (
operation_auth_name, operation_code, step_number, step_auth_name, step_code
) VALUES
('NKG', 'ITRF2014_TO_NO', 1, 'EPSG', '8366'), -- ITRF2014 -> ETRF2014
('NKG', 'ITRF2014_TO_NO', 2, 'NKG', 'NKG_ETRF14_TO_ETRF2014'),
('NKG', 'ITRF2014_TO_NO', 3, 'NKG', 'NKG_ETRF14_ETRF93_2000'),
('NKG', 'ITRF2014_TO_NO', 4, 'NKG', 'NO_2020_INTRAPLATE')
;
INSERT INTO "usage" VALUES (
'NKG', '5060', -- usage auth+code
'concatenated_operation', -- object_table_name
'NKG', 'ITRF2014_TO_NO', -- object auth+code
'EPSG', '1352', -- extent: Norway - onshore and offshore
'NKG', 'SCOPE_GENERIC' -- scope auth+code
);
INSERT INTO "supersession" VALUES (
'concatenated_operation',
'NKG', 'ITRF2000_TO_NO',
'concatenated_operation',
'NKG', 'ITRF2014_TO_NO',
'NKG',
0
);
-------------------------------------------------------
-- Transformation: NKG_ETRF14 -> ETRF97@1999.5 (SE)
-------------------------------------------------------
@@ -2157,7 +2322,7 @@ INSERT INTO "usage" VALUES (
'NKG', '5063', -- usage auth+code
'concatenated_operation', -- object_table_name
'NKG', 'ITRF2014_TO_SE', -- object auth+code
'EPSG', '1352', -- extent: Sweden - onshore and offshore
'EPSG', '1225', -- extent: Sweden - onshore and offshore
'NKG', 'SCOPE_GENERIC' -- scope auth+code
);
+13
View File
@@ -0,0 +1,13 @@
-- Append NKG to authority references
UPDATE
authority_to_authority_preference
SET
allowed_authorities = allowed_authorities || ',NKG'
WHERE
source_auth_name = 'EPSG' AND target_auth_name = 'EPSG';
INSERT INTO "authority_to_authority_preference"
(source_auth_name,target_auth_name, allowed_authorities)
VALUES
('NKG', 'EPSG', 'NKG,PROJ,EPSG');
+16
View File
@@ -1,5 +1,21 @@
-- This file is hand generated.
-- Norway triangulated files
INSERT INTO other_transformation VALUES(
'PROJ','NGO48_TO_ETRS89NO','NGO 1948 to ETRS89 (2)',
'Transformation based on a triangulated irregular network',
'PROJ','PROJString',
'+proj=pipeline ' ||
'+step +proj=axisswap +order=2,1 ' ||
'+step +proj=tinshift +file=no_kv_ETRS89NO_NGO48_TIN.json +inv ' ||
'+step +proj=axisswap +order=2,1',
'EPSG','4273',
'EPSG','4258',
0.1,
NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "usage" VALUES('PROJ','NGO48_TO_ETRS89NO_USAGE','other_transformation','PROJ','NGO48_TO_ETRS89NO','EPSG','1352','EPSG','1031');
-- Finland triangulated files
INSERT INTO other_transformation VALUES(
+2 -2
View File
@@ -1089,7 +1089,7 @@ CREATE TABLE grid_alternatives(
proj_grid_name TEXT NOT NULL, -- PROJ >= 7 grid name (e.g us_nga_egm08_25.tif)
old_proj_grid_name TEXT, -- PROJ < 7 grid name (e.g egm08_25.gtx)
proj_grid_format TEXT NOT NULL, -- 'GTiff', 'GTX', 'NTv2', JSON
proj_method TEXT NOT NULL, -- hgridshift, vgridshift, geoid_like, geocentricoffset or tinshift
proj_method TEXT NOT NULL, -- hgridshift, vgridshift, geoid_like, geocentricoffset, tinshift or velocity_grid
inverse_direction BOOLEAN NOT NULL CHECK (inverse_direction IN (0, 1)), -- whether the PROJ grid direction is reversed w.r.t to the authority one (TRUE in that case)
package_name TEXT, -- no longer used. Must be NULL
url TEXT, -- optional URL where to download the PROJ grid
@@ -1099,7 +1099,7 @@ CREATE TABLE grid_alternatives(
CONSTRAINT fk_grid_alternatives_grid_packages FOREIGN KEY (package_name) REFERENCES grid_packages(package_name),
CONSTRAINT check_grid_alternatives_grid_fromat CHECK (proj_grid_format IN ('GTiff', 'GTX', 'NTv2', 'JSON')),
CONSTRAINT check_grid_alternatives_proj_method CHECK (proj_method IN ('hgridshift', 'vgridshift', 'geoid_like', 'geocentricoffset', 'tinshift')),
CONSTRAINT check_grid_alternatives_proj_method CHECK (proj_method IN ('hgridshift', 'vgridshift', 'geoid_like', 'geocentricoffset', 'tinshift', 'velocity_grid')),
CONSTRAINT check_grid_alternatives_inverse_direction CHECK (NOT(proj_method = 'geoid_like' AND inverse_direction = 1)),
CONSTRAINT check_grid_alternatives_package_name CHECK (package_name IS NULL),
CONSTRAINT check_grid_alternatives_direct_download_url CHECK (NOT(direct_download IS NULL AND url IS NOT NULL)),
+6 -6
View File
@@ -352,15 +352,15 @@ INSERT INTO "projected_crs" VALUES('EPSG','2174','Pulkovo 1942(58) / Poland zone
INSERT INTO "usage" VALUES('EPSG','1198','projected_crs','EPSG','2174','EPSG','1518','EPSG','1142');
INSERT INTO "projected_crs" VALUES('EPSG','2175','Pulkovo 1942(58) / Poland zone V',NULL,'EPSG','4530','EPSG','4179','EPSG','18285',NULL,0);
INSERT INTO "usage" VALUES('EPSG','1199','projected_crs','EPSG','2175','EPSG','1519','EPSG','1142');
INSERT INTO "projected_crs" VALUES('EPSG','2176','ETRS89 / Poland CS2000 zone 5',NULL,'EPSG','4531','EPSG','4258','EPSG','18305',NULL,0);
INSERT INTO "projected_crs" VALUES('EPSG','2176','ETRF2000-PL / CS2000/15',NULL,'EPSG','4531','EPSG','9702','EPSG','18305',NULL,0);
INSERT INTO "usage" VALUES('EPSG','1200','projected_crs','EPSG','2176','EPSG','1520','EPSG','1061');
INSERT INTO "projected_crs" VALUES('EPSG','2177','ETRS89 / Poland CS2000 zone 6',NULL,'EPSG','4531','EPSG','4258','EPSG','18306',NULL,0);
INSERT INTO "projected_crs" VALUES('EPSG','2177','ETRF2000-PL / CS2000/18',NULL,'EPSG','4531','EPSG','9702','EPSG','18306',NULL,0);
INSERT INTO "usage" VALUES('EPSG','1201','projected_crs','EPSG','2177','EPSG','1521','EPSG','1061');
INSERT INTO "projected_crs" VALUES('EPSG','2178','ETRS89 / Poland CS2000 zone 7',NULL,'EPSG','4531','EPSG','4258','EPSG','18307',NULL,0);
INSERT INTO "projected_crs" VALUES('EPSG','2178','ETRF2000-PL / CS2000/21',NULL,'EPSG','4531','EPSG','9702','EPSG','18307',NULL,0);
INSERT INTO "usage" VALUES('EPSG','1202','projected_crs','EPSG','2178','EPSG','1522','EPSG','1061');
INSERT INTO "projected_crs" VALUES('EPSG','2179','ETRS89 / Poland CS2000 zone 8',NULL,'EPSG','4531','EPSG','4258','EPSG','18308',NULL,0);
INSERT INTO "projected_crs" VALUES('EPSG','2179','ETRF2000-PL / CS2000/24',NULL,'EPSG','4531','EPSG','9702','EPSG','18308',NULL,0);
INSERT INTO "usage" VALUES('EPSG','1203','projected_crs','EPSG','2179','EPSG','1523','EPSG','1061');
INSERT INTO "projected_crs" VALUES('EPSG','2180','ETRS89 / Poland CS92',NULL,'EPSG','4531','EPSG','4258','EPSG','18300',NULL,0);
INSERT INTO "projected_crs" VALUES('EPSG','2180','ETRF2000-PL / CS92',NULL,'EPSG','4531','EPSG','9702','EPSG','18300',NULL,0);
INSERT INTO "usage" VALUES('EPSG','1204','projected_crs','EPSG','2180','EPSG','1192','EPSG','1210');
INSERT INTO "projected_crs" VALUES('EPSG','2188','Azores Occidental 1939 / UTM zone 25N',NULL,'EPSG','4400','EPSG','4182','EPSG','16025',NULL,0);
INSERT INTO "usage" VALUES('EPSG','1205','projected_crs','EPSG','2188','EPSG','1344','EPSG','1153');
@@ -8667,7 +8667,7 @@ INSERT INTO "projected_crs" VALUES('EPSG','27593','NTF (Paris) / Sud France',NUL
INSERT INTO "usage" VALUES('EPSG','6852','projected_crs','EPSG','27593','EPSG','1733','EPSG','1142');
INSERT INTO "projected_crs" VALUES('EPSG','27594','NTF (Paris) / Corse',NULL,'EPSG','4499','EPSG','4807','EPSG','18094',NULL,1);
INSERT INTO "usage" VALUES('EPSG','6853','projected_crs','EPSG','27594','EPSG','1327','EPSG','1142');
INSERT INTO "projected_crs" VALUES('EPSG','27700','OSGB 1936 / British National Grid',NULL,'EPSG','4400','EPSG','4277','EPSG','19916',NULL,0);
INSERT INTO "projected_crs" VALUES('EPSG','27700','OSGB36 / British National Grid',NULL,'EPSG','4400','EPSG','4277','EPSG','19916',NULL,0);
INSERT INTO "usage" VALUES('EPSG','6854','projected_crs','EPSG','27700','EPSG','4390','EPSG','1142');
INSERT INTO "projected_crs" VALUES('EPSG','28191','Palestine 1923 / Palestine Grid',NULL,'EPSG','4400','EPSG','4281','EPSG','18201',NULL,0);
INSERT INTO "usage" VALUES('EPSG','6855','projected_crs','EPSG','28191','EPSG','1356','EPSG','1142');
+4
View File
@@ -484,6 +484,10 @@ INSERT INTO "vertical_crs" VALUES('EPSG','9458','AVWS height',NULL,'EPSG','6499'
INSERT INTO "usage" VALUES('EPSG','14231','vertical_crs','EPSG','9458','EPSG','4177','EPSG','1264');
INSERT INTO "vertical_crs" VALUES('EPSG','9471','INAGeoid2020 height',NULL,'EPSG','6499','EPSG','1294',0);
INSERT INTO "usage" VALUES('EPSG','14153','vertical_crs','EPSG','9471','EPSG','1122','EPSG','1178');
INSERT INTO "vertical_crs" VALUES('EPSG','9650','Baltic 1986 height',NULL,'EPSG','6499','EPSG','1296',0);
INSERT INTO "usage" VALUES('EPSG','15032','vertical_crs','EPSG','9650','EPSG','3293','EPSG','1178');
INSERT INTO "vertical_crs" VALUES('EPSG','9651','EVRF2007-PL height',NULL,'EPSG','6499','EPSG','1297',0);
INSERT INTO "usage" VALUES('EPSG','15034','vertical_crs','EPSG','9651','EPSG','3293','EPSG','1178');
INSERT INTO "vertical_crs" VALUES('EPSG','9663','EH2000 height',NULL,'EPSG','6499','EPSG','1298',0);
INSERT INTO "usage" VALUES('EPSG','14747','vertical_crs','EPSG','9663','EPSG','3246','EPSG','1178');
INSERT INTO "vertical_crs" VALUES('EPSG','9666','LAS07 height',NULL,'EPSG','6499','EPSG','1299',0);
+4
View File
@@ -208,6 +208,10 @@ INSERT INTO "vertical_datum" VALUES('EPSG','1292','Australian Vertical Working S
INSERT INTO "usage" VALUES('EPSG','14134','vertical_datum','EPSG','1292','EPSG','4177','EPSG','1264');
INSERT INTO "vertical_datum" VALUES('EPSG','1294','Indonesian Geoid 2020',NULL,'2020-01-01',NULL,NULL,0);
INSERT INTO "usage" VALUES('EPSG','14149','vertical_datum','EPSG','1294','EPSG','1122','EPSG','1178');
INSERT INTO "vertical_datum" VALUES('EPSG','1296','Baltic 1986',NULL,'1986-01-01',NULL,NULL,0);
INSERT INTO "usage" VALUES('EPSG','14975','vertical_datum','EPSG','1296','EPSG','3293','EPSG','1178');
INSERT INTO "vertical_datum" VALUES('EPSG','1297','European Vertical Reference Frame 2007 Poland',NULL,'2019-01-01',NULL,NULL,0);
INSERT INTO "usage" VALUES('EPSG','15033','vertical_datum','EPSG','1297','EPSG','3293','EPSG','1178');
INSERT INTO "vertical_datum" VALUES('EPSG','1298','Estonian Height System 2000',NULL,'2005-07-01',NULL,NULL,0);
INSERT INTO "usage" VALUES('EPSG','14743','vertical_datum','EPSG','1298','EPSG','3246','EPSG','1178');
INSERT INTO "vertical_datum" VALUES('EPSG','1299','Lithuanian Height System 2007',NULL,'2005-07-01',NULL,NULL,0);
+2 -1
View File
@@ -32,9 +32,10 @@ set(SQL_FILES
"${SQL_DIR}/deprecation.sql"
"${SQL_DIR}/esri.sql"
"${SQL_DIR}/ignf.sql"
"${SQL_DIR}/nkg.sql"
"${SQL_DIR}/grid_alternatives.sql"
"${SQL_DIR}/grid_alternatives_generated_noaa.sql"
"${SQL_DIR}/customizations.sql"
"${SQL_DIR}/nkg.sql"
"${SQL_DIR}/nkg_post_customizations.sql"
"${SQL_DIR}/commit.sql"
)
@@ -48,6 +48,8 @@ jobs:
run: |
python3 --version
sphinx-build --version
python3 -m pip list --not-required --format=columns
- uses: actions/download-artifact@v2
name: Images
with:
+1 -3
View File
@@ -32,10 +32,8 @@ html: .doxygen_up_to_date
# Undoes the hack done in scripts/doxygen.sh
@sed "s/io::Convention_/io::Convention/g" < $(BUILDDIR)/html/development/reference/cpp/io.html | sed "s/>Convention_/>Convention/g" | sed "s/_WKT2/WKT2/g" | sed "s/_WKT1/WKT1/g" > $(BUILDDIR)/html/development/reference/cpp/io.html.tmp
@mv $(BUILDDIR)/html/development/reference/cpp/io.html.tmp $(BUILDDIR)/html/development/reference/cpp/io.html
# Undoes the hacks of scripts/generate_breathe_friendly_general_doc.py
@sed "s/<em class=\"property\">namespace <\/em>//g" < $(BUILDDIR)/html/development/reference/cpp/cpp_general.html > $(BUILDDIR)/html/development/reference/cpp/cpp_general.html.tmp
@mv $(BUILDDIR)/html/development/reference/cpp/cpp_general.html.tmp $(BUILDDIR)/html/development/reference/cpp/cpp_general.html
@cp -r ../schemas $(BUILDDIR)/html/schemas
@cp ../data/triangulation.schema.json $(BUILDDIR)/html/schemas
@echo
@echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
+16
View File
@@ -0,0 +1,16 @@
name: proj
channels:
- conda-forge
dependencies:
- descartes
- doxygen = 1.9.1
- geojson
- matplotlib
- shapely < 1.8
- pip
- pip:
- breathe
- pybtex
- sphinx-rtd-theme
- sphinxcontrib-bibtex
- sphinxcontrib-spelling
Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

-86
View File
@@ -1,86 +0,0 @@
name: proj
channels:
- defaults
dependencies:
- blas=1.0=mkl
- bzip2=1.0.6=h1de35cc_5
- ca-certificates=2018.03.07=0
- cairo=1.14.12=hc4e6be7_4
- certifi=2018.8.24=py37_1
- click=6.7=py37_0
- click-plugins=1.0.3=py37_1
- cligj=0.4.0=py37_1
- curl=7.61.0=ha441bb4_0
- cycler=0.10.0=py37_0
- descartes=1.1.0=py37_0
- expat=2.2.6=h0a44026_0
- fiona=1.7.12=py37h0dff353_0
- fontconfig=2.13.0=h5d5b041_1
- freetype=2.9.1=hb4e5f40_0
- freexl=1.0.5=h1de35cc_0
- gdal=2.2.4=py37h6440ff4_1
- geos=3.6.2=h5470d99_2
- gettext=0.19.8.1=h15daf44_3
- giflib=5.1.4=h1de35cc_1
- glib=2.56.2=hd9629dc_0
- hdf4=4.2.13=h39711bb_2
- hdf5=1.10.2=hfa1e0ec_1
- icu=58.2=h4b95b61_1
- intel-openmp=2019.0=118
- jpeg=9b=he5867d9_2
- json-c=0.13.1=h3efe00b_0
- kealib=1.4.7=h40e48e4_6
- kiwisolver=1.0.1=py37h0a44026_0
- krb5=1.16.1=h24a3359_6
- libboost=1.67.0=hebc422b_4
- libcurl=7.61.0=hf30b1f0_0
- libcxx=4.0.1=h579ed51_0
- libcxxabi=4.0.1=hebd6815_0
- libdap4=3.19.1=h3d3e54a_0
- libedit=3.1.20170329=hb402a30_2
- libffi=3.2.1=h475c297_4
- libgdal=2.2.4=h7b1ea53_1
- libgfortran=3.0.1=h93005f0_2
- libiconv=1.15=hdd342a3_7
- libkml=1.3.0=hbe12b63_4
- libnetcdf=4.6.1=h4e6abe9_1
- libpng=1.6.34=he12f830_0
- libpq=10.5=hf30b1f0_0
- libspatialite=4.3.0a=ha12ebda_19
- libssh2=1.8.0=h322a93b_4
- libtiff=4.0.9=hcb84e12_2
- libuuid=1.0.3=h6bb4b03_2
- libxml2=2.9.8=hab757c2_1
- matplotlib=2.2.3=py37h54f8f79_0
- mkl=2019.0=118
- mkl_fft=1.0.4=py37h5d10147_1
- mkl_random=1.0.1=py37h5d10147_1
- munch=2.3.2=py37_0
- ncurses=6.1=h0a44026_0
- numpy=1.15.1=py37h6a91979_0
- numpy-base=1.15.1=py37h8a80b8c_0
- openjpeg=2.3.0=hb95cd4c_1
- openssl=1.0.2p=h1de35cc_0
- pcre=8.42=h378b8a2_0
- pip=10.0.1=py37_0
- pixman=0.34.0=hca0a616_3
- poppler=0.65.0=ha097c24_1
- poppler-data=0.4.9=0
- proj4=5.0.1=h1de35cc_0
- pyparsing=2.2.0=py37_1
- python=3.7.0=hc167b69_0
- python-dateutil=2.7.3=py37_0
- pytz=2018.5=py37_0
- readline=7.0=h1de35cc_5
- setuptools=40.2.0=py37_0
- shapely=1.6.4=py37h20de77a_0
- six=1.11.0=py37_1
- sqlite=3.24.0=ha441bb4_0
- tk=8.6.8=ha441bb4_0
- tornado=5.1=py37h1de35cc_0
- wheel=0.31.1=py37_0
- xerces-c=3.2.1=h44e365a_0
- xz=5.2.4=h1de35cc_4
- zlib=1.2.11=hf3cbc9b_2
prefix: /usr/local/miniconda3/envs/proj
Regular → Executable
+91 -54
View File
@@ -1,5 +1,6 @@
#!/usr/bin/env python3
'''
Plot map data in different projections supported by PROJ.4
Plot map data in different projections supported by PROJ.
Call with:
@@ -41,30 +42,28 @@ or "line". The rest of the inputs are fairly free form.
Change PROJ to path on your local system before running the script.
'''
from __future__ import print_function
from __future__ import division
import argparse
import os
import os.path
import shutil
import sys
import json
import subprocess
import functools
from pathlib import Path
import geojson
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.patches import Polygon
import fiona
from shapely.geometry import Polygon
from shapely.geometry import MultiPolygon
from shapely.geometry import MultiPolygon, Polygon, box as Box
from shapely.geometry import shape
from shapely.ops import transform
from descartes import PolygonPatch
PROJ_COMMAND = os.environ.get('PROJ_EXE', '../../src/proj')
if not os.path.exists(PROJ_COMMAND):
PROJ = shutil.which(PROJ_COMMAND)
PROJ = shutil.which('proj')
if PROJ is None:
raise ValueError("specify PROJ_EXE or modify PATH to find proj")
else:
PROJ = PROJ_COMMAND
PROJ_LIB = os.environ.get('PROJ_LIB', '../../data')
@@ -240,31 +239,46 @@ def resample_polygon(polygon):
return Polygon(ext, rings)
def plot_with_interruptions(axes, x, y, delta_cut=1e100, **kwargs):
"""
Plot x/y with proper splitting for interrupted projections.
"""
_x = np.atleast_1d(x)
_y = np.atleast_1d(y)
dx = np.nan_to_num(_x[1: ]) - np.nan_to_num(_x[0: -1])
dy = np.nan_to_num(_y[1: ]) - np.nan_to_num(_y[0: -1])
split, = ((np.abs(dx) > delta_cut) | (np.abs(dy) > delta_cut)).nonzero()
split = np.append(split, _x.size - 1)
split += 1
last_part = 0
for part in split:
axes.plot(x[last_part: part],
y[last_part: part],
**kwargs)
last_part = part
def plotproj(plotdef, data, outdir):
'''
Plot map.
'''
axes = plt.axes()
bounds = (plotdef['lonmin'], plotdef['latmin'], plotdef['lonmax'], plotdef['latmax'])
for geom in data.filter(bbox=bounds):
temp_pol = shape(geom['geometry'])
box = Polygon([
(plotdef['lonmin'], plotdef['latmin']),
(plotdef['lonmin'], plotdef['latmax']),
(plotdef['lonmax'], plotdef['latmax']),
(plotdef['lonmax'], plotdef['latmin']),
])
try:
temp_pol = temp_pol.intersection(box)
except Exception as e:
box = Box(
plotdef['lonmin'], plotdef['latmin'],
plotdef['lonmax'], plotdef['latmax'])
for feat in data["features"]:
geom = shape(feat["geometry"])
if not geom.intersects(box):
continue
temp_pol = geom.intersection(box)
if plotdef['type'] == 'poly':
if isinstance(temp_pol, MultiPolygon):
polys = [resample_polygon(polygon) for polygon in temp_pol]
polys = [resample_polygon(polygon) for polygon in temp_pol.geoms]
pol = MultiPolygon(polys)
else:
pol = resample_polygon(temp_pol)
@@ -282,7 +296,8 @@ def plotproj(plotdef, data, outdir):
pass
else:
x, y = proj_geom.xy
axes.plot(x, y, color=COLOR_COAST, linewidth=0.5)
plot_with_interruptions(axes, x, y, color=COLOR_COAST, linewidth=0.5,
delta_cut=plotdef.get('delta_cut', 1e100))
# Plot frame
frame = [
@@ -293,7 +308,8 @@ def plotproj(plotdef, data, outdir):
line = project(line, plotdef['projstring'])
x = line[:, 0]
y = line[:, 1]
axes.plot(x, y, '-k')
plot_with_interruptions(axes, x, y, color='black', linestyle='-',
delta_cut=plotdef.get('delta_cut', 1e6))
graticule = build_graticule(
plotdef['lonmin'],
@@ -307,7 +323,28 @@ def plotproj(plotdef, data, outdir):
feature = project(feature, plotdef['projstring'])
x = feature[:, 0]
y = feature[:, 1]
axes.plot(x, y, color=COLOR_GRAT, linewidth=0.4)
plot_with_interruptions(axes, x, y, color=COLOR_GRAT, linewidth=0.4,
delta_cut=plotdef.get('delta_cut', 1e6))
# Plot interrupted boundaries if necessary
interrupted_lines = []
if 'top_interrupted_lons' in plotdef:
for lon in plotdef['top_interrupted_lons']:
for delta in [-0.0001, 0.0001]:
merid = meridian(lon + delta, 0.0, plotdef['latmax'])
interrupted_lines.append(project(merid, plotdef['projstring']))
if 'bottom_interrupted_lons' in plotdef:
for lon in plotdef['bottom_interrupted_lons']:
for delta in [-0.0001, 0.0001]:
merid = meridian(lon + delta, plotdef['latmin'], 0)
interrupted_lines.append(project(merid, plotdef['projstring']))
for line in interrupted_lines:
x = line[:, 0]
y = line[:, 1]
plot_with_interruptions(axes, x, y, color=COLOR_GRAT, linewidth=0.4,
delta_cut=plotdef.get('delta_cut', 1e100))
# Switch off the axis lines...
plt.axis('off')
@@ -326,9 +363,12 @@ def plotproj(plotdef, data, outdir):
# Make sure the plot is not stretched
axes.set_aspect('equal')
if not os.path.exists(outdir):
os.makedirs(outdir)
plt.savefig(outdir + '/' + plotdef['filename'],
outdir = Path(outdir)
if not outdir.exists():
outdir.mkdir(parents=True)
if not outdir.is_dir():
raise OSError("outdir is not a directory")
plt.savefig(outdir / plotdef['filename'],
dpi=400,
bbox_inches='tight')
@@ -338,36 +378,22 @@ def plotproj(plotdef, data, outdir):
plt.close()
def main():
def main(plotdefs, outdir, plots=[]):
'''
Main function of plotting script.
Parses json-file with plot setups and runs the plotting
for each plot setup.
'''
plotdefs = json.loads(Path(plotdefs).read_text())
data = {
('line', 'low'): fiona.open(LINE_LOW),
('line', 'med'): fiona.open(LINE_MED),
('poly', 'low'): fiona.open(POLY_LOW),
('poly', 'med'): fiona.open(POLY_MED),
('line', 'low'): geojson.loads(Path(LINE_LOW).read_text()),
('line', 'med'): geojson.loads(Path(LINE_MED).read_text()),
('poly', 'low'): geojson.loads(Path(POLY_LOW).read_text()),
('poly', 'med'): geojson.loads(Path(POLY_MED).read_text()),
}
if os.path.exists(sys.argv[1]):
# first argument is the JSON plot definition setup file
with open(sys.argv[1]) as plotsetup:
plotdefs = json.load(plotsetup)
else:
raise ValueError('No plot definition file entered')
plots = []
# second argument is the output dir
outdir = sys.argv[2]
# subsecond arguments are (optional) names of plot in plotdef.json
if len(sys.argv) > 3:
plots = sys.argv[3:len(sys.argv)]
for i, plotdef in enumerate(plotdefs):
if plots != [] and plotdef['name'] not in plots:
continue
@@ -379,9 +405,20 @@ def main():
plotproj(plotdef, data[(plotdef['type'], plotdef['res'])], outdir)
for key in data:
data[key].close()
if __name__ == "__main__":
sys.exit(main())
parser = argparse.ArgumentParser(
description=__doc__,
formatter_class=argparse.RawDescriptionHelpFormatter)
parser.add_argument(
'plotdefs',
help='A JSON file with setup for each auto-generated plot')
parser.add_argument(
'outdir',
help='Directory to put the plots in.')
parser.add_argument(
'plots', nargs='*',
help='A list of plot names within the plotdefs file. '
'More than one plotname can be given at once.')
args = parser.parse_args()
sys.exit(main(**vars(args)))
-2
View File
@@ -1,2 +0,0 @@
python3 plot.py plotdefs.json images/
+12
View File
@@ -0,0 +1,12 @@
#!/bin/sh
set -e
export PATH="$HOME/.local/bin:$PATH"
export PROJ_LIB="$HOME/.local/share/proj"
cd docs/plot
python plot.py plotdefs.json images
cd ../..
mkdir -p docs/source/operations/projections/images/
cp -r docs/plot/images/* docs/source/operations/projections/images/
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh
set -e
# https://github.com/readthedocs/readthedocs.org/pull/9888
READTHEDOCS_OUTPUT="_readthedocs"
find ${READTHEDOCS_OUTPUT} -type d
READTHEDOCS_OUTPUT_HTML="${READTHEDOCS_OUTPUT}/html"
# Undoes the hack done in scripts/doxygen.sh
sed "s/io::Convention_/io::Convention/g" < ${READTHEDOCS_OUTPUT_HTML}/development/reference/cpp/io.html | sed "s/>Convention_/>Convention/g" | sed "s/_WKT2/WKT2/g" | sed "s/_WKT1/WKT1/g" > ${READTHEDOCS_OUTPUT_HTML}/development/reference/cpp/io.html.tmp
mv ${READTHEDOCS_OUTPUT_HTML}/development/reference/cpp/io.html.tmp ${READTHEDOCS_OUTPUT_HTML}/development/reference/cpp/io.html
# Copy JSON schemas for public consumption
READTHEDOCS_OUTPUT_SCHEMAS="${READTHEDOCS_OUTPUT_HTML}/schemas"
cp -r schemas ${READTHEDOCS_OUTPUT_SCHEMAS}
cp ./data/triangulation.schema.json ${READTHEDOCS_OUTPUT_SCHEMAS}
+9
View File
@@ -0,0 +1,9 @@
#!/bin/sh
set -e
mkdir build
cd build
cmake -GNinja -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=OFF -DCMAKE_INSTALL_PREFIX=$HOME/.local ..
ninja install
+2 -11
View File
@@ -25,7 +25,7 @@ by :c:func:`proj_create`, provided it expresses a coordinate operation
- a proj-string,
- a WKT string,
- an object code (like "EPSG:1671" "urn:ogc:def:coordinateOperation:EPSG::1671"),
- an object name. e.g "ITRF2014 to ETRF2014 (1)". In that case as
- an object name. e.g. "ITRF2014 to ETRF2014 (1)". In that case as
uniqueness is not guaranteed, heuristics are applied to determine the appropriate best match.
- a OGC URN combining references for concatenated operations
(e.g. "urn:ogc:def:coordinateOperation,coordinateOperation:EPSG::3895,coordinateOperation:EPSG::1618")
@@ -242,13 +242,4 @@ Hence, in honour of *cct* (the geodesist) this is :program:`cct` (the program).
**proj(1)**, **cs2cs(1)**, **geod(1)**, **gie(1)**, **projinfo(1)**, **projsync(1)**
Bugs
****
A list of know bugs can be found at https://github.com/OSGeo/PROJ/issues
where new bug reports can be submitted to.
Home page
*********
https://proj.org/
.. include:: common_man.rst
+12
View File
@@ -0,0 +1,12 @@
.. only:: man
Bugs
****
A list of known bugs can be found at https://github.com/OSGeo/PROJ/issues
where new bug reports can be submitted to.
Home page
*********
https://proj.org/
+1 -10
View File
@@ -317,13 +317,4 @@ outputs
**proj(1)**, **cct(1)**, **geod(1)**, **gie(1)**, **projinfo(1)**, **projsync(1)**
Bugs
****
A list of know bugs can be found at https://github.com/OSGeo/PROJ/issues
where new bug reports can be submitted to.
Home page
*********
https://proj.org/
.. include:: common_man.rst
+4 -15
View File
@@ -55,19 +55,17 @@ The following command-line options can appear in any order:
.. option:: -lu
Gives a listing of all the units that may be selected with the *+units=*
option.
option. (Default units are meters.)
.. option:: -f <format>
Where *format* is a printf format string to control the output form of the
geographic coordinate values. The default mode is DMS for geographic
coordinates and ``"%.3f"`` for distance.
geographic coordinate values. The default mode is DMS.
.. option:: -F <format>
Where *format* is a printf format string to control the output form of the distance
value (``-F``). The default mode is DMS for geographic coordinates and
``"%.3f"`` for distance.
value. The default mode is ``"%.3f"``.
.. option:: -w<n>
@@ -202,13 +200,4 @@ Further reading
**proj(1)**, **cs2cs(1)**, **cct(1)**, **gie(1)**, **projinfo(1)**, **projsync(1)**
Bugs
****
A list of know bugs can be found at https://github.com/OSGeo/PROJ/issues
where new bug reports can be submitted to.
Home page
*********
https://proj.org/
.. include:: common_man.rst
+1 -10
View File
@@ -395,13 +395,4 @@ So in honour, and hopefully also in the spirit, of Gerald Ian Evenden
**proj(1)**, **cs2cs(1)**, **cct(1)**, **geod(1)**, **projinfo(1)**, **projsync(1)**
Bugs
****
A list of know bugs can be found at https://github.com/OSGeo/PROJ/issues
where new bug reports can be submitted to.
Home page
*********
https://proj.org/
.. include:: common_man.rst
+1 -10
View File
@@ -216,13 +216,4 @@ data will appear as three lines of::
**cs2cs(1)**, **cct(1)**, **geod(1)**, **gie(1)**, **projinfo(1)**, **projsync(1)**
Bugs
****
A list of know bugs can be found at https://github.com/OSGeo/PROJ/issues
where new bug reports can be submitted to.
Home page
*********
https://proj.org/
.. include:: common_man.rst
+102 -14
View File
@@ -134,7 +134,7 @@ The following control parameters can appear in any order:
Specify how the area of use of coordinate operations found in the database
are compared to the area of use specified explicitly with :option:`--area` or :option:`--bbox`,
or derived implicitly from the area of use of the source and target CRS.
By default, projinfo will only keep coordinate operations whose are of use
By default, :program:`projinfo` will only keep coordinate operations whose are of use
is strictly within the area of interest (``contains`` strategy).
If using the ``intersects`` strategy, the spatial test is relaxed, and any
coordinate operation whose area of use at least partly intersects the
@@ -184,7 +184,7 @@ The following control parameters can appear in any order:
Determine if intermediate (pivot) CRS can be used when researching coordinate
operation between 2 CRS. A typical example is the WGS84 pivot. By default,
projinfo will consider any potential pivot if there is no direct transformation
:program:`projinfo` will consider any potential pivot if there is no direct transformation
( ``if_no_direct_transformation``). If using the ``never`` strategy,
only direct transformations between the source and target CRS will be
used. If using the ``always`` strategy, intermediate CRS will be considered
@@ -239,8 +239,8 @@ The following control parameters can appear in any order:
.. option:: --main-db-path path
Specify the name and path of the database to be used by projinfo. The
default is proj.db in the PROJ resource directories.
Specify the name and path of the database to be used by :program:`projinfo`.
The default is :file:`proj.db` in the PROJ resource directories.
.. option:: --aux-db-path path
@@ -442,6 +442,103 @@ Output:
}
}
.. _projinfo_aux_db_example:
4. Exporting the SQL statements to insert a new CRS in an auxiliary database.
.. code-block:: console
# Get the SQL statements for a custom CRS
projinfo "+proj=merc +lat_ts=5 +datum=WGS84 +type=crs +title=my_crs" --output-id HOBU:MY_CRS -o SQL -q > my_crs.sql
cat my_crs.sql
# Initialize an auxiliary database with the schema of the reference database
echo ".schema" | sqlite3 /path/to/proj.db | sqlite3 aux.db
# Append the content of the definition of HOBU:MY_CRS
sqlite3 aux.db < my_crs.db
# Check that everything works OK
projinfo --aux-db-path aux.db HOBU:MY_CRS
or more simply:
.. code-block:: console
# Create an auxiliary database with the definition of a custom CRS.
projinfo "+proj=merc +lat_ts=5 +datum=WGS84 +type=crs +title=my_crs" --output-id HOBU:MY_CRS --dump-db-structure | sqlite3 aux.db
# Check that everything works OK
projinfo --aux-db-path aux.db HOBU:MY_CRS
Output:
.. code-block:: sql
INSERT INTO geodetic_crs VALUES('HOBU','GEODETIC_CRS_MY_CRS','unknown','','geographic 2D','EPSG','6424','EPSG','6326',NULL,0);
INSERT INTO usage VALUES('HOBU','USAGE_GEODETIC_CRS_MY_CRS','geodetic_crs','HOBU','GEODETIC_CRS_MY_CRS','PROJ','EXTENT_UNKNOWN','PROJ','SCOPE_UNKNOWN');
INSERT INTO conversion VALUES('HOBU','CONVERSION_MY_CRS','unknown','','EPSG','9805','Mercator (variant B)','EPSG','8823','Latitude of 1st standard parallel',5,'EPSG','9122','EPSG','8802','Longitude of natural origin',0,'EPSG','9122','EPSG','8806','False easting',0,'EPSG','9001','EPSG','8807','False northing',0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO usage VALUES('HOBU','USAGE_CONVERSION_MY_CRS','conversion','HOBU','CONVERSION_MY_CRS','PROJ','EXTENT_UNKNOWN','PROJ','SCOPE_UNKNOWN');
INSERT INTO projected_crs VALUES('HOBU','MY_CRS','my_crs','','EPSG','4400','HOBU','GEODETIC_CRS_MY_CRS','HOBU','CONVERSION_MY_CRS',NULL,0);
INSERT INTO usage VALUES('HOBU','USAGE_PROJECTED_CRS_MY_CRS','projected_crs','HOBU','MY_CRS','PROJ','EXTENT_UNKNOWN','PROJ','SCOPE_UNKNOWN');
::
PROJ.4 string:
+proj=merc +lat_ts=5 +lon_0=0 +x_0=0 +y_0=0 +datum=WGS84 +units=m +no_defs +type=crs
WKT2:2019 string:
PROJCRS["my_crs",
BASEGEOGCRS["unknown",
ENSEMBLE["World Geodetic System 1984 ensemble",
MEMBER["World Geodetic System 1984 (Transit)"],
MEMBER["World Geodetic System 1984 (G730)"],
MEMBER["World Geodetic System 1984 (G873)"],
MEMBER["World Geodetic System 1984 (G1150)"],
MEMBER["World Geodetic System 1984 (G1674)"],
MEMBER["World Geodetic System 1984 (G1762)"],
ELLIPSOID["WGS 84",6378137,298.257223563,
LENGTHUNIT["metre",1]],
ENSEMBLEACCURACY[2.0]],
PRIMEM["Greenwich",0,
ANGLEUNIT["degree",0.0174532925199433]],
ID["HOBU","GEODETIC_CRS_MY_CRS"]],
CONVERSION["unknown",
METHOD["Mercator (variant B)",
ID["EPSG",9805]],
PARAMETER["Latitude of 1st standard parallel",5,
ANGLEUNIT["degree",0.0174532925199433],
ID["EPSG",8823]],
PARAMETER["Longitude of natural origin",0,
ANGLEUNIT["degree",0.0174532925199433],
ID["EPSG",8802]],
PARAMETER["False easting",0,
LENGTHUNIT["metre",1],
ID["EPSG",8806]],
PARAMETER["False northing",0,
LENGTHUNIT["metre",1],
ID["EPSG",8807]]],
CS[Cartesian,2],
AXIS["(E)",east,
ORDER[1],
LENGTHUNIT["metre",1]],
AXIS["(N)",north,
ORDER[2],
LENGTHUNIT["metre",1]],
ID["HOBU","MY_CRS"]]
5. Get the WKT representation of EPSG:25832 in the WKT1:GDAL output format and on a single line
.. code-block:: console
projinfo -o WKT1:GDAL --single-line EPSG:25832
Output:
::
WKT1:GDAL string:
PROJCS["ETRS89 / UTM zone 32N",GEOGCS["ETRS89",DATUM["European_Terrestrial_Reference_System_1989",SPHEROID["GRS 1980",6378137,298.257222101,AUTHORITY["EPSG","7019"]],AUTHORITY["EPSG","6258"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4258"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",9],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["EPSG","25832"]]
.. only:: man
@@ -450,13 +547,4 @@ Output:
**cs2cs(1)**, **cct(1)**, **geod(1)**, **gie(1)**, **proj(1)**, **projsync(1)**
Bugs
****
A list of know bugs can be found at https://github.com/OSGeo/PROJ/issues
where new bug reports can be submitted to.
Home page
*********
https://proj.org/
.. include:: common_man.rst
+3 -3
View File
@@ -39,13 +39,13 @@ The following control parameters can appear in any order:
.. option:: --endpoint URL
Defines the URL where to download the master ``files.geojson`` file and then
Defines the URL where to download the master :file:`files.geojson` file and then
the resource files. Defaults to the value set in :ref:`proj-ini`
.. option:: --local-geojson-file FILENAME
Defines the filename for the master GeoJSON files that references resources.
Defaults to ${endpoint}/files.geojson
Defaults to ``${endpoint}/files.geojson``
.. option:: --user-writable-directory
@@ -149,7 +149,7 @@ Examples
Bugs
****
A list of know bugs can be found at https://github.com/OSGeo/PROJ/issues
A list of known bugs can be found at https://github.com/OSGeo/PROJ/issues
where new bug reports can be submitted to.
Bugs specific to resource files should be submitted to
https://github.com/OSGeo/PROJ-data/issues
+1 -1
View File
@@ -139,7 +139,7 @@ Build under scan-build:
If CSA finds errors, they will be emitted during the build. And in which case,
at the end of the build process, scan-build will emit a warning message
indicating errors have been found and how to display the error report. This
is with someling like
is with something like
::
+6 -6
View File
@@ -20,13 +20,13 @@ contributor the community is always very welcoming.
Conference
----------
.. image:: ../../images/foss4g2020.png
:alt: FOSS4G 2020
:target: https://2020.foss4g.org/
.. image:: ../../images/foss4g2021.jpg
:alt: FOSS4G 2021
:target: https://2021.foss4g.org/
`FOSS4G 2020 <https://2020.foss4g.org/>`_ is the leading annual conference for
`FOSS4G 2021 <https://2021.foss4g.org/>`_ is the leading annual conference for
free and open source geospatial software. It will include presentations related
to PROJ, and some of the PROJ development community will be attending. It is the
event for those interested in PROJ, other FOSS geospatial technologies and the
community around them. The conference will be held in Calgary, Canada,
August 24th - August 29th, 2020.
community around them. The conference will due to COVID-19 be held in a virtual
setting September 27th - October 2nd, 2021.
+6 -6
View File
@@ -157,7 +157,7 @@ all classes, except the CoordinateOperation class that point to CRS for
sourceCRS and targetCRS members, whereas DerivedCRS point to a Conversion
instance (which derives from CoordinateOperation). This issue was detected in
the ISO-19111 standard. The solution adopted here is to use std::weak_ptr
in the CoordinateOperation class to avoid the cycle. This design artifact is
in the CoordinateOperation class to avoid the cycle. This design artefact is
transparent to users.
Another important design point is that all ISO19111 objects are immutable after
@@ -215,12 +215,12 @@ On the algorithmic side, a somewhat involved logic is the
CoordinateOperationFactory::createOperations() in `coordinateoperation.cpp`_
that takes a pair of source and target CRS and returns a set of possible
`coordinate operations`_ (either single operations like a Conversion or a
Transformation, or concatenated operations). It uses the intrinsinc structure
Transformation, or concatenated operations). It uses the intrinsic structure
of those objects to create the coordinate operation pipeline. That is, if
going from a ProjectedCRS to another one, by doing first the inverse conversion
from the source ProjectedCRS to its base GeographicCRS, then finding the
appropriate transformation(s) from this base GeographicCRS to the base
GeographicCRS of the target CRS, and then appyling the conversion from this
GeographicCRS of the target CRS, and then applying the conversion from this
base GeographicCRS to the target ProjectedCRS. At each step, it queries the
database to find if one or several transformations are available. The
resulting coordinate operations are filtered, and sorted, with user provided hints:
@@ -238,7 +238,7 @@ resulting coordinate operations are filtered, and sorted, with user provided hin
compared. By default, only transformations whose area of use is fully
contained in the desired area of use are selected. It is also possible
to relax this test by specifying that only an intersection test must be used.
- whether `PROJ transformation grid`_ names should be susbstituted to the
- whether `PROJ transformation grid`_ names should be substituted to the
official names, when a match is found in the `grid_alternatives` table
of the database. Defaults to true
- whether the availability of those grids should be used to filter and sort
@@ -636,7 +636,7 @@ Impacted files
--------------
New files (excluding makefile.am, CMakeLists.txt and other build infrastructure
artifacts):
artefacts):
* include/proj/: Public installed C++ headers
- `common.hpp`_: declarations of osgeo::proj::common namespace.
@@ -853,7 +853,7 @@ Doxygen.
.. _`Spaghetti inheritance diagram`: http://even.rouault.free.fr/proj_cpp_api/html/inherits.html
A basic integration of the Doxygen XML output into the general PROJ
documentation (using reStructuredText format) has been done with the the
documentation (using reStructuredText format) has been done with the
Sphinx extension `Breathe`_, producing:
* `One section with the C++ API`_
+2 -2
View File
@@ -50,7 +50,7 @@ Background
PROJ has traditionally been written in C89. Until recently, no formal
requirements of e.g. build systems has been defined and formally accepted by
the project. :ref:RFC2 <rfc2>` formally introduces dependencies on C++11 and
the project. :ref:`RFC2 <rfc2>` formally introduces dependencies on C++11 and
SQLite 3.7.
In this RFC a rolling update of version or standard requirements is described.
@@ -94,7 +94,7 @@ PROJ uses C89 and C++11. For C, that means that the used standard is three
iterations behind the most recent standard. C++ is two iterations behind.
Following the rules in this RFC the required C standard used in PROJ is at
allowed to be two iterations behind the most recent standard. That means that a
change to C99 is possible, as long as the PROJ PSC aknowledges such a change.
change to C99 is possible, as long as the PROJ PSC acknowledges such a change.
When a new standard for either C or C++ is released PROJ should consider
changing its requirement to the next standard in the line. For C++ that means a
+6 -6
View File
@@ -89,7 +89,7 @@ can build with rather ancient libcurl for similar functionality, we can aim for
libcurl >= 7.29.0 (as being available in RHEL 7).
An alternate pluggable network interface can also be set by the user in case
suppot for libcurl was not built in, or if for the desired context of use, the
support for libcurl was not built in, or if for the desired context of use, the
user wishes to provide the network implementation (a typical use case could be
QGIS that would use its QT-based networking facilities to solve issues with
SSL, proxy, authentication, etc.)
@@ -223,7 +223,7 @@ to limit the number of HTTP GET requests and minimize latency caused by network
access. This is very similar to the behavior of the GDAL
`/vsicurl/ <https://gdal.org/user/virtual_file_systems.html#vsicurl-http-https-ftp-files-random-access>`_
I/O layer. The plan is to mostly copy GDAL's vsicurl implementation inside PROJ, with
needed adjustmeents and proper namespacing of it.
needed adjustments and proper namespacing of it.
A retry strategy (typically a delay with an exponential back-off and some random
jitter) will be added to account for intermittent network or server-side failure.
@@ -403,7 +403,7 @@ and ${LOCALAPPDATA} on Windows builds. Exact details to be sorted out, but
https://github.com/ActiveState/appdirs/blob/a54ea98feed0a7593475b94de3a359e9e1fe8fdb/appdirs.py#L45-L97
can be a good reference.
As this database might be accesse by several threads or processes at the same
As this database might be accessed by several threads or processes at the same
time, the code accessing to it will carefully honour SQLite3 errors regarding
to locks, to do appropriate retries if another thread/process is currently
locking the database. Accesses requiring a modification of the database will
@@ -546,7 +546,7 @@ Strong points:
* TIFF can be tiled.
* TIFF can be compressed. Commonly found compression formats arre DEFLATE, LZW,
* TIFF can be compressed. Commonly found compression formats are DEFLATE, LZW,
combined with differential integer or floating point predictors
* A TIFF image can contain a configurable number of channels/bands/samples.
@@ -602,7 +602,7 @@ Weak points:
* Multi-samples variables are located in different sections of the files
(correspond to TIFF PlanarConfiguration = Separate)
* No natural way of having hiearchical / multigrids. They must be encoded as
* No natural way of having hierarchical / multigrids. They must be encoded as
separate variables
* georeferencing in netCDF is somewhat less standardized than TIFF/GeoTIFF.
@@ -704,7 +704,7 @@ document.
Tooling
+++++++
A script will be deveoped to accept a list of individual grids to combine
A script will be developed to accept a list of individual grids to combine
together into a single file.
A ntv2_to_gtiff.py convenience script will be created to convert NTv2 grids,
+3 -3
View File
@@ -22,7 +22,7 @@ as https://github.com/OSGeo/proj-datumgrid converted in GeoTIFF files. In the
current state, we could have a somewhat inconsistency between users relying on
the proj-datumgrid, proj-datumgrid-[world,northamerica,oceania,europe] packages
of mostly NTv2 and GTX files, and what is shipped through the CDN. Maintaining
two repositories is also a maintaince burden in the long term.
two repositories is also a maintenance burden in the long term.
It is thus desirable to have a single source of truth, and we propose it to be
based on the GeoTIFF grids.
@@ -44,14 +44,14 @@ Summary of work planned by this RFC and related decisions
- Each file will be named according to the following pattern
``${agency_name}_${filename}[.ext]``. For example fr_ign_ntf_r93.tif
This convention should allow packagers, if the need arise, to be able to
split the monolothic package in smaller ones, based on criterion related to
split the monolithic package in smaller ones, based on criterion related to
the country.
The agency name is the one you can see from the directory names at
https://github.com/OSGeo/PROJ-data/.
``${agency_name}`` itself is structure like ``${two_letter_country_code_of_agency_nationality}_${some_abbreviation}``
(with the exception of eur_nkg, for the Nordic Geodetic Commission which
isn't affiliated to a single country but to some european countries, and
isn't affiliated to a single country but to some European countries, and
follows the general scheme)
- https://github.com/OSGeo/proj-datumgrid and related packages will only be
+23 -17
View File
@@ -14,7 +14,6 @@
import sys
import os
import datetime
# If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the
@@ -43,6 +42,14 @@ extensions = [
# Add any paths that contain templates here, relative to this directory.
templates_path = ['_templates']
# BibTeX configuration
bibtex_bibfiles = ['references.bib']
# Spelling configuration
spelling_lang = tokenizer_lang = 'en_GB'
spelling_show_suggestions = False
spelling_ignore_importable_modules = False
# The suffix(es) of source filenames.
# You can specify multiple suffix as a list of string:
# source_suffix = ['.rst', '.md']
@@ -62,29 +69,25 @@ project = 'PROJ'
# See CITATION file
title = 'PROJ coordinate transformation software library'
author = 'PROJ contributors'
now = datetime.datetime.now()
copyright = u'1983-{0}'.format(now.year)
copyright = u'1983-2021'
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
# built documents.
version = '8.0.0'
data_version = '1.5'
# use same |release| as |version|
release = version
version = '8.0'
release = '8.0.1'
data_version = '1.6'
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
#
# This is also used if you do content translation via gettext catalogs.
# Usually you set "language" from the command line for these cases.
language = None
# language = 'en'
# There are two options for replacing |today|: either, you set today to some
# non-false value, then it is used:
#today = ''
today = 'May 2021'
# Else, today_fmt is used as the format for a strftime call.
#today_fmt = '%B %d, %Y'
@@ -188,16 +191,16 @@ html_favicon = '../images/favicon.png'
# so a file named "default.css" will overwrite the builtin "default.css".
html_static_path = ['_static']
htm_css_files = [
'theme_overrides.css', # override wide tables in RTD theme
]
html_context = {
'display_github': True,
'theme_vcs_pageview_mode': 'edit',
'github_user': 'OSGeo',
'github_repo': 'PROJ',
# TODO: edit when switching active branch
'github_version': '/7.2/docs/source/',
'css_files': [
'_static/theme_overrides.css', # override wide tables in RTD theme
],
'github_version': '/8.0/docs/source/',
}
# Add any extra paths that contain custom files (such as robots.txt or
@@ -270,6 +273,8 @@ preamble = r"""
\ifdefined\DeclareUnicodeCharacter
\DeclareUnicodeCharacter{2032}{$'$}% prime
\fi
\usepackage[notbib]{tocbibind}
"""
latex_elements = {
@@ -281,7 +286,8 @@ latex_elements = {
# Additional stuff for the LaTeX preamble.
'preamble': preamble,
'inputenc':'\\usepackage[utf8]{inputenc}'
'inputenc': r'\usepackage[utf8]{inputenc}',
'makeindex': r'\usepackage[columns=1]{idxlayout}\makeindex',
# Latex figure (float) alignment
#'figure_align': 'htbp',
+2 -2
View File
@@ -27,7 +27,7 @@ are maintained in a `separate git repository <https://github.com/OSGeo/proj-datu
.. attention::
The ``projects.h`` header and the functions related to it is considered
The :file:`projects.h` header and the functions related to it is considered
deprecated from version 5.0.0 and onwards. The header has been removed
PROJ in version 6.0.0 released February 1st 2019.
@@ -38,7 +38,7 @@ are maintained in a `separate git repository <https://github.com/OSGeo/proj-datu
.. attention::
The ``proj_api.h`` header and the functions related to it is
The :file:`proj_api.h` header and the functions related to it is
considered deprecated from version 5.0.0 and onwards. The header has been
removed in version 8.0.0 released March 1st 2021.
+41 -40
View File
@@ -109,58 +109,58 @@ Function mapping from old to new API
+---------------------------------------+-------------------------------------------------+
| Old API functions | New API functions |
+=======================================+=================================================+
| pj_fwd | :c:func:`proj_trans` |
| ``pj_fwd`` | :c:func:`proj_trans` |
+---------------------------------------+-------------------------------------------------+
| pj_inv | :c:func:`proj_trans` |
| ``pj_inv`` | :c:func:`proj_trans` |
+---------------------------------------+-------------------------------------------------+
| pj_fwd3 | :c:func:`proj_trans` |
| ``pj_fwd3`` | :c:func:`proj_trans` |
+---------------------------------------+-------------------------------------------------+
| pj_inv3 | :c:func:`proj_trans` |
| ``pj_inv3`` | :c:func:`proj_trans` |
+---------------------------------------+-------------------------------------------------+
| pj_transform | :c:func:`proj_create_crs_to_crs` |
| ``pj_transform`` | :c:func:`proj_create_crs_to_crs` |
| | or :c:func:`proj_create_crs_to_crs_from_pj` + |
| | (:c:func:`proj_normalize_for_visualization` +) |
| | :c:func:`proj_trans`, |
| | :c:func:`proj_trans_array` or |
| | :c:func:`proj_trans_generic` |
+---------------------------------------+-------------------------------------------------+
| pj_init | :c:func:`proj_create` / |
| ``pj_init`` | :c:func:`proj_create` / |
| | :c:func:`proj_create_crs_to_crs` |
+---------------------------------------+-------------------------------------------------+
| pj_init | :c:func:`proj_create` / |
| ``pj_init`` | :c:func:`proj_create` / |
| | :c:func:`proj_create_crs_to_crs` |
+---------------------------------------+-------------------------------------------------+
| pj_free | :c:func:`proj_destroy` |
| ``pj_free`` | :c:func:`proj_destroy` |
+---------------------------------------+-------------------------------------------------+
| pj_is_latlong | :c:func:`proj_get_type` |
| ``pj_is_latlong`` | :c:func:`proj_get_type` |
+---------------------------------------+-------------------------------------------------+
| pj_is_geocent | :c:func:`proj_get_type` |
| ``pj_is_geocent`` | :c:func:`proj_get_type` |
+---------------------------------------+-------------------------------------------------+
| pj_get_def | :c:func:`proj_pj_info` |
| ``pj_get_def`` | :c:func:`proj_pj_info` |
+---------------------------------------+-------------------------------------------------+
| pj_latlong_from_proj | *No direct equivalent*, but can be accomplished |
| ``pj_latlong_from_proj`` | *No direct equivalent*, but can be accomplished |
| | by chaining :c:func:`proj_create`, |
| | :c:func:`proj_crs_get_horizontal_datum` and |
| | :c:func:`proj_create_geographic_crs_from_datum` |
+---------------------------------------+-------------------------------------------------+
| pj_set_finder | :c:func:`proj_context_set_file_finder` |
| ``pj_set_finder`` | :c:func:`proj_context_set_file_finder` |
+---------------------------------------+-------------------------------------------------+
| pj_set_searchpath | :c:func:`proj_context_set_search_paths` |
| ``pj_set_searchpath`` | :c:func:`proj_context_set_search_paths` |
+---------------------------------------+-------------------------------------------------+
| pj_deallocate_grids | *No equivalent* |
| ``pj_deallocate_grids`` | *No equivalent* |
+---------------------------------------+-------------------------------------------------+
| pj_strerrno | *No equivalent* |
| ``pj_strerrno`` | *No equivalent* |
+---------------------------------------+-------------------------------------------------+
| pj_get_errno_ref | :c:func:`proj_errno` |
| ``pj_get_errno_ref`` | :c:func:`proj_errno` |
+---------------------------------------+-------------------------------------------------+
| pj_get_release | :c:func:`proj_info` |
| ``pj_get_release`` | :c:func:`proj_info` |
+---------------------------------------+-------------------------------------------------+
Backward incompatibilities
###############################################################################
Access to the proj_api.h is still possible but requires to define the
Access to the :file:`proj_api.h` is still possible but requires to define the
``ACCEPT_USE_OF_DEPRECATED_PROJ_API_H`` macro.
The emulation of the now deprecated ``+init=epsg:XXXX`` syntax in PROJ 6 is not
@@ -234,9 +234,9 @@ how to use it. First note that in order to go from system A to system B, the old
starts by doing an **inverse** transformation from system A to WGS84, then does a
**forward** transformation from WGS84 to system B.
With ``cs2cs`` being the command line interface to the old API, and ``cct`` being the same
for the new, this example of doing the same thing in both world views will should give
an idea of the differences:
With :program:`cs2cs` being the command line interface to the old API, and
:program:`cct` being the same for the new, this example of doing the same
thing in both world views will should give an idea of the differences:
::
@@ -348,39 +348,40 @@ Function mapping from old to new API
+---------------------------------------+---------------------------------------+
| Old API functions | New API functions |
+=======================================+=======================================+
| pj_fwd | :c:func:`proj_trans` |
| ``pj_fwd`` | :c:func:`proj_trans` |
+---------------------------------------+---------------------------------------+
| pj_inv | :c:func:`proj_trans` |
| ``pj_inv`` | :c:func:`proj_trans` |
+---------------------------------------+---------------------------------------+
| pj_fwd3 | :c:func:`proj_trans` |
| ``pj_fwd3`` | :c:func:`proj_trans` |
+---------------------------------------+---------------------------------------+
| pj_inv3 | :c:func:`proj_trans` |
| ``pj_inv3`` | :c:func:`proj_trans` |
+---------------------------------------+---------------------------------------+
| pj_transform | proj_trans_array or proj_trans_generic|
| ``pj_transform`` | :c:func:`proj_trans_array` or |
| | :c:func:`proj_trans_generic` |
+---------------------------------------+---------------------------------------+
| pj_init | :c:func:`proj_create` |
| ``pj_init`` | :c:func:`proj_create` |
+---------------------------------------+---------------------------------------+
| pj_init_plus | :c:func:`proj_create` |
| ``pj_init_plus`` | :c:func:`proj_create` |
+---------------------------------------+---------------------------------------+
| pj_free | :c:func:`proj_destroy` |
| ``pj_free`` | :c:func:`proj_destroy` |
+---------------------------------------+---------------------------------------+
| pj_is_latlong | :c:func:`proj_angular_output` |
| ``pj_is_latlong`` | :c:func:`proj_angular_output` |
+---------------------------------------+---------------------------------------+
| pj_is_geocent | :c:func:`proj_angular_output` |
| ``pj_is_geocent`` | :c:func:`proj_angular_output` |
+---------------------------------------+---------------------------------------+
| pj_get_def | :c:func:`proj_pj_info` |
| ``pj_get_def`` | :c:func:`proj_pj_info` |
+---------------------------------------+---------------------------------------+
| pj_latlong_from_proj | *No equivalent* |
| ``pj_latlong_from_proj`` | *No equivalent* |
+---------------------------------------+---------------------------------------+
| pj_set_finder | *No equivalent* |
| ``pj_set_finder`` | *No equivalent* |
+---------------------------------------+---------------------------------------+
| pj_set_searchpath | *No equivalent* |
| ``pj_set_searchpath`` | *No equivalent* |
+---------------------------------------+---------------------------------------+
| pj_deallocate_grids | *No equivalent* |
| ``pj_deallocate_grids`` | *No equivalent* |
+---------------------------------------+---------------------------------------+
| pj_strerrno | *No equivalent* |
| ``pj_strerrno`` | *No equivalent* |
+---------------------------------------+---------------------------------------+
| pj_get_errno_ref | :c:func:`proj_errno` |
| ``pj_get_errno_ref`` | :c:func:`proj_errno` |
+---------------------------------------+---------------------------------------+
| pj_get_release | :c:func:`proj_info` |
| ``pj_get_release`` | :c:func:`proj_info` |
+---------------------------------------+---------------------------------------+
+4 -5
View File
@@ -12,8 +12,8 @@ be seen at the end of the section.
See the following sections for more in-depth descriptions of different parts of
the PROJ API or consult the :doc:`API reference <reference/index>` for specifics.
Before the PROJ API can be used it is necessary to include the ``proj.h`` header
file. Here ``stdio.h`` is also included so we can print some text to the screen:
Before the PROJ API can be used it is necessary to include the :file:`proj.h` header
file. Here :file:`stdio.h` is also included so we can print some text to the screen:
.. literalinclude:: ../../../examples/pj_obs_api_mini_demo.c
:language: c
@@ -45,7 +45,7 @@ a string that describes the target CRS and an optional description of the area o
use.
The strings for the source or target CRS may be PROJ strings (``+proj=longlat +datum=WGS84``),
CRS identified by their code (``EPSG:4326`` or ``urn:ogc:def:crs:EPSG::4326``) or
by a well-known text (WKT) string (
by a well-known text (WKT) string:
::
GEOGCRS["WGS 84",
@@ -67,7 +67,6 @@ by a well-known text (WKT) string (
BBOX[-90,-180,90,180]],
ID["EPSG",4326]]
).
The use of PROJ strings to describe a CRS is considered as legacy (one of the
main weakness of PROJ strings is their inability to describe a geodetic datum,
other than the few ones hardcoded in the ``+datum`` parameter).
@@ -115,7 +114,7 @@ projected CRS.
PROJ uses its own data structures for handling coordinates. Here we use a
:c:type:`PJ_COORD` which is easily assigned with the function :c:func:`proj_coord`.
When using +proj=longlat, the order of coordinates is longitude, latitude,
When using ``+proj=longlat``, the order of coordinates is longitude, latitude,
and values are expressed in degrees. If you used instead a EPSG geographic CRS,
like EPSG:4326 (WGS84), it would be latitude, longitude.
@@ -3,5 +3,5 @@
General documentation
---------------------
.. doxygenfile:: general_doc.dox.reworked.h
.. doxygenpage:: general_doc
:project: doxygen_api
+13 -12
View File
@@ -571,7 +571,7 @@ List structures
.. c:member:: const char *ell
Elliptical parameter, e.g. `rf=298.257` or `b=6356772.2`.
Elliptical parameter, e.g. ``rf=298.257`` or ``b=6356772.2``.
.. c:member:: const char *name
@@ -670,8 +670,9 @@ Info structures
Search path for PROJ. List of directories separated by
semicolons (Windows) or colons (non-Windows), e.g.
"C:\\Users\\doctorwho;C:\\OSGeo4W64\\share\\proj".
Grids and init files are looked for in directories in the search path.
``C:\\Users\\doctorwho;C:\\OSGeo4W64\\share\\proj``.
Grids and :ref:`init files <init_files>` are looked for in
directories in the search path.
.. c:type:: PJ_PROJ_INFO
@@ -694,7 +695,7 @@ Info structures
.. c:member:: const char *PJ_PROJ_INFO.id
Short ID of the operation the :c:type:`PJ` object is based on, that is,
what comes afther the ``+proj=`` in a proj-string, e.g. "*merc*".
what comes after the ``+proj=`` in a proj-string, e.g. "*merc*".
.. c:member:: const char *PJ_PROJ_INFO.description
@@ -757,7 +758,7 @@ Info structures
.. c:member:: int PJ_GRID_INFO.n_lat
Number of grid cells in the latitudianl direction.
Number of grid cells in the latitudinal direction.
.. c:member:: double PJ_GRID_INFO.cs_lon
@@ -793,7 +794,7 @@ Info structures
.. c:member:: char PJ_INIT_INFO.version[32]
Version number of init-file, e.g. "*9.0.0*"
Version number of init file, e.g. "*9.0.0*"
.. c:member:: char PJ_INIT_INFO.origin[32]
@@ -801,7 +802,7 @@ Info structures
.. c:member:: char PJ_INIT_INFO.lastupdate
Date of last update of the init-file.
Date of last update of the init file.
.. _error_codes:
@@ -829,7 +830,7 @@ Errors in class PROJ_ERR_INVALID_OP
.. note:: some of them can also be emitted during coordinate transformation,
like PROJ_ERR_INVALID_OP_FILE_NOT_FOUND_OR_INVALID in case the resource loading
is differed until it is really needed.
is deferred until it is really needed.
.. c:macro:: PROJ_ERR_INVALID_OP_WRONG_SYNTAX
@@ -860,16 +861,16 @@ Errors in class PROJ_ERR_COORD_TRANSFM
.. c:macro:: PROJ_ERR_COORD_TRANSFM_INVALID_COORD
Invalid input coordinate. e.g a latitude > 90°.
Invalid input coordinate. e.g. a latitude > 90°.
.. c:macro:: PROJ_ERR_COORD_TRANSFM_OUTSIDE_PROJECTION_DOMAIN
Coordinate is outside of the projection domain. e.g approximate mercator with \|longitude - lon_0\| > 90°,
or iterative convergence method failed.
Coordinate is outside of the projection domain. e.g. approximate mercator
with \|longitude - lon_0\| > 90°, or iterative convergence method failed.
.. c:macro:: PROJ_ERR_COORD_TRANSFM_NO_OPERATION
No operation found, e.g if no match the required accuracy, or if ballpark transformations
No operation found, e.g. if no match the required accuracy, or if ballpark transformations
were asked to not be used and they would be only such candidate.
.. c:macro:: PROJ_ERR_COORD_TRANSFM_OUTSIDE_GRID
@@ -33,7 +33,7 @@ Transformation setup
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
The objects returned by the functions defined in this section have minimal
interaction with the the functions of the
interaction with the functions of the
`C API for ISO-19111 functionality`_, and vice versa. See its introduction
paragraph for more details.
@@ -623,7 +623,13 @@ Distances
Calculate geodesic distance between two points in geodetic coordinates. The
calculated distance is between the two points located on the ellipsoid.
:param P: Transformation object
The coordinates in :c:data:`a` and :c:data:`b` needs to be given as longitude
and latitude in radians. Note that the axis order of the :c:data:`P` object
is not taken into account in this function, so even though a CRS object comes
with axis ordering latitude/longitude coordinates used in this function should
be reordered as longitude/latitude.
:param P: Transformation or CRS object
:type P: const :c:type:`PJ` *
:param PJ_COORD a: Coordinate of first point
:param PJ_COORD b: Coordinate of second point
@@ -635,7 +641,13 @@ Distances
Similar to :c:func:`proj_lp_dist` but also takes the height above the ellipsoid
into account.
:param P: Transformation object
The coordinates in :c:data:`a` and :c:data:`b` needs to be given as longitude
and latitude in radians. Note that the axis order of the :c:data:`P` object
is not taken into account in this function, so even though a CRS object comes
with axis ordering latitude/longitude coordinates used in this function should
be reordered as longitude/latitude.
:param P: Transformation or CRS object
:type P: const :c:type:`PJ` *
:param PJ_COORD a: Coordinate of first point
:param PJ_COORD b: Coordinate of second point
@@ -657,6 +669,27 @@ Distances
:param PJ_COORD b: Second coordinate
:returns: `double` Distance between :c:data:`a` and :c:data:`b` in meters.
.. c:function:: PJ_COORD proj_geod(const PJ *P, PJ_COORD a, PJ_COORD b)
Calculate the geodesic distance as well as forward and reverse azimuth
between two points on the ellipsoid.
The coordinates in :c:data:`a` and :c:data:`b` needs to be given as longitude
and latitude in radians. Note that the axis order of the :c:data:`P` object
is not taken into account in this function, so even though a CRS object comes
with axis ordering latitude/longitude coordinates used in this function should
be reordered as longitude/latitude.
:param P: Transformation or CRS object
:type P: const :c:type:`PJ` *
:param PJ_COORD a: Coordinate of first point
:param PJ_COORD b: Coordinate of second point
:returns: `PJ_COORD` where the first value is the distance between :c:data:`a`
and :c:data:`b` in meters, the second value is the forward azimuth
and the third value is the reverse azimuth. The fourth coordinate
value is unused.
Various
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
@@ -897,7 +930,7 @@ The PJ* objects returned by :c:func:`proj_create_from_wkt`,
:c:func:`proj_create_from_database` and other functions in that section
will have generally minimal interaction with the functions declared in the
previous sections (calling those functions on those objects
will either return an error or default/non-sensical values). The exception is
will either return an error or default/nonsensical values). The exception is
for ISO19111 objects of type CoordinateOperation that can be exported as a
valid PROJ pipeline. In this case, objects will work for example with
:c:func:`proj_trans_generic`.
@@ -7,6 +7,7 @@ Reference
.. toctree::
:maxdepth: 1
macros
datatypes
functions
cpp/index.rst
@@ -0,0 +1,39 @@
.. _macros:
================================================================================
Macros
================================================================================
.. c:macro:: PROJ_VERSION_MAJOR
Major version number, e.g. 8 for PROJ 8.0.1
.. c:macro:: PROJ_VERSION_MINOR
Minor version number, e.g. 0 for PROJ 8.0.1
.. c:macro:: PROJ_VERSION_PATCH
Patch version number, e.g. 1 for PROJ 8.0.1
.. c:macro:: PROJ_COMPUTE_VERSION(maj,min,patch)
.. versionadded:: 8.0.1
Compute the version number from the major, minor and patch numbers.
.. c:macro:: PROJ_VERSION_NUMBER
.. versionadded:: 8.0.1
Total version number, equal to
``PROJ_COMPUTE_VERSION(PROJ_VERSION_MAJOR, PROJ_VERSION_MINOR, PROJ_VERSION_PATCH)``
.. c:macro:: PROJ_AT_LEAST_VERSION(maj,min,patch)
.. versionadded:: 8.0.1
Macro that returns true if the current PROJ version is at least the version
specified by (maj,min,patch)
Equivalent to ``PROJ_VERSION_NUMBER >= PROJ_COMPUTE_VERSION(maj,min,patch)``
+7 -5
View File
@@ -13,9 +13,8 @@ distribution of the source code and various resource file archives. See
Current Release
--------------------------------------------------------------------------------
* **2021-03-01** `proj-8.0.0.tar.gz`_ (`md5`_)
* **2021-03-01** `proj-data-1.5.tar.gz`_
* **PDF Manual** `proj.pdf`_
* **2021-05-05** `proj-8.0.1.tar.gz`_ (`md5`_)
* **2021-05-05** `proj-data-1.6.tar.gz`_
.. note::
@@ -28,6 +27,7 @@ Current Release
Past Releases
--------------------------------------------------------------------------------
* **2021-03-01** `proj-8.0.0.tar.gz`_
* **2021-01-01** `proj-7.2.1.tar.gz`_
* **2020-11-01** `proj-7.2.0.tar.gz`_
* **2020-09-01** `proj-7.1.1.tar.gz`_
@@ -50,6 +50,7 @@ Past Releases
* **2015-09-13** `proj-4.9.2.tar.gz`_
* **2015-03-04** `proj-4.9.1.tar.gz`_
* **2021-03-01** `proj-data-1.5.tar.gz`_
* **2021-01-01** `proj-data-1.4.tar.gz`_
* **2020-11-01** `proj-data-1.3.tar.gz`_
* **2020-09-01** `proj-data-1.2.tar.gz`_
@@ -76,8 +77,9 @@ Past Releases
* **2018-03-01** `proj-datumgrid-oceania-1.1.zip`_
* **2018-03-01** `proj-datumgrid-oceania-1.0.zip`_
.. _`proj-8.0.1.tar.gz`: https://download.osgeo.org/proj/proj-8.0.1.tar.gz
.. _`md5`: https://download.osgeo.org/proj/proj-8.0.1.tar.gz.md5
.. _`proj-8.0.0.tar.gz`: https://download.osgeo.org/proj/proj-8.0.0.tar.gz
.. _`md5`: https://download.osgeo.org/proj/proj-8.0.0.tar.gz.md5
.. _`proj-7.2.1.tar.gz`: https://download.osgeo.org/proj/proj-7.2.1.tar.gz
.. _`proj-7.2.0.tar.gz`: https://download.osgeo.org/proj/proj-7.2.0.tar.gz
.. _`proj-7.1.1.tar.gz`: https://download.osgeo.org/proj/proj-7.1.1.tar.gz
@@ -100,6 +102,7 @@ Past Releases
.. _`proj-4.9.2.tar.gz`: https://download.osgeo.org/proj/proj-4.9.2.tar.gz
.. _`proj-4.9.3.tar.gz`: https://download.osgeo.org/proj/proj-4.9.3.tar.gz
.. _`proj-data-1.6.tar.gz`: https://download.osgeo.org/proj/proj-data-1.6.tar.gz
.. _`proj-data-1.5.tar.gz`: https://download.osgeo.org/proj/proj-data-1.5.tar.gz
.. _`proj-data-1.4.tar.gz`: https://download.osgeo.org/proj/proj-data-1.4.tar.gz
.. _`proj-data-1.3.tar.gz`: https://download.osgeo.org/proj/proj-data-1.3.tar.gz
@@ -126,4 +129,3 @@ Past Releases
.. _`proj-datumgrid-oceania-1.1.zip`: https://download.osgeo.org/proj/proj-datumgrid-oceania-1.1.zip
.. _`proj-datumgrid-oceania-1.2.zip`: https://download.osgeo.org/proj/proj-datumgrid-oceania-1.2.zip
.. _`proj-datumgrid-world-1.0.zip`: https://download.osgeo.org/proj/proj-datumgrid-world-1.0.zip
.. _`proj.pdf`: https://raw.githubusercontent.com/OSGeo/PROJ/gh-pages/proj.pdf
+7 -5
View File
@@ -39,13 +39,15 @@ ETRS89/UTM32N (EPSG:25832) and ETRS89/DKTM1 (EPSG:4093):
$ ./projinfo -s EPSG:25832 -t EPSG:4093 -o PROJ
Candidate operations found: 1
-------------------------------------
Operation n°1:
Operation No. 1:
unknown id, Inverse of UTM zone 32N + DKTM1, 0 m, World
PROJ string:
+proj=pipeline +step +inv +proj=utm +zone=32 +ellps=GRS80
+step +proj=tmerc +lat_0=0 +lon_0=9 +k=0.99998 +x_0=200000 +y_0=-5000000 +ellps=GRS80
+proj=pipeline
+step +inv +proj=utm +zone=32 +ellps=GRS80
+step +proj=tmerc +lat_0=0 +lon_0=9 +k=0.99998 +x_0=200000 +y_0=-5000000
+ellps=GRS80
See the :program:`projinfo` :ref:`documentation <projinfo>` for more info on
how to use it.
@@ -125,7 +127,7 @@ input ordered as latitude/longitude (typically with the EPSG dataset), however,
internally PROJ expects an longitude/latitude ordering for all projections. This
is generally hidden for users but in a few cases it is exposed at the surface
level of PROJ, most prominently in the :program:`proj` utility which expects
longitude/latitude ordering of input date (unless :program:`proj -r` is used).
longitude/latitude ordering of input date (unless :option:`proj -r` is used).
In case of doubt about the axis order of a specific CRS :program:`projinfo` is
able to provide an answer. Simply look up the CRS and examine the axis specification
@@ -181,7 +183,7 @@ was simply known as PROJ. Eventually a new version was released, known
as PROJ.2 in order to distinguish between the two versions. Later on both
PROJ.3 and PROJ.4 was released. By the time PROJ.4 was released the
software had matured enough that a new major version release wasn't an
immediate necesity. PROJ.4 was around for more than 25 years before it
immediate necessity. PROJ.4 was around for more than 25 years before it
again became time for an update. This left the project in a bit of a
conundrum regarding the name. For the majority of the life-time of the product it was known as PROJ.4, but with the release of version 5 the name
was no longer aligned with the version number. As a consequence, it was
+2 -6
View File
@@ -51,12 +51,8 @@ PROJ incorporates `C library for Geodesics
<https://geographiclib.sourceforge.io>`_. This library provides
routines to solve the direct and inverse geodesic problems. Full double
precision accuracy is maintained provided that
:math:`\lvert f\rvert<\frac1{50}`. Refer
to the
`application programming interface
<https://geographiclib.sourceforge.io/1.49/C/geodesic_8h.html>`_
:math:`\lvert f\rvert<\frac1{50}`. Refer to the `application programming interface
<https://geographiclib.sourceforge.io/1.49/C/geodesic_8h.html>`_
for full documentation. A brief summary of the routines is given in
geodesic(3).
+1 -1
View File
@@ -11,7 +11,7 @@ Glossary
For a transformation between two geographic CRS, a ballpark
transformation is a coordinate operation that only takes into account
potential difference of axis orders (long-lat vs lat-long),
units (degree vs grads) and prime meridian (Greewich vs Paris/Rome/other
units (degree vs grads) and prime meridian (Greenwich vs Paris/Rome/other
historic prime meridians). It does not attempt any datum shift, hence
the "ballpark" qualifier in its name. Its accuracy is unknown, and could
lead in some cases to errors of a few hundreds of metres.
-5
View File
@@ -30,8 +30,3 @@ PROJ
You can download the source code for PROJ on the :ref:`download section<download>`
and find links to prepackaged executables in the
:ref:`installation section<install>`.
In addition to this website the PROJ documentation is also available in `PDF`_
form.
.. _`PDF`: https://raw.githubusercontent.com/OSGeo/proj.4/gh-pages/proj.pdf
+6 -4
View File
@@ -58,8 +58,10 @@ software packages. After installation you can use PROJ from the OSGeo4W shell.
To install PROJ do the following:
.. note::
If you have already installed software via OSGeo4W on your computer it is
likely that PROJ is already installed.
If you have already installed software via OSGeo4W on your computer, or if
you have already installed QGIS on your computer, it is likely that PROJ is
already installed. Type "OSGeo4W Shell" in your start menu and check whether
that gives a match.
1. Download either the `32 bit`_ or `64 bit`_ installer.
2. Run the OSGeo4W setup program.
@@ -101,14 +103,14 @@ On Debian and similar systems (e.g. Ubuntu) the APT package manager is used::
Fedora
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
On Fedora the dnf package manager is used::
On Fedora the :program:`dnf` package manager is used::
sudo dnf install proj
Red Hat
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
On Red Hat based system packages are installed with yum::
On Red Hat based system packages are installed with :program:`yum`::
sudo yum install proj
+66 -6
View File
@@ -3,6 +3,66 @@
News
###############################################################################
8.0.1 Release Notes
++++++++++++++++++++++++++++++++++++++++
*May 5th 2021*
Updates
-------
* Database: update to EPSG v10.018 (`#2636 <https://github.com/OSGeo/PROJ/issues/2636>`_)
* Add transformations for CHGeo2004, Swiss geoid model (`#2604 <https://github.com/OSGeo/PROJ/issues/2604>`_)
* Additions to the norwegian NKG2020 transformation (`#2600 <https://github.com/OSGeo/PROJ/issues/2600>`_)
Bug fixes
---------
* :c:func:`pj_vlog()`: fix buffer overflow in case of super lengthy error message (`#2693 <https://github.com/OSGeo/PROJ/issues/2693>`_)
* Revert ":c:func:`proj_create_crs_to_crs_from_pj()`: do not use PROJ_SPATIAL_CRITERION_PARTIAL_INTERSECTION if area is specified" (`#2679 <https://github.com/OSGeo/PROJ/issues/2679>`_)
* UTM: error out when value of ``+zone=`` is not an integer (`#2672 <https://github.com/OSGeo/PROJ/issues/2672>`_)
* :cpp:func:`getCRSInfoList()`: make result order deterministic (by increasing auth_name,
code) (`#2661 <https://github.com/OSGeo/PROJ/issues/2661>`_)
* :cpp:func:`createOperation()`: make sure no to discard deprecated operations if the
replacement uses an unknow grid (`#2623 <https://github.com/OSGeo/PROJ/issues/2623>`_)
* Fix build on Solaris 11.4 (`#2621 <https://github.com/OSGeo/PROJ/issues/2621>`_)
* Add mapping of ESRI Equal_Area projection method to EPSG (`#2612 <https://github.com/OSGeo/PROJ/issues/2612>`_)
* Fix incorrect EPGS extent code for EPSG:7789>EPSG:4976 NKG transformation (`#2599 <https://github.com/OSGeo/PROJ/issues/2599>`_)
* fix wrong capitalization of CHENyx06_ETRS.gsb (`#2597 <https://github.com/OSGeo/PROJ/issues/2597>`_)
* :cpp:func:`createOperations()`: improve handling of vertical transforms when
when compound CRSs are used (`#2592 <https://github.com/OSGeo/PROJ/issues/2592>`_)
* :cpp:func:`CRS::promoteTo3D()`: propagate the extent from the 2D CRS (`#2589 <https://github.com/OSGeo/PROJ/issues/2589>`_)
* :cpp:func:`createFromCRSCodesWithIntermediates()`: improve performance when there is
no match (`#2583 <https://github.com/OSGeo/PROJ/issues/2583>`_)
* Fix :c:func:`proj_clone()` to work on 'meta' coordinate operation ``PJ*`` objects that
can be returned by :c:func:`proj_create_crs_to_crs()` (`#2582 <https://github.com/OSGeo/PROJ/issues/2582>`_)
* add ``PROJ_COMPUTE_VERSION``, ``PROJ_VERSION_NUMBER``,
``PROJ_AT_LEAST_VERSION`` macros (`#2581 <https://github.com/OSGeo/PROJ/issues/2581>`_)
* Make :c:func:`proj_lp_dist()` and :c:func:`proj_geod()` work on a ``PJ*`` CRS object (`#2570 <https://github.com/OSGeo/PROJ/issues/2570>`_)
* Fix gcc 11 ``-Wnonnull`` compilation warnings (`#2559 <https://github.com/OSGeo/PROJ/issues/2559>`_)
* Fix use of uninitialized memory in gie tests (`#2558 <https://github.com/OSGeo/PROJ/issues/2558>`_)
* :c:func:`createOperations()`: fix incorrect height transformation between 3D promoted RGF93 and CH1903+ (`#2555 <https://github.com/OSGeo/PROJ/issues/2555>`_)
8.0.0 Release Notes
++++++++++++++++++++++++++++++++++++++++
*March 1st 2021*
@@ -68,7 +128,7 @@ Updates
Bug fixes
---------
* Do not restrict longitude to [-90;90] range in spherical transver Mercator
* Do not restrict longitude to [-90;90] range in spherical transverse Mercator
forward projection (`#2471 <https://github.com/OSGeo/PROJ/issues/2471>`_)
* :cpp:func:`createOperations()`: fix Compound to Geog3D/Projected3D CRS with non-metre ellipsoidal height (`#2500 <https://github.com/OSGeo/PROJ/issues/2500>`_)
@@ -221,7 +281,7 @@ Bug fixes
Updates
-------
* Added various Brazillian grids to the database (`#2277 <https://github.com/OSGeo/PROJ/issues/2277>`_)
* Added various Brazilian grids to the database (`#2277 <https://github.com/OSGeo/PROJ/issues/2277>`_)
* Added geoid file for Canary Islands to the database (`#2312 <https://github.com/OSGeo/PROJ/issues/2312>`_)
@@ -291,7 +351,7 @@ Updates
* Update to EPSG 9.8.12, ESRI 10.8.1 and import scope and remarks for
conversion (`#2238 <https://github.com/OSGeo/PROJ/issues/2238>`_) (#2267)
* Map the Behrman projection to ``cae`` when converting ESRI CRSes (`#1986 <https://github.com/OSGeo/PROJ/issues/1986>`_)
* Map the Behrmann projection to ``cae`` when converting ESRI CRSes (`#1986 <https://github.com/OSGeo/PROJ/issues/1986>`_)
* Support conversion of Flat_Polar_Quartic projection method (`#1987 <https://github.com/OSGeo/PROJ/issues/1987>`_)
@@ -350,7 +410,7 @@ Updates
* Follow PDAL's CMake RPATH strategy (`#2009 <https://github.com/OSGeo/PROJ/issues/2009>`_)
* WKT import/export: add support for WKT1_ESRI VERTCS synta (`#2024 <https://github.com/OSGeo/PROJ/issues/2024>`_)
* WKT import/export: add support for WKT1_ESRI VERTCS syntax (`#2024 <https://github.com/OSGeo/PROJ/issues/2024>`_)
* :program:`projinfo`: add a ``--hide-ballpark`` option (`#2127 <https://github.com/OSGeo/PROJ/issues/2127>`_)
@@ -790,7 +850,7 @@ Bug fixes
* Database: add an auxiliary concatenated_operation_step table to allow
arbitrary number of steps (`#1696 <https://github.com/OSGeo/PROJ/issues/1696>`_)
* Fix errors running gie-based tests in Debug mode on Windo (`#1688 <https://github.com/OSGeo/PROJ/issues/1688>`_)
* Fix errors running gie-based tests in Debug mode on Window (`#1688 <https://github.com/OSGeo/PROJ/issues/1688>`_)
6.2.1 Release Notes
++++++++++++++++++++++++++++++++++++++++
@@ -1089,7 +1149,7 @@ UPDATES
by adding ``+approx``
(`#404 <https://github.com/OSGeo/proj.4/issues/404>`_)
* Chaged behavior: Default ellipsoid now set to GRS80 (was WGS84) (`#1210 <https://github.com/OSGeo/proj.4/issues/1210>`_)
* Changed behavior: Default ellipsoid now set to GRS80 (was WGS84) (`#1210 <https://github.com/OSGeo/proj.4/issues/1210>`_)
* Allow multiple directories in :envvar:`PROJ_LIB` environment variable (`#1281 <https://github.com/OSGeo/proj.4/issues/1281>`_)
+1 -1
View File
@@ -36,7 +36,7 @@ the body centre to the considered point.
.. note::
This conversion must be distinguished fom the :ref:`cart`
This conversion must be distinguished from the :ref:`cart`
which converts geodetic coordinates to geocentric coordinates in the cartesian
domain.
@@ -30,7 +30,7 @@ However, the parameters below can be used in a declarative manner when used with
.. option:: +datum=<value>
Declare the datum used with the coordinates. See ``cs2cs -l`` for a
Declare the datum used with the coordinates. See ``cs2cs -ld`` for a
list of available datums.
.. option:: +towgs84=<list>
@@ -69,7 +69,7 @@ Geographic CRS to Geographic CRS, with known identifiers
With the above example of two geographic CRS, that have an identified identifier,
(:program:`projinfo` internally resolves NAD27 to EPSG:4267 and NAD83 to EPSG:4269)
the algorithm will first search
in the coordinate operation related tables of the ``proj.db`` if there are records
in the coordinate operation related tables of the :file:`proj.db` if there are records
that list direct transformations between the source and the target CRS. The
transformations typically involve :ref:`Helmert <helmert>`-style operations or datum shift based on
grids (more esoteric operations are possible).
@@ -161,7 +161,7 @@ Geodetic/geographic CRS to Geodetic/geographic CRS, without known identifiers
In a number of situations, the source and/or target CRS do not have an identifier
(WKT without identifier, PROJ string, ..)
The first step is to try to find in the ``proj.db`` a CRS of the same nature of
The first step is to try to find in the :file:`proj.db` a CRS of the same nature of
the CRS to identify and whose name exactly matches the one provided to the
:c:func:`createOperations` method. If there is exactly one match and that the CRS are
"computationally" equivalent, then use the code of the CRS for further computations.
@@ -238,7 +238,7 @@ are equivalent for most purposes.
Candidate operations found: 1
-------------------------------------
Operation n°1:
Operation No. 1:
unknown id, axis order change (geographic3D horizontal) + RGF93 to ETRS89 (1) + Conversion from ETRS89 (geog2D) to ETRS89 (geocentric), 0 m, France
@@ -338,7 +338,7 @@ following results for the AGD84 to GDA2020 coordinate operations lookup:
Candidate operations found: 4
-------------------------------------
Operation n°1:
Operation No. 1:
unknown id, AGD84 to GDA94 (5) + GDA94 to GDA2020 (1), 0.11 m, Australia - AGD84
@@ -357,7 +357,7 @@ following results for the AGD84 to GDA2020 coordinate operations lookup:
+step +proj=axisswap +order=2,1
-------------------------------------
Operation n°2:
Operation No. 2:
unknown id, AGD84 to GDA94 (2) + GDA94 to GDA2020 (1), 1.01 m, Australia - AGD84
@@ -378,7 +378,7 @@ following results for the AGD84 to GDA2020 coordinate operations lookup:
+step +proj=axisswap +order=2,1
-------------------------------------
Operation n°3:
Operation No. 3:
unknown id, AGD84 to GDA94 (5) + GDA94 to GDA2020 (2), 0.15 m, unknown domain of validity
@@ -391,7 +391,7 @@ following results for the AGD84 to GDA2020 coordinate operations lookup:
+step +proj=axisswap +order=2,1
-------------------------------------
Operation n°4:
Operation No. 4:
unknown id, AGD84 to GDA94 (5) + GDA94 to GDA2020 (3), 0.15 m, unknown domain of validity
@@ -424,7 +424,7 @@ If one forces the datum hub to be considered to be EPSG:4326, ones gets:
Candidate operations found: 2
-------------------------------------
Operation n°1:
Operation No. 1:
unknown id, AGD84 to WGS 84 (7) + Inverse of GDA2020 to WGS 84 (2), 4 m, Australia - AGD84
@@ -442,7 +442,7 @@ If one forces the datum hub to be considered to be EPSG:4326, ones gets:
+step +proj=axisswap +order=2,1
-------------------------------------
Operation n°2:
Operation No. 2:
unknown id, AGD84 to WGS 84 (9) + Inverse of GDA2020 to WGS 84 (2), 4 m, Australia - AGD84
@@ -480,7 +480,7 @@ conversions between geographic and geocentric CRS to have a consistent concatena
operation, like the following:
1. GDA94 to GDA2020 (1): from EPSG
2. Conversion from GDA2020 (geog2D) to GDA2020 (geocentric): synthetized by PROJ
3. GDA2020 to WGS 84 (G1762) (1): frmo EPSG
3. GDA2020 to WGS 84 (G1762) (1): from EPSG
4. Conversion from WGS 84 (G1762) (geocentric) to WGS 84 (G1762) (geog2D): synthetized by PROJ
Projected CRS to any target CRS
@@ -500,7 +500,7 @@ particular case. Such transformations are done in 2 steps:
Candidate operations found: 1
-------------------------------------
Operation n°1:
Operation No. 1:
unknown id, Inverse of UTM zone 31N + Inverse of RGF93 to WGS 84 (1), 1 m, France
@@ -531,7 +531,7 @@ between those:
$ projinfo -s "NAVD88 height" -t "NAD83(2011)" -o PROJ --spatial-test intersects
Candidate operations found: 11
-------------------------------------
Operation n°1:
Operation No. 1:
INVERSE(DERIVED_FROM(EPSG)):9229, Inverse of NAD83(2011) to NAVD88 height (3), 0.015 m, USA - CONUS - onshore
@@ -560,7 +560,7 @@ This is implemented by the ``createOperationsVertToVert`` method
Candidate operations found: 3
-------------------------------------
Operation n°1:
Operation No. 1:
unknown id, Inverse of NGVD29 height (ftUS) to NGVD29 depth (ftUS) + NGVD29 height (ftUS) to NGVD29 height (m) + NGVD29 height (m) to NAVD88 height (3), 0.02 m, USA - CONUS east of 89°W - onshore
@@ -568,7 +568,7 @@ This is implemented by the ``createOperationsVertToVert`` method
+proj=pipeline +step +proj=axisswap +order=1,2,-3 +step +proj=unitconvert +z_in=us-ft +z_out=m +step +proj=vgridshift +grids=vertcone.gtx +multiplier=0.001
-------------------------------------
Operation n°2:
Operation No. 2:
unknown id, Inverse of NGVD29 height (ftUS) to NGVD29 depth (ftUS) + NGVD29 height (ftUS) to NGVD29 height (m) + NGVD29 height (m) to NAVD88 height (2), 0.02 m, USA - CONUS 89°W-107°W - onshore
@@ -576,7 +576,7 @@ This is implemented by the ``createOperationsVertToVert`` method
+proj=pipeline +step +proj=axisswap +order=1,2,-3 +step +proj=unitconvert +z_in=us-ft +z_out=m +step +proj=vgridshift +grids=vertconc.gtx +multiplier=0.001
-------------------------------------
Operation n°3:
Operation No. 3:
unknown id, Inverse of NGVD29 height (ftUS) to NGVD29 depth (ftUS) + NGVD29 height (ftUS) to NGVD29 height (m) + NGVD29 height (m) to NAVD88 height (1), 0.02 m, USA - CONUS west of 107°W - onshore
@@ -761,7 +761,7 @@ Example:
Candidate operations found: 1
-------------------------------------
Operation n°1:
Operation No. 1:
unknown id, Inverse of unknown + Transformation from unknown to WGS84 + Inverse of ETRS89 to WGS 84 (1), unknown accuracy, Europe - ETRS89
+1 -1
View File
@@ -1,4 +1,4 @@
.. option:: +R=<value>
Radius of the sphere given in meters. If used in conjunction with ``+ellps``
Radius of the sphere given in meters. If used in conjunction with ``+ellps``,
``+R`` takes precedence.
+1 -1
View File
@@ -57,7 +57,7 @@ Rules for pipelines
Will result in an error.
**2. Pipelines can only be nested if the nested pipeline is defined in an init-file.**
**2. Pipelines can only be nested if the nested pipeline is defined in an init file.**
::
@@ -36,10 +36,6 @@ Options
Use Guam ellipsoidal formulas. Only accurate near the Island of Guam
(:math:`\lambda\approx 144.5^{\circ}`, :math:`\phi\approx 13.5^{\circ}`)
.. include:: ../options/k_0.rst
.. include:: ../options/lat_ts.rst
.. include:: ../options/lat_0.rst
.. include:: ../options/lon_0.rst
+2 -2
View File
@@ -1,7 +1,7 @@
.. _alsk:
********************************************************************************
Modified Stererographics of Alaska
Modified Stereographic of Alaska
********************************************************************************
+---------------------+----------------------------------------------------------+
| **Classification** | Modified azimuthal |
@@ -23,7 +23,7 @@ Modified Stererographics of Alaska
.. figure:: ./images/alsk.png
:width: 500 px
:align: center
:alt: Mod. Stererographics of Alaska
:alt: Modified Stereographic of Alaska
proj-string: ``+proj=alsk``

Some files were not shown because too many files have changed in this diff Show More