![]() |
Fixposition SDK 0.0.0-heads/main-0-g97f6014
Collection of c++ libraries and apps for use with Fixposition products on Linux
|
"Universal" coordinate transformer, backed by PROJ More...
#include <trafo.hpp>
Public Member Functions | |
| Transformer (const std::string &name="") | |
| Constructor. | |
| bool | Init (const std::string &source_crs, const std::string &target_crs) |
| Initialise transformer. | |
| bool | Transform (Eigen::Vector3d &inout, const bool inv=false) |
| Transform coordinates. | |
| bool | Transform (const Eigen::Vector3d &in, Eigen::Vector3d &out, const bool inv=false) |
| Transform coordinates. | |
| bool | Transform (const Eigen::Vector4d &in, Eigen::Vector4d &out, const bool inv=false) |
| Transform coordinates (with time) | |
| fpsdk::common::trafo::Transformer::Transformer | ( | const std::string & | name = "" | ) |
Constructor.
| [in] | name | Optional name, for debugging |
References Transformer().
Referenced by Transformer().
| bool fpsdk::common::trafo::Transformer::Init | ( | const std::string & | source_crs, |
| const std::string & | target_crs ) |
Initialise transformer.
The source and target CRS specification can be anything that proj_create_crs_to_crs() understands (see https://proj.org/en/9.4/development/reference/functions.html#c.proj_create_crs_to_crs). You may have to change the PROJ configuration (proj.ini) and/or update some PROJ data yourself to support some CRS. See the PROJ documentation for details (see https://proj.org/en/9.4/resource_files.html).
| [in] | source_crs | Source coordinate reference system, e.g. "EPSG:4326" |
| [in] | target_crs | Target coordinate reference system, e.g. "EPSG:2056" |
| bool fpsdk::common::trafo::Transformer::Transform | ( | Eigen::Vector3d & | inout, |
| const bool | inv = false ) |
Transform coordinates.
| [in,out] | inout | Coordinates to transform, replaced with result |
| [in] | inv | Do the inverse transformation (true), default is forward (false) |
| bool fpsdk::common::trafo::Transformer::Transform | ( | const Eigen::Vector3d & | in, |
| Eigen::Vector3d & | out, | ||
| const bool | inv = false ) |
Transform coordinates.
| [in] | in | Coordinates to transform |
| [out] | out | Transformed coordinates |
| [in] | inv | Do the inverse transformation (true), default is forward (false) |
| bool fpsdk::common::trafo::Transformer::Transform | ( | const Eigen::Vector4d & | in, |
| Eigen::Vector4d & | out, | ||
| const bool | inv = false ) |
Transform coordinates (with time)
| [in] | in | Coordinates to transform (with time) |
| [out] | out | Transformed coordinates (with time) |
| [in] | inv | Do the inverse transformation (true), default is forward (false) |