PROJ C++ API
|
A coordinate reference system associated with a geodetic reference frame and a three-dimensional Cartesian or spherical coordinate system. More...
#include <crs.hpp>
Public Member Functions | |
const datum::GeodeticReferenceFramePtr & | datum () PROJ_CONST_DECL |
Return the datum::GeodeticReferenceFrame associated with the CRS. More... | |
const datum::PrimeMeridianNNPtr & | primeMeridian () PROJ_CONST_DECL |
Return the PrimeMeridian associated with the GeodeticReferenceFrame or with one of the GeodeticReferenceFrame of the datumEnsemble(). More... | |
const datum::EllipsoidNNPtr & | ellipsoid () PROJ_CONST_DECL |
Return the ellipsoid associated with the GeodeticReferenceFrame or with one of the GeodeticReferenceFrame of the datumEnsemble(). More... | |
const std::vector< operation::PointMotionOperationNNPtr > & | velocityModel () PROJ_CONST_DECL |
Return the velocity model associated with the CRS. More... | |
bool | isGeocentric () PROJ_CONST_DECL |
Return whether the CRS is a geocentric one. More... | |
bool | isEquivalentTo (const util::IComparable *other, util::IComparable::Criterion criterion=util::IComparable::Criterion::STRICT) const override |
Returns whether an object is equivalent to another one. More... | |
CRSNNPtr | shallowClone () const override |
Return a shallow clone of this object. | |
Public Member Functions inherited from osgeo::proj::crs::SingleCRS | |
const datum::DatumPtr & | datum () PROJ_CONST_DECL |
Return the datum::Datum associated with the CRS. More... | |
const datum::DatumEnsemblePtr & | datumEnsemble () PROJ_CONST_DECL |
Return the datum::DatumEnsemble associated with the CRS. More... | |
const cs::CoordinateSystemNNPtr & | coordinateSystem () PROJ_CONST_DECL |
Return the cs::CoordinateSystem associated with the CRS. More... | |
Public Member Functions inherited from osgeo::proj::crs::CRS | |
GeodeticCRSPtr | extractGeodeticCRS () const |
Return the GeodeticCRS of the CRS. More... | |
GeographicCRSPtr | extractGeographicCRS () const |
Return the GeographicCRS of the CRS. More... | |
VerticalCRSPtr | extractVerticalCRS () const |
Return the VerticalCRS of the CRS. More... | |
CRSNNPtr | createBoundCRSToWGS84IfPossible (io::DatabaseContextPtr dbContext) const |
Returns potentially a BoundCRS, with a transformation to EPSG:4326, wrapping this CRS. More... | |
CRSNNPtr | stripVerticalComponent () const |
Returns a CRS whose coordinate system does not contain a vertical component. More... | |
const BoundCRSPtr & | canonicalBoundCRS () PROJ_CONST_DECL |
Return the BoundCRS potentially attached to this CRS. More... | |
Public Member Functions inherited from osgeo::proj::common::ObjectUsage | |
const std::vector< ObjectDomainNNPtr > & | domains () PROJ_CONST_DECL |
Return the domains of the object. | |
Public Member Functions inherited from osgeo::proj::common::IdentifiedObject | |
const metadata::IdentifierNNPtr & | name () PROJ_CONST_DECL |
Return the name of the object. More... | |
const std::string & | nameStr () PROJ_CONST_DECL |
Return the name of the object. More... | |
const std::vector< metadata::IdentifierNNPtr > & | identifiers () PROJ_CONST_DECL |
Return the identifier(s) of the object. More... | |
const std::vector< util::GenericNameNNPtr > & | aliases () PROJ_CONST_DECL |
Return the alias(es) of the object. | |
const std::string & | remarks () PROJ_CONST_DECL |
Return the remarks. | |
bool | isDeprecated () PROJ_CONST_DECL |
Return whether the object is deprecated. More... | |
std::string | alias () PROJ_CONST_DECL |
Return the (first) alias of the object as a string. More... | |
int | getEPSGCode () PROJ_CONST_DECL |
Return the EPSG code. More... | |
bool | isEPSG (int code) PROJ_CONST_DECL |
Return whether the object has a identifiers() in the EPSG code space. | |
Public Member Functions inherited from osgeo::proj::io::IWKTExportable | |
std::string | exportToWKT (WKTFormatter *formatter) const |
Public Member Functions inherited from osgeo::proj::io::IPROJStringExportable | |
std::string | exportToPROJString (PROJStringFormatter *formatter) const |
Builds a PROJ string representation. More... | |
Static Public Attributes | |
static const GeodeticCRSNNPtr | EPSG_4978 |
EPSG:4978 / "WGS 84" Geocentric. | |
Static Public Attributes inherited from osgeo::proj::common::ObjectUsage | |
static const std::string | SCOPE_KEY |
Key to set the scope of a common::ObjectUsage. More... | |
static const std::string | DOMAIN_OF_VALIDITY_KEY |
Key to set the domain of validity of a common::ObjectUsage. More... | |
static const std::string | OBJECT_DOMAIN_KEY |
Key to set the object domain(s) of a common::ObjectUsage. More... | |
Static Public Attributes inherited from osgeo::proj::common::IdentifiedObject | |
static const std::string | NAME_KEY |
Key to set the name of a common::IdentifiedObject. More... | |
static const std::string | IDENTIFIERS_KEY |
Key to set the identifier(s) of a common::IdentifiedObject. More... | |
static const std::string | ALIAS_KEY |
Key to set the alias(es) of a common::IdentifiedObject. More... | |
static const std::string | REMARKS_KEY |
Key to set the remarks of a common::IdentifiedObject. More... | |
static const std::string | DEPRECATED_KEY |
Key to set the deprecation flag of a common::IdentifiedObject. More... | |
Additional Inherited Members | |
Public Types inherited from osgeo::proj::util::IComparable | |
enum | Criterion { Criterion::STRICT, Criterion::EQUIVALENT } |
Comparison criterion. More... | |
A coordinate reference system associated with a geodetic reference frame and a three-dimensional Cartesian or spherical coordinate system.
If the geodetic reference frame is dynamic or if the geodetic CRS has an association to a velocity model then the geodetic CRS is dynamic, else it is static.
|
static |
Instanciate a GeodeticCRS from a datum::GeodeticReferenceFrame and a cs::SphericalCS.
properties | See General properties. At minimum the name should be defined. |
datum | The datum of the CRS. |
cs | a SphericalCS. |
|
static |
Instanciate a GeodeticCRS from a datum::GeodeticReferenceFrame and a cs::CartesianCS.
properties | See General properties. At minimum the name should be defined. |
datum | The datum of the CRS. |
cs | a CartesianCS. |
|
static |
Instanciate a GeodeticCRS from a datum::GeodeticReferenceFrame or datum::DatumEnsemble and a cs::SphericalCS.
One and only one of datum or datumEnsemble should be set to a non-null value.
properties | See General properties. At minimum the name should be defined. |
datum | The datum of the CRS, or nullptr |
datumEnsemble | The datum ensemble of the CRS, or nullptr. |
cs | a SphericalCS. |
|
static |
Instanciate a GeodeticCRS from a datum::GeodeticReferenceFrame or datum::DatumEnsemble and a cs::CartesianCS.
One and only one of datum or datumEnsemble should be set to a non-null value.
properties | See General properties. At minimum the name should be defined. |
datum | The datum of the CRS, or nullptr |
datumEnsemble | The datum ensemble of the CRS, or nullptr. |
cs | a CartesianCS |
const datum::GeodeticReferenceFramePtr & osgeo::proj::crs::GeodeticCRS::datum | ( | ) |
Return the datum::GeodeticReferenceFrame associated with the CRS.
const datum::EllipsoidNNPtr & osgeo::proj::crs::GeodeticCRS::ellipsoid | ( | ) |
Return the ellipsoid associated with the GeodeticReferenceFrame or with one of the GeodeticReferenceFrame of the datumEnsemble().
|
overridevirtual |
Returns whether an object is equivalent to another one.
other | other object to compare to |
criterion | comparaison criterion. |
Reimplemented from osgeo::proj::common::ObjectUsage.
Reimplemented in osgeo::proj::crs::DerivedGeographicCRS, and osgeo::proj::crs::DerivedGeodeticCRS.
bool osgeo::proj::crs::GeodeticCRS::isGeocentric | ( | ) |
Return whether the CRS is a geocentric one.
A geocentric CRS is a geodetic CRS that has a Cartesian coordinate system with three axis, whose direction is respectively cs::AxisDirection::GEOCENTRIC_X, cs::AxisDirection::GEOCENTRIC_Y and cs::AxisDirection::GEOCENTRIC_Z.
const datum::PrimeMeridianNNPtr & osgeo::proj::crs::GeodeticCRS::primeMeridian | ( | ) |
Return the PrimeMeridian associated with the GeodeticReferenceFrame or with one of the GeodeticReferenceFrame of the datumEnsemble().
const std::vector< operation::PointMotionOperationNNPtr > & osgeo::proj::crs::GeodeticCRS::velocityModel | ( | ) |
Return the velocity model associated with the CRS.