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 Ellipsoidellipsoid () 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.