PCL
pcl::ProjectionBase Class Referenceabstract

Base class of all projection systems. More...

#include <ProjectionBase.h>

+ Inheritance diagram for pcl::ProjectionBase:

Public Member Functions

virtual ~ProjectionBase ()
 
Vector CelestialPoleNativeCoordinates () const
 
virtual ProjectionBaseClone () const =0
 
virtual bool Direct (DPoint &pW, const DPoint &pRD) const noexcept
 
virtual void GetWCS (WCSKeywords &wcs) const
 
virtual IsoString Identifier () const =0
 
virtual bool Inverse (DPoint &pRD, const DPoint &pW) const noexcept
 
virtual IsoString Name () const =0
 
virtual IsoString ProjCode () const =0
 
virtual DPoint ProjectionOrigin () const
 
Vector ReferenceCelestialCoordinates () const
 
Vector ReferenceNativeCoordinates () const
 

Static Public Member Functions

static double Distance (const DPoint &p1, const DPoint &p2)
 
static double DistanceFast (const DPoint &p1, const DPoint &p2)
 
static IsoString ProjectionIdentifierToWCSCode (const IsoString &identifier)
 
static IsoString WCSCodeToProjectionIdentifier (const IsoString &wcsCode)
 

Protected Member Functions

 ProjectionBase ()=default
 
 ProjectionBase (const ProjectionBase &)=default
 
void InitFromRefPoint (double lng0, double lat0, const Optional< double > &lonpole=Optional< double >())
 
void InitFromWCS (const WCSKeywords &)
 
virtual bool Project (DPoint &pW, const DPoint &pN) const noexcept=0
 
virtual bool Unproject (DPoint &pN, const DPoint &pW) const noexcept=0
 

Detailed Description

Definition at line 79 of file ProjectionBase.h.

Constructor & Destructor Documentation

◆ ~ProjectionBase()

virtual pcl::ProjectionBase::~ProjectionBase ( )
inlinevirtual

Virtual destructor.

Definition at line 86 of file ProjectionBase.h.

◆ ProjectionBase() [1/2]

pcl::ProjectionBase::ProjectionBase ( )
protecteddefault

Default constructor.

◆ ProjectionBase() [2/2]

pcl::ProjectionBase::ProjectionBase ( const ProjectionBase )
protecteddefault

Copy constructor.

Member Function Documentation

◆ CelestialPoleNativeCoordinates()

Vector pcl::ProjectionBase::CelestialPoleNativeCoordinates ( ) const
inline

Returns the native coordinates (longitude and latitude in degrees) of the north celestial pole in this projection system.

The returned value is a vector suitable for XISF property serialization.

Definition at line 214 of file ProjectionBase.h.

References pcl::Deg().

◆ Clone()

virtual ProjectionBase* pcl::ProjectionBase::Clone ( ) const
pure virtual

◆ Direct()

virtual bool pcl::ProjectionBase::Direct ( DPoint pW,
const DPoint pRD 
) const
inlinevirtualnoexcept

Transforms from celestial coordinates to world coordinates.

Reimplemented in pcl::GnomonicProjection.

Definition at line 119 of file ProjectionBase.h.

References pcl::IsFinite(), pcl::GenericPoint< T >::x, and pcl::GenericPoint< T >::y.

◆ Distance()

static double pcl::ProjectionBase::Distance ( const DPoint p1,
const DPoint p2 
)
inlinestatic

Returns the distance in degrees between two locations in equatorial coordinates.

Definition at line 161 of file ProjectionBase.h.

References pcl::Abs(), pcl::Rad(), pcl::SinCos(), pcl::GenericPoint< T >::x, and pcl::GenericPoint< T >::y.

◆ DistanceFast()

static double pcl::ProjectionBase::DistanceFast ( const DPoint p1,
const DPoint p2 
)
inlinestatic

Returns the distance in degrees between two locations in equatorial coordinates. Uses an approximate, faster algorithm.

Definition at line 177 of file ProjectionBase.h.

References pcl::ArcCos(), pcl::Cos(), pcl::Deg(), pcl::Rad(), pcl::SinCos(), pcl::GenericPoint< T >::x, and pcl::GenericPoint< T >::y.

◆ GetWCS()

virtual void pcl::ProjectionBase::GetWCS ( WCSKeywords wcs) const
virtual

Updates the specified WCS metadata with field values corresponding to this projection.

◆ Identifier()

◆ InitFromRefPoint()

void pcl::ProjectionBase::InitFromRefPoint ( double  lng0,
double  lat0,
const Optional< double > &  lonpole = Optional< double >() 
)
protected

Initialization from reference celestial coordinates and optional native longitude of the celestial pole.

◆ InitFromWCS()

void pcl::ProjectionBase::InitFromWCS ( const WCSKeywords )
protected

Initialization from WCS metadata.

◆ Inverse()

virtual bool pcl::ProjectionBase::Inverse ( DPoint pRD,
const DPoint pW 
) const
inlinevirtualnoexcept

Transforms from world coordinates to celestial coordinates.

Reimplemented in pcl::GnomonicProjection.

Definition at line 128 of file ProjectionBase.h.

References pcl::IsFinite(), pcl::GenericPoint< T >::x, and pcl::GenericPoint< T >::y.

◆ Name()

◆ ProjCode()

virtual IsoString pcl::ProjectionBase::ProjCode ( ) const
pure virtual

◆ Project()

virtual bool pcl::ProjectionBase::Project ( DPoint pW,
const DPoint pN 
) const
protectedpure virtualnoexcept

◆ ProjectionIdentifierToWCSCode()

static IsoString pcl::ProjectionBase::ProjectionIdentifierToWCSCode ( const IsoString identifier)
static

Returns the standard FITS WCS projection code corresponding to the specified XISF projection identifier.

◆ ProjectionOrigin()

virtual DPoint pcl::ProjectionBase::ProjectionOrigin ( ) const
inlinevirtual

Returns the equatorial coordinates of the projection origin.

Definition at line 152 of file ProjectionBase.h.

References pcl::Deg().

◆ ReferenceCelestialCoordinates()

Vector pcl::ProjectionBase::ReferenceCelestialCoordinates ( ) const
inline

Returns the celestial equatorial coordinates (right ascension and declination in degrees) of the reference point of this projection system.

The returned value is a vector suitable for XISF property serialization.

Definition at line 192 of file ProjectionBase.h.

References pcl::Deg().

◆ ReferenceNativeCoordinates()

Vector pcl::ProjectionBase::ReferenceNativeCoordinates ( ) const
inline

Returns the native coordinates (longitude and latitude in degrees) of the reference point of this projection system.

The returned value is a vector suitable for XISF property serialization.

Definition at line 203 of file ProjectionBase.h.

◆ Unproject()

virtual bool pcl::ProjectionBase::Unproject ( DPoint pN,
const DPoint pW 
) const
protectedpure virtualnoexcept

◆ WCSCodeToProjectionIdentifier()

static IsoString pcl::ProjectionBase::WCSCodeToProjectionIdentifier ( const IsoString wcsCode)
static

Returns the XISF projection identifier corresponding to the specified FITS WCS projection code.


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