logo
Expand description

Low-level bindings for PROJ v9.0.x

This is a *-sys crate; you shouldn’t use its API directly. See the proj crate for general use.

A guide to the functions can be found here: https://proj.org/development/reference/functions.html.

By default, the crate will search for an acceptable existing libproj installation on your system using pkg-config.

If an acceptable installation is not found, proj-sys will attempt to build libproj from source bundled in the crate.

Features

bundled_proj - forces building libproj from source even if an acceptable version could be found on your system. Note that SQLite3 and libtiff must be present on your system if you wish to use this feature, and that it builds libproj without its native network functionality; you will have to implement your own set of callbacks if you wish to make use of them (see the proj crate for an example).

Structs

\brief Structure given description of a celestial body.

\brief Structure given overall description of a CRS.

\brief Structure describing optional parameters for proj_get_crs_list();

File API callbacks

\brief Structure given description of a unit.

Constants

The objects are equivalent for the purpose of coordinate operations. They can differ by the name of their objects, identifiers, other metadata. Parameters may be expressed in different units, provided that the value is (with some tolerance) the same once expressed in a common unit.

Same as EQUIVALENT, relaxed with an exception that the axis order of the base CRS of a DerivedCRS/ProjectedCRS or the axis order of a GeographicCRS is ignored. Only to be used with DerivedCRS/ProjectedCRS/GeographicCRS

All properties are identical.

Deprecated alias for PJ_GUESSED_WKT2_2019

cf osgeo::proj::io::PROJStringFormatter::Convention::PROJ_4

cf osgeo::proj::io::PROJStringFormatter::Convention::PROJ_5

proj_get_type() will never return that type, but PJ_TYPE_GEOGRAPHIC_2D_CRS or PJ_TYPE_GEOGRAPHIC_3D_CRS.

proj_get_type() will never return that type, but PJ_TYPE_GEOGRAPHIC_2D_CRS or PJ_TYPE_GEOGRAPHIC_3D_CRS.

proj_get_type() will never return that type, but PJ_TYPE_GEOGRAPHIC_2D_CRS or PJ_TYPE_GEOGRAPHIC_3D_CRS.

proj_get_type() will never return that type, but PJ_TYPE_GEOGRAPHIC_2D_CRS or PJ_TYPE_GEOGRAPHIC_3D_CRS.

Abstract type, not returned by proj_get_type()

proj_get_type() will never return that type, but PJ_TYPE_GEOGRAPHIC_2D_CRS or PJ_TYPE_GEOGRAPHIC_3D_CRS.

proj_get_type() will never return that type, but PJ_TYPE_GEOGRAPHIC_2D_CRS or PJ_TYPE_GEOGRAPHIC_3D_CRS.

Abstract type, not returned by proj_get_type()

Abstract type, not returned by proj_get_type()

proj_get_type() will never return that type, but PJ_TYPE_GEOGRAPHIC_2D_CRS or PJ_TYPE_GEOGRAPHIC_3D_CRS.

proj_get_type() will never return that type, but PJ_TYPE_GEOGRAPHIC_2D_CRS or PJ_TYPE_GEOGRAPHIC_3D_CRS.

proj_get_type() will never return that type, but PJ_TYPE_GEOGRAPHIC_2D_CRS or PJ_TYPE_GEOGRAPHIC_3D_CRS.

proj_get_type() will never return that type, but PJ_TYPE_GEOGRAPHIC_2D_CRS or PJ_TYPE_GEOGRAPHIC_3D_CRS.

proj_get_type() will never return that type, but PJ_TYPE_GEOGRAPHIC_2D_CRS or PJ_TYPE_GEOGRAPHIC_3D_CRS.

proj_get_type() will never return that type, but PJ_TYPE_GEOGRAPHIC_2D_CRS or PJ_TYPE_GEOGRAPHIC_3D_CRS.

proj_get_type() will never return that type, but PJ_TYPE_GEOGRAPHIC_2D_CRS or PJ_TYPE_GEOGRAPHIC_3D_CRS.

proj_get_type() will never return that type, but PJ_TYPE_GEOGRAPHIC_2D_CRS or PJ_TYPE_GEOGRAPHIC_3D_CRS.

proj_get_type() will never return that type, but PJ_TYPE_GEOGRAPHIC_2D_CRS or PJ_TYPE_GEOGRAPHIC_3D_CRS.

proj_get_type() will never return that type, but PJ_TYPE_GEOGRAPHIC_2D_CRS or PJ_TYPE_GEOGRAPHIC_3D_CRS.

proj_get_type() will never return that type, but PJ_TYPE_GEOGRAPHIC_2D_CRS or PJ_TYPE_GEOGRAPHIC_3D_CRS.

cf osgeo::proj::io::WKTFormatter::Convention::WKT1_ESRI

cf osgeo::proj::io::WKTFormatter::Convention::WKT1_GDAL

cf osgeo::proj::io::WKTFormatter::Convention::WKT2

cf osgeo::proj::io::WKTFormatter::Convention::WKT2_SIMPLIFIED

Deprecated alias for PJ_WKT2_2019

Deprecated alias for PJ_WKT2_2019

cf osgeo::proj::io::WKTFormatter::Convention::WKT2_2019

cf osgeo::proj::io::WKTFormatter::Convention::WKT2_2019_SIMPLIFIED

Test coordinate operation extent against both CRS extent.

Test coordinate operation extent against the intersection of both CRS extent.

Test coordinate operation against the smallest of both CRS extent.

Completely discard an operation if a required grid is missing.

Ignore grid availability at all. Results will be presented as if all grids were available.

Results will be presented as if grids known to PROJ (that is registered in the grid_alternatives table of its database) were available. Used typically when networking is enabled.

Grid availability is only used for sorting results. Operations where some grids are missing will be sorted last.

Only attempt looking for intermediate CRS if there is no direct transformation available.

Only attempt looking for intermediate CRS if there is no direct transformation available.

Create access. File should be truncated to 0-byte if already existing. Equivalent to “w+b”

Read-only access. Equivalent to “rb”

Read-update access. File should be created if not existing. Equivalent to “r+b”

The area of validity of transforms should at least intersect the area of interest.

The area of validity of transforms should strictly contain the are of interest.

Statics

Functions

@cond Doxygen_Suppress

@cond Doxygen_Suppress

@cond Doxygen_Suppress

@cond Doxygen_Suppress

Type Definitions

\brief Object category.

Comparison criterion.

Type of coordinate system.

\brief Guessed WKT “dialect”.

\brief PROJ string version.

\brief Object type.

\brief WKT version.

Specify how source and target CRS extent should be used to restrict candidate operations (only taken into account if no explicit area of interest is specified.

Describe how grid availability is used.

Describe if and how intermediate CRS should be used

Open access / mode

Spatial criterion to restrict candidate operations.

\brief Type representing a NULL terminated list of NULL-terminate strings.

Callback to resolve a filename to a full path

Network access: close callback

Network access: get HTTP headers

Network access: open callback

Network access: read range

Unions