PCL
|
Base class of all projection systems. More...
#include <ProjectionBase.h>
Public Member Functions | |
virtual | ~ProjectionBase () |
Vector | CelestialPoleNativeCoordinates () const |
virtual ProjectionBase * | Clone () 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 |
Definition at line 79 of file ProjectionBase.h.
|
inlinevirtual |
Virtual destructor.
Definition at line 86 of file ProjectionBase.h.
|
protecteddefault |
Default constructor.
|
protecteddefault |
Copy constructor.
|
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().
|
pure virtual |
Returns a dynamically allocated duplicate of this object.
Implemented in pcl::ZenithalProjectionBase, pcl::StereographicProjection, pcl::ZenithalEqualAreaProjection, pcl::PlateCarreeProjection, pcl::OrthographicProjection, pcl::MercatorProjection, pcl::HammerAitoffProjection, and pcl::GnomonicProjection.
|
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.
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.
|
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.
|
virtual |
Updates the specified WCS metadata with field values corresponding to this projection.
|
pure virtual |
Returns the XISF serializable projection identifier.
Implemented in pcl::ZenithalProjectionBase, pcl::StereographicProjection, pcl::ZenithalEqualAreaProjection, pcl::PlateCarreeProjection, pcl::OrthographicProjection, pcl::MercatorProjection, pcl::HammerAitoffProjection, and pcl::GnomonicProjection.
|
protected |
Initialization from reference celestial coordinates and optional native longitude of the celestial pole.
|
protected |
Initialization from WCS metadata.
|
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.
|
pure virtual |
Returns the readable name of this projection system.
Implemented in pcl::ZenithalProjectionBase, pcl::StereographicProjection, pcl::ZenithalEqualAreaProjection, pcl::PlateCarreeProjection, pcl::OrthographicProjection, pcl::MercatorProjection, pcl::HammerAitoffProjection, and pcl::GnomonicProjection.
|
pure virtual |
Returns the FITS WCS projection identifier for this projection system.
Implemented in pcl::ZenithalProjectionBase, pcl::StereographicProjection, pcl::ZenithalEqualAreaProjection, pcl::PlateCarreeProjection, pcl::OrthographicProjection, pcl::MercatorProjection, pcl::HammerAitoffProjection, and pcl::GnomonicProjection.
|
protectedpure virtualnoexcept |
Transforms from world coordinates to native spherical coordinates.
Implemented in pcl::ZenithalProjectionBase, pcl::PlateCarreeProjection, pcl::OrthographicProjection, pcl::MercatorProjection, pcl::HammerAitoffProjection, and pcl::GnomonicProjection.
|
static |
Returns the standard FITS WCS projection code corresponding to the specified XISF projection identifier.
|
inlinevirtual |
Returns the equatorial coordinates of the projection origin.
Definition at line 152 of file ProjectionBase.h.
References pcl::Deg().
|
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().
|
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.
|
protectedpure virtualnoexcept |
Transforms from native spherical coordinates to world coordinates.
Implemented in pcl::ZenithalProjectionBase, pcl::PlateCarreeProjection, pcl::OrthographicProjection, pcl::MercatorProjection, pcl::HammerAitoffProjection, and pcl::GnomonicProjection.
|
static |
Returns the XISF projection identifier corresponding to the specified FITS WCS projection code.