PROJ C++ API
|
Abstract class for a mathematical operation on coordinates. More...
#include <coordinateoperation.hpp>
Public Member Functions | |
const util::optional< std::string > & | operationVersion () const |
Return the version of the coordinate transformation (i.e. instantiation due to the stochastic nature of the parameters). More... | |
const std::vector< metadata::PositionalAccuracyNNPtr > & | coordinateOperationAccuracies () const |
Return estimate(s) of the impact of this coordinate operation on point accuracy. More... | |
const crs::CRSPtr | sourceCRS () const |
Return the source CRS of this coordinate operation. More... | |
const crs::CRSPtr | targetCRS () const |
Return the target CRS of this coordinate operation. More... | |
const crs::CRSPtr & | interpolationCRS () const |
Return the interpolation CRS of this coordinate operation. More... | |
const util::optional< common::DataEpoch > & | sourceCoordinateEpoch () const |
Return the source epoch of coordinates. More... | |
const util::optional< common::DataEpoch > & | targetCoordinateEpoch () const |
Return the target epoch of coordinates. More... | |
virtual CoordinateOperationNNPtr | inverse () const =0 |
Return the inverse of the coordinate operation. More... | |
virtual std::set< GridDescription > | gridsNeeded (const io::DatabaseContextPtr &databaseContext) const =0 |
Return grids needed by an operation. | |
bool | isPROJInstanciable (const io::DatabaseContextPtr &databaseContext) const |
Return whether a coordinate operation can be instanciated as a PROJ pipeline, checking in particular that referenced grids are available. | |
Public Member Functions inherited from osgeo::proj::common::ObjectUsage | |
const std::vector< ObjectDomainNNPtr > & | domains () PROJ_CONST_DECL |
Return the domains of the object. | |
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... | |
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... | |
Additional Inherited Members | |
Public Types inherited from osgeo::proj::util::IComparable | |
enum | Criterion { Criterion::STRICT, Criterion::EQUIVALENT } |
Comparison criterion. More... | |
Static Public Member Functions inherited from osgeo::proj::common::IdentifiedObject | |
static IdentifiedObjectNNPtr | create (const util::PropertyMap &properties) |
Instanciate a new IdentifiedObject. More... | |
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... | |
Abstract class for a mathematical operation on coordinates.
A mathematical operation:
Many but not all coordinate operations (from CRS A to CRS B) also uniquely define the inverse coordinate operation (from CRS B to CRS A). In some cases, the coordinate operation method algorithm for the inverse coordinate operation is the same as for the forward algorithm, but the signs of some coordinate operation parameter values have to be reversed. In other cases, different algorithms are required for the forward and inverse coordinate operations, but the same coordinate operation parameter values are used. If (some) entirely different parameter values are needed, a different coordinate operation shall be defined.
const std::vector< metadata::PositionalAccuracyNNPtr > & osgeo::proj::operation::CoordinateOperation::coordinateOperationAccuracies | ( | ) | const |
Return estimate(s) of the impact of this coordinate operation on point accuracy.
Gives position error estimates for target coordinates of this coordinate operation, assuming no errors in source coordinates.
const crs::CRSPtr & osgeo::proj::operation::CoordinateOperation::interpolationCRS | ( | ) | const |
Return the interpolation CRS of this coordinate operation.
|
pure virtual |
Return the inverse of the coordinate operation.
util::UnsupportedOperationException |
Implemented in osgeo::proj::operation::ConcatenatedOperation, osgeo::proj::operation::Transformation, and osgeo::proj::operation::Conversion.
const util::optional< std::string > & osgeo::proj::operation::CoordinateOperation::operationVersion | ( | ) | const |
Return the version of the coordinate transformation (i.e. instantiation due to the stochastic nature of the parameters).
Mandatory when describing a coordinate transformation or point motion operation, and should not be supplied for a coordinate conversion.
const util::optional< common::DataEpoch > & osgeo::proj::operation::CoordinateOperation::sourceCoordinateEpoch | ( | ) | const |
Return the source epoch of coordinates.
const crs::CRSPtr osgeo::proj::operation::CoordinateOperation::sourceCRS | ( | ) | const |
Return the source CRS of this coordinate operation.
This should not be null, expect for of a derivingConversion of a DerivedCRS when the owning DerivedCRS has been destroyed.
const util::optional< common::DataEpoch > & osgeo::proj::operation::CoordinateOperation::targetCoordinateEpoch | ( | ) | const |
Return the target epoch of coordinates.
const crs::CRSPtr osgeo::proj::operation::CoordinateOperation::targetCRS | ( | ) | const |
Return the target CRS of this coordinate operation.
This should not be null, expect for of a derivingConversion of a DerivedCRS when the owning DerivedCRS has been destroyed.