Abstract base class for individual projections. More...
#include <Projections.h>
Public Member Functions | |
ProjectionBase (int code) | |
Value constructor with EPSG code as input. More... | |
int | code () const |
Return EPSG code. | |
const Ellipsoid & | ellipsoid () const |
Return underlying ellipsoid. | |
virtual void | print () const =0 |
Print function for debugging. | |
virtual int | forward (const cartesian_t &llh, cartesian_t &xyz) const =0 |
Function for transforming from LLH. More... | |
virtual int | inverse (const cartesian_t &xyz, cartesian_t &llh) const =0 |
Function for transforming to LLH. More... | |
Vec3 | inverse (const Vec3 &native) const |
virtual | ~ProjectionBase () |
Virtual destructor. | |
Abstract base class for individual projections.
Internally, every derived class is expected to provide two functions. forward - To convert llh (radians) to expected projection system inverse - To convert expected projection system to llh (radians)
|
inline |
Value constructor with EPSG code as input.
Ellipsoid is always initialized to standard WGS84 ellipse.
|
pure virtual |
Function for transforming from LLH.
This is similar to fwd or fwd3d in PROJ.4
[in] | llh | Lon/Lat/Height - Lon and Lat are in radians |
[out] | xyz | Coordinates in specified projection system |
Implemented in isce3::core::CEA, isce3::core::PolarStereo, isce3::core::UTM, isce3::core::Geocent, and isce3::core::LonLat.
|
pure virtual |
Function for transforming to LLH.
This is similar to inv or inv3d in PROJ.4
[in] | xyz | Coordinates in specified projection system |
[out] | llh | Lat/Lon/Height - Lon and Lat are in radians |
Implemented in isce3::core::CEA, isce3::core::PolarStereo, isce3::core::UTM, isce3::core::Geocent, and isce3::core::LonLat.