Instrument Neutral Distributed Interface INDI  2.0.2
Public Types | Public Member Functions | List of all members
INDI::AlignmentSubsystem::TelescopeDirectionVectorSupportFunctions Class Reference

These functions are used to convert different coordinate systems to and from the telescope direction vectors (normalised vector/direction cosines) used for telescope coordinates in the alignment susbsystem. More...

#include <TelescopeDirectionVectorSupportFunctions.h>

Inheritance diagram for INDI::AlignmentSubsystem::TelescopeDirectionVectorSupportFunctions:
INDI::AlignmentSubsystem::AlignmentSubsystemForClients INDI::AlignmentSubsystem::AlignmentSubsystemForDrivers INDI::AlignmentSubsystem::AlignmentSubsystemForMathPlugins LoaderClient MathPluginManagerClient AstroTrac DSC Scope ScopeSim SkywatcherAPIMount INDI::AlignmentSubsystem::BasicMathPlugin INDI::AlignmentSubsystem::DummyMathPlugin INDI::AlignmentSubsystem::NearestMathPlugin

Public Types

enum  AzimuthAngleDirection { CLOCKWISE , ANTI_CLOCKWISE }
 
enum  PolarAngleDirection { FROM_POLAR_AXIS , FROM_AZIMUTHAL_PLANE }
 
typedef enum INDI::AlignmentSubsystem::TelescopeDirectionVectorSupportFunctions::AzimuthAngleDirection AzimuthAngleDirection_t
 
typedef enum INDI::AlignmentSubsystem::TelescopeDirectionVectorSupportFunctions::PolarAngleDirection PolarAngleDirection_t
 

Public Member Functions

virtual ~TelescopeDirectionVectorSupportFunctions ()
 Virtual destructor. More...
 
void AltitudeAzimuthFromTelescopeDirectionVector (const TelescopeDirectionVector TelescopeDirectionVector, INDI::IHorizontalCoordinates &HorizontalCoordinates)
 Calculates an altitude and azimuth from the supplied normalised direction vector and declination. More...
 
void EquatorialCoordinatesFromTelescopeDirectionVector (const TelescopeDirectionVector TelescopeDirectionVector, INDI::IEquatorialCoordinates &EquatorialCoordinates)
 Calculates equatorial coordinates from the supplied telescope direction vector and declination. More...
 
void LocalHourAngleDeclinationFromTelescopeDirectionVector (const TelescopeDirectionVector TelescopeDirectionVector, INDI::IEquatorialCoordinates &EquatorialCoordinates)
 Calculates a local hour angle and declination from the supplied telescope direction vector and declination. More...
 
void SphericalCoordinateFromTelescopeDirectionVector (const TelescopeDirectionVector TelescopeDirectionVector, double &AzimuthAngle, AzimuthAngleDirection_t AzimuthAngleDirection, double &PolarAngle, PolarAngleDirection_t PolarAngleDirection)
 Calculates a spherical coordinate from the supplied telescope direction vector. More...
 
const TelescopeDirectionVector TelescopeDirectionVectorFromAltitudeAzimuth (INDI::IHorizontalCoordinates HorizontalCoordinates)
 Calculates a normalised direction vector from the supplied altitude and azimuth. More...
 
const TelescopeDirectionVector TelescopeDirectionVectorFromEquatorialCoordinates (INDI::IEquatorialCoordinates EquatorialCoordinates)
 Calculates a telescope direction vector from the supplied equatorial coordinates. More...
 
const TelescopeDirectionVector TelescopeDirectionVectorFromLocalHourAngleDeclination (INDI::IEquatorialCoordinates EquatorialCoordinates)
 Calculates a telescope direction vector from the supplied local hour angle and declination. More...
 
const TelescopeDirectionVector TelescopeDirectionVectorFromSphericalCoordinate (const double AzimuthAngle, AzimuthAngleDirection_t AzimuthAngleDirection, const double PolarAngle, PolarAngleDirection_t PolarAngleDirection)
 Calculates a telescope direction vector from the supplied spherical coordinate information. More...
 

Detailed Description

These functions are used to convert different coordinate systems to and from the telescope direction vectors (normalised vector/direction cosines) used for telescope coordinates in the alignment susbsystem.

Definition at line 24 of file TelescopeDirectionVectorSupportFunctions.h.

Member Typedef Documentation

◆ AzimuthAngleDirection_t

◆ PolarAngleDirection_t

Member Enumeration Documentation

◆ AzimuthAngleDirection

The direction of measurement of an azimuth angle. The following are the conventions for some coordinate systems.

  • Right Ascension is measured ANTI_CLOCKWISE from the vernal equinox.
  • Local Hour Angle is measured CLOCKWISE from the observer's meridian.
  • Greenwich Hour Angle is measured CLOCKWISE from the Greenwich meridian.
  • Azimuth (as in Altitude Azimuth coordinate systems ) is often measured CLOCKWISE
    from north. But ESO FITS (Clockwise from South) and SDSS FITS(Anticlockwise from South)
    have different conventions. Horizontal coordinates in libnova are measured clockwise from south.
Enumerator
CLOCKWISE 

Angle is measured clockwise

ANTI_CLOCKWISE 

Angle is measured anti clockwise

Definition at line 41 of file TelescopeDirectionVectorSupportFunctions.h.

◆ PolarAngleDirection

The direction of measurement of a polar angle. The following are conventions for some coordinate systems

  • Declination is measured FROM_AZIMUTHAL_PLANE.
  • Altitude is measured FROM_AZIMUTHAL_PLANE.
  • Altitude in libnova horizontal coordinates is measured FROM_AZIMUTHAL_PLANE.
Enumerator
FROM_POLAR_AXIS 

Angle is measured down from the polar axis

FROM_AZIMUTHAL_PLANE 

Angle is measured upwards from the azimuthal plane

Definition at line 55 of file TelescopeDirectionVectorSupportFunctions.h.

Constructor & Destructor Documentation

◆ ~TelescopeDirectionVectorSupportFunctions()

virtual INDI::AlignmentSubsystem::TelescopeDirectionVectorSupportFunctions::~TelescopeDirectionVectorSupportFunctions ( )
inlinevirtual

Virtual destructor.

Definition at line 28 of file TelescopeDirectionVectorSupportFunctions.h.

Member Function Documentation

◆ AltitudeAzimuthFromTelescopeDirectionVector()

void INDI::AlignmentSubsystem::TelescopeDirectionVectorSupportFunctions::AltitudeAzimuthFromTelescopeDirectionVector ( const TelescopeDirectionVector  TelescopeDirectionVector,
INDI::IHorizontalCoordinates HorizontalCoordinates 
)
inline

Calculates an altitude and azimuth from the supplied normalised direction vector and declination.

Parameters
[in]TelescopeDirectionVector
[out]HorizontalCoordinatesAltitude and Azimuth in decimal degrees
Note
This assumes a right handed coordinate system for the telescope direction vector with XY being the azimuthal plane, and azimuth being measured in a clockwise direction.

Definition at line 68 of file TelescopeDirectionVectorSupportFunctions.h.

◆ EquatorialCoordinatesFromTelescopeDirectionVector()

void INDI::AlignmentSubsystem::TelescopeDirectionVectorSupportFunctions::EquatorialCoordinatesFromTelescopeDirectionVector ( const TelescopeDirectionVector  TelescopeDirectionVector,
INDI::IEquatorialCoordinates EquatorialCoordinates 
)
inline

Calculates equatorial coordinates from the supplied telescope direction vector and declination.

Parameters
[in]TelescopeDirectionVector
[out]EquatorialCoordinatesThe equatorial coordinates in hours minutes seconds and degrees minutes seconds
Note
This assumes a right handed coordinate system for the direction vector with the right ascension being in the XY plane.

Definition at line 85 of file TelescopeDirectionVectorSupportFunctions.h.

◆ LocalHourAngleDeclinationFromTelescopeDirectionVector()

void INDI::AlignmentSubsystem::TelescopeDirectionVectorSupportFunctions::LocalHourAngleDeclinationFromTelescopeDirectionVector ( const TelescopeDirectionVector  TelescopeDirectionVector,
INDI::IEquatorialCoordinates EquatorialCoordinates 
)
inline

Calculates a local hour angle and declination from the supplied telescope direction vector and declination.

Parameters
[in]TelescopeDirectionVector
[out]EquatorialCoordinatesThe local hour angle and declination in decimal degrees
Note
This assumes a right handed coordinate system for the direction vector with the hour angle being in the XY plane.

Definition at line 102 of file TelescopeDirectionVectorSupportFunctions.h.

◆ SphericalCoordinateFromTelescopeDirectionVector()

void INDI::AlignmentSubsystem::TelescopeDirectionVectorSupportFunctions::SphericalCoordinateFromTelescopeDirectionVector ( const TelescopeDirectionVector  TelescopeDirectionVector,
double &  AzimuthAngle,
AzimuthAngleDirection_t  AzimuthAngleDirection,
double &  PolarAngle,
PolarAngleDirection_t  PolarAngleDirection 
)

Calculates a spherical coordinate from the supplied telescope direction vector.

Parameters
[in]TelescopeDirectionVector
[out]AzimuthAngleThe azimuth angle in radians
[in]AzimuthAngleDirectionThe direction the azimuth angle has been measured either CLOCKWISE or ANTI_CLOCKWISE
[out]PolarAngleThe polar angle in radians
[in]PolarAngleDirectionThe direction the polar angle has been measured either FROM_POLAR_AXIS or FROM_AZIMUTHAL_PLANE
Note
TelescopeDirectionVectors are always normalised and right handed.

Definition at line 15 of file TelescopeDirectionVectorSupportFunctions.cpp.

◆ TelescopeDirectionVectorFromAltitudeAzimuth()

const TelescopeDirectionVector INDI::AlignmentSubsystem::TelescopeDirectionVectorSupportFunctions::TelescopeDirectionVectorFromAltitudeAzimuth ( INDI::IHorizontalCoordinates  HorizontalCoordinates)
inline

Calculates a normalised direction vector from the supplied altitude and azimuth.

Parameters
[in]HorizontalCoordinatesAltitude and Azimuth in decimal degrees
Returns
A TelescopeDirectionVector
Note
This assumes a right handed coordinate system for the telescope direction vector with XY being the azimuthal plane, and azimuth being measured in a clockwise direction.

Definition at line 132 of file TelescopeDirectionVectorSupportFunctions.h.

◆ TelescopeDirectionVectorFromEquatorialCoordinates()

const TelescopeDirectionVector INDI::AlignmentSubsystem::TelescopeDirectionVectorSupportFunctions::TelescopeDirectionVectorFromEquatorialCoordinates ( INDI::IEquatorialCoordinates  EquatorialCoordinates)
inline

Calculates a telescope direction vector from the supplied equatorial coordinates.

Parameters
[in]EquatorialCoordinatesThe equatorial coordinates in hours minutes seconds and degrees minutes seconds
Returns
A TelescopeDirectionVector
Note
This assumes a right handed coordinate system for the direction vector with the right ascension being in the XY plane.

Definition at line 146 of file TelescopeDirectionVectorSupportFunctions.h.

◆ TelescopeDirectionVectorFromLocalHourAngleDeclination()

const TelescopeDirectionVector INDI::AlignmentSubsystem::TelescopeDirectionVectorSupportFunctions::TelescopeDirectionVectorFromLocalHourAngleDeclination ( INDI::IEquatorialCoordinates  EquatorialCoordinates)
inline

Calculates a telescope direction vector from the supplied local hour angle and declination.

Parameters
[in]EquatorialCoordinatesThe local hour angle and declination in decimal degrees
Returns
A TelescopeDirectionVector
Note
This assumes a right handed coordinate system for the direction vector with the hour angle being in the XY plane.

Definition at line 160 of file TelescopeDirectionVectorSupportFunctions.h.

◆ TelescopeDirectionVectorFromSphericalCoordinate()

const TelescopeDirectionVector INDI::AlignmentSubsystem::TelescopeDirectionVectorSupportFunctions::TelescopeDirectionVectorFromSphericalCoordinate ( const double  AzimuthAngle,
AzimuthAngleDirection_t  AzimuthAngleDirection,
const double  PolarAngle,
PolarAngleDirection_t  PolarAngleDirection 
)

Calculates a telescope direction vector from the supplied spherical coordinate information.

Parameters
[in]AzimuthAngleThe azimuth angle in radians
[in]AzimuthAngleDirectionThe direction the azimuth angle has been measured either CLOCKWISE or ANTI_CLOCKWISE
[in]PolarAngleThe polar angle in radians
[in]PolarAngleDirectionThe direction the polar angle has been measured either FROM_POLAR_AXIS or FROM_AZIMUTHAL_PLANE
Returns
A TelescopeDirectionVector
Note
TelescopeDirectionVectors are always assumed to be normalised and right handed.

Definition at line 48 of file TelescopeDirectionVectorSupportFunctions.cpp.


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