isce3 0.25.0
Loading...
Searching...
No Matches
isce3::core::ProjectionBase Class Referenceabstract

Abstract base class for individual projections. More...

#include <Projections.h>

Inheritance diagram for isce3::core::ProjectionBase:
isce3::core::CEA isce3::core::Geocent isce3::core::LonLat isce3::core::PolarStereo isce3::core::UTM

Public Member Functions

 ProjectionBase (int code)
 Value constructor with EPSG code as input.
 
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 Vec3 &llh, Vec3 &xyz) const =0
 Function for transforming from LLH.
 
Vec3 forward (const Vec3 &llh) const
 Function for transforming from LLH.
 
virtual int inverse (const Vec3 &xyz, Vec3 &llh) const =0
 Function for transforming to LLH.
 
Vec3 inverse (const Vec3 &xyz) const
 Function for transforming to LLH.
 

Detailed Description

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)

Constructor & Destructor Documentation

◆ ProjectionBase()

isce3::core::ProjectionBase::ProjectionBase ( int code)
inline

Value constructor with EPSG code as input.

Ellipsoid is always initialized to standard WGS84 ellipse.

Member Function Documentation

◆ forward() [1/2]

Vec3 isce3::core::ProjectionBase::forward ( const Vec3 & llh) const
inline

Function for transforming from LLH.

This is similar to fwd or fwd3d in PROJ.4

Parameters
[in]llhLon/Lat/Height - Lon and Lat are in radians
Returns
Coordinates in specified projection system

◆ forward() [2/2]

virtual int isce3::core::ProjectionBase::forward ( const Vec3 & llh,
Vec3 & xyz ) const
pure virtual

Function for transforming from LLH.

This is similar to fwd or fwd3d in PROJ.4

Parameters
[in]llhLon/Lat/Height - Lon and Lat are in radians
[out]xyzCoordinates in specified projection system

Implemented in isce3::core::CEA, isce3::core::Geocent, isce3::core::LonLat, isce3::core::PolarStereo, and isce3::core::UTM.

◆ inverse() [1/2]

Vec3 isce3::core::ProjectionBase::inverse ( const Vec3 & xyz) const
inline

Function for transforming to LLH.

This is similar to inv or inv3d in PROJ.4

Parameters
[in]xyzCoordinates in specified projection system
Returns
Lat/Lon/Height - Lon and Lat are in radians

◆ inverse() [2/2]

virtual int isce3::core::ProjectionBase::inverse ( const Vec3 & xyz,
Vec3 & llh ) const
pure virtual

Function for transforming to LLH.

This is similar to inv or inv3d in PROJ.4

Parameters
[in]xyzCoordinates in specified projection system
[out]llhLat/Lon/Height - Lon and Lat are in radians

Implemented in isce3::core::CEA, isce3::core::Geocent, isce3::core::LonLat, isce3::core::PolarStereo, and isce3::core::UTM.

◆ print()

virtual void isce3::core::ProjectionBase::print ( ) const
pure virtual

The documentation for this class was generated from the following file:

Generated for ISCE3.0 by doxygen 1.13.2.