| Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
control where coordinate operations are looked for (fixes #2442)
|
|
Removes proj_api.h from the public API. The contents of the header file
has been moved to proj_internal.h verbatim and any references to
proj_api.h has been changed to proj_internal.h.
The documentation of proj_api.h has been removed. The only exception to
this is the API migration guides which still mention the old API.
Fixes #837
|
|
Fixes #2382
|
|
|
|
|
|
|
|
duplication of info (current .rst content is outdated)
|
|
|
|
Those changes are also compatible with Sphinx 2.x
The use of .. cpp:enumerator:: for a C enum is questionable,
but .. c:member:: no longer works in Sphinx 3 for the value of
a C enum, but .. c:enumerator:: is Sphinx 3 only
( https://www.sphinx-doc.org/en/master/usage/restructuredtext/domains.html#directive-c-enumerator )
Sphinx 3 is also more strict with the use of cross-reference
to C types. It rejects cross-references to things like
`` :c:type:`int` `` since this isn't a type we actually define.
|
|
proj_context_get_user_writable_directory to proj.h (#2162)
Fixes #2028
|
|
Equivalent to proj_angular_input() and proj_angular_output() but
checking for degree units instead. proj_create_crs_to_crs() rarely, if
ever, returns pipelines that has radians as input or output so using
proj_angular_*() is not a useful check for io units of pipelines.
These two new functions should make life a bit easier for users that
generally store there angular coordinates in radians.
Closes #2027
|
|
|
|
https://github.com/OSGeo/PROJ/issues/2032 (#2037)
|
|
|
|
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.
|
|
termination
|
|
I've been frustrated a number of times with proj_create_crs_to_crs()
not accepting a PJ* object for the source and target CRS.
And thus constraining to go back to WKT2 in a artificial way.
|
|
Doc: update quickstart with PROJ 6 API + add PROJ 4->6 migration guide (fixes #1403)
|
|
from their components
Support following syntaxes:
- OGC URN combining references for compoundCRS:
e.g. "urn:ogc:def:crs,crs:EPSG::2393,crs:EPSG::5717"
- its GDAL shortcut: e.g. "EPSG:2393+5717"
- OGC URN combining references for concatenated operations:
e.g. "urn:ogc:def:coordinateOperation,coordinateOperation:EPSG::3895,coordinateOperation:EPSG::1618"
|
|
|
|
|
|
|
|
until proj_trans() is called (fixes #1229)
|
|
|
|
proj_create_crs_to_crs() (refs #1223)
|
|
make proj_create() do more or less what proj_create_from_user_input() did before (fixes #1214)
|
|
vs the ones of the C++ API (fixes #1213) (#1215)
|
|
The rest of the C API is structured such that type definitions goes into
one page and functions to another. This commit makes sure the same is
done for the C bindings to the ISO19111 C++ API by defining two doxygen
groups in proj.h, which is then organized into the proper pages with
Sphinx and breathe.
|
|
This work mostly consists of:
- a C++ implementation of the ISO-19111:2018 / OGC Topic 2
"Referencing by coordinates" classes to represent Datums,
Coordinate systems, CRSs (Coordinate Reference Systems) and
Coordinate Operations.
- methods to convert between this C++ modeling and WKT1, WKT2
and PROJ string representations of those objects
- management and query of a SQLite3 database of CRS and Coordinate Operation definition
- a C API binding part of those capabilities
This is all-in-one squashed commit of the work of
https://github.com/OSGeo/proj.4/pull/1040
|
|
Closes #1107
|
|
With projects.h not being available to outside users anymore we need to
define PJ_UNITS, PJ_ELLPS, PJ_PRIME_MERIDIANS and PJ_OPERATIONS
elsewhere.
Related pj_get_*_ref() functions have been removed in favour
of their proj_ namespaced counterparts.
char pointers have been changed to const char pointers.
Resolves #983
Resolved #1147
Make char pointers const
|
|
|
|
|
|
This was left out when documented the various proj_create_*
functions. Added proj_context_errno description as well
since it was undocumented and is needed when creating PJs
for a specific context.
|
|
|
|
|
|
|
|
Add proj_errno_string function
|
|
Equivalent to pj_strerrno.
|