diff options
| author | Even Rouault <even.rouault@spatialys.com> | 2020-01-22 18:31:26 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-01-22 18:31:26 +0100 |
| commit | db31b6dfa9c8fe37d5706d95ce81012b8db3c3b9 (patch) | |
| tree | dc592c2b56f8af476c42a51f5dbc6ee04fabc280 /docs/source/usage/projjson.rst | |
| parent | 1ad703a58ce1867fe2ede96ebced1bdec9c63d65 (diff) | |
| download | PROJ-db31b6dfa9c8fe37d5706d95ce81012b8db3c3b9.tar.gz PROJ-db31b6dfa9c8fe37d5706d95ce81012b8db3c3b9.zip | |
Merge RFC4 (#1865)
This commit is the result of the squashing of rfc4_dev branch in a single
commit. It implements mostly RFC 4 related work.
* Grid handling:
- remove obsolete and presumably unfinished implementation of grid catalog functionality
- all grid functionality is in grids.cpp/.hpp
- vertical and horizontal grid shift: rework to no longer load whole grid into memory
- remove hgrids and vgrids member from PJ structure, and store them in hgridshift/vgridshift/deformation structures
- build systems: add optional libtiff dependency. Must be explicitly disabled if not desired
- add support for horizontal and vertical grids in GeoTIFF, if libtiff is available
- add GenericShiftGridSet and GenericShiftGrid classes, relying on TIFF grids, that can be used for generic purpose grid-based adjustment
- add a +proj=xyzgridshift method to perform geocentric translation by grid. Used for French NTF to RGF93 transformation using gr3df97a.tif grid
- deformation: add support for +grids= for GeoTIFF grids
- horizontal grid shift: fix failures on points slightly outside a subgrid (fixes #209)
* File management:
- add a filemanager.cpp/.hpp to deal with file related work
- test for legacy proj_api.h fileapi
- proj.h: add proj_context_set_fileapi() and proj_context_set_sqlite3_vfs_name() (fixes #866)
- add capability to read resource files from the user writable directory
* Network access:
- build systems: add optional curl dependency
- add a curl-based default implementation for network related functionality
- proj.h: add C API to control network functionality, and optionaly provide network callbacks
- add data/proj.ini with default settings
- add a SQLite3 local cache of downloaded chunks
- add proj_is_download_needed() and proj_download_file()
* Use Win32 Unicode APIs and expect all strings to be UTF-8 (fixes #1765)
For backward compatibility, if PROJ_LIB content is found to be not UTF-8 or
pointing to a non existing directory, then an attempt at interpretating it
in the ANSI page encoding is done.
proj_context_set_search_paths() now assumes strings to be in UTF-8, and
functions returning paths will also return values in UTF-8.
Diffstat (limited to 'docs/source/usage/projjson.rst')
| -rw-r--r-- | docs/source/usage/projjson.rst | 267 |
1 files changed, 0 insertions, 267 deletions
diff --git a/docs/source/usage/projjson.rst b/docs/source/usage/projjson.rst deleted file mode 100644 index 6bcce585..00000000 --- a/docs/source/usage/projjson.rst +++ /dev/null @@ -1,267 +0,0 @@ -.. _projjson: - -================================================================================ -PROJJSON -================================================================================ - -PROJJSON is a JSON encoding of -`WKT2:2019 / ISO-19162:2019 <http://docs.opengeospatial.org/is/18-010r7/18-010r7.html>`_, -which itself implements the model of -`OGC Topic 2: Referencing by coordinates <http://docs.opengeospatial.org/as/18-005r4/18-005r4.html>`_. -Apart from the difference of encodings, the semantics is intended to be exactly -the same as WKT2:2019. - -PROJJSON is available as input and output of PROJ since PROJ 6.2. - -The current version is 0.2. - -Schema ------- - -A JSON schema of its grammar is available at -https://proj.org/schemas/v0.2/projjson.schema.json - -History -------- - -* v0.2: addition of geoid_model in VerticalCRS object. -* v0.1: initial version for PROJ 6.2 - -Content -------- - -The high level objects are: - -* Coordinate Reference Systems (CRS): - - - Common ones: - - + ``GeographicCRS`` - + ``GeodeticCRS`` - + ``ProjectedCRS`` - + ``CompoundCRS`` - + ``BoundCRS`` - - - More esoteric ones: - - + ``VerticalCRS`` - + ``EngineeringCRS`` - + ``TemporalCRS`` - + ``ParametricCRS`` - + ``DerivedGeographicCRS`` - + ``DerivedGeodeticCRS`` - + ``DerivedProjectedCRS`` - + ``DerivedVerticalCRS`` - + ``DerivedEngineeringCRS`` - + ``DerivedTemporalCRS`` - + ``DerivedParametricCRS`` - -* Coordinate operations: - - - ``Transformation`` - - ``Conversion`` - - ``ConcatenatedOperation`` - -* Others: - - - ``PrimeMeridian`` - - ``Ellipsoid`` - - ``Datum`` - - ``DatumEnsemble`` - -Examples --------- - -GeographicCRS -+++++++++++++ - -The following invokation - -:: - - projinfo EPSG:4326 -o PROJJSON -q - -will output: - -.. code-block:: json - - { - "$schema": "https://proj.org/schemas/v0.1/projjson.schema.json", - "type": "GeographicCRS", - "name": "WGS 84", - "datum": { - "type": "GeodeticReferenceFrame", - "name": "World Geodetic System 1984", - "ellipsoid": { - "name": "WGS 84", - "semi_major_axis": 6378137, - "inverse_flattening": 298.257223563 - } - }, - "coordinate_system": { - "subtype": "ellipsoidal", - "axis": [ - { - "name": "Geodetic latitude", - "abbreviation": "Lat", - "direction": "north", - "unit": "degree" - }, - { - "name": "Geodetic longitude", - "abbreviation": "Lon", - "direction": "east", - "unit": "degree" - } - ] - }, - "area": "World", - "bbox": { - "south_latitude": -90, - "west_longitude": -180, - "north_latitude": 90, - "east_longitude": 180 - }, - "id": { - "authority": "EPSG", - "code": 4326 - } - } - - -ProjectedCRS -++++++++++++ - -The following invokation - -:: - - projinfo EPSG:32631 -o PROJJSON -q - -will output: - -.. code-block:: json - - { - "$schema": "https://proj.org/schemas/v0.1/projjson.schema.json", - "type": "ProjectedCRS", - "name": "WGS 84 / UTM zone 31N", - "base_crs": { - "name": "WGS 84", - "datum": { - "type": "GeodeticReferenceFrame", - "name": "World Geodetic System 1984", - "ellipsoid": { - "name": "WGS 84", - "semi_major_axis": 6378137, - "inverse_flattening": 298.257223563 - } - }, - "coordinate_system": { - "subtype": "ellipsoidal", - "axis": [ - { - "name": "Geodetic latitude", - "abbreviation": "Lat", - "direction": "north", - "unit": "degree" - }, - { - "name": "Geodetic longitude", - "abbreviation": "Lon", - "direction": "east", - "unit": "degree" - } - ] - }, - "id": { - "authority": "EPSG", - "code": 4326 - } - }, - "conversion": { - "name": "UTM zone 31N", - "method": { - "name": "Transverse Mercator", - "id": { - "authority": "EPSG", - "code": 9807 - } - }, - "parameters": [ - { - "name": "Latitude of natural origin", - "value": 0, - "unit": "degree", - "id": { - "authority": "EPSG", - "code": 8801 - } - }, - { - "name": "Longitude of natural origin", - "value": 3, - "unit": "degree", - "id": { - "authority": "EPSG", - "code": 8802 - } - }, - { - "name": "Scale factor at natural origin", - "value": 0.9996, - "unit": "unity", - "id": { - "authority": "EPSG", - "code": 8805 - } - }, - { - "name": "False easting", - "value": 500000, - "unit": "metre", - "id": { - "authority": "EPSG", - "code": 8806 - } - }, - { - "name": "False northing", - "value": 0, - "unit": "metre", - "id": { - "authority": "EPSG", - "code": 8807 - } - } - ] - }, - "coordinate_system": { - "subtype": "Cartesian", - "axis": [ - { - "name": "Easting", - "abbreviation": "E", - "direction": "east", - "unit": "metre" - }, - { - "name": "Northing", - "abbreviation": "N", - "direction": "north", - "unit": "metre" - } - ] - }, - "area": "World - N hemisphere - 0°E to 6°E - by country", - "bbox": { - "south_latitude": 0, - "west_longitude": 0, - "north_latitude": 84, - "east_longitude": 6 - }, - "id": { - "authority": "EPSG", - "code": 32631 - } - } |
