JupiterMoons

Search for usage in LXR

JupiterMoons Class Reference

#include <jupitermoons.h>

Inheritance diagram for JupiterMoons:

Public Member Functions

 JupiterMoons ()
 
 ~JupiterMoons () override
 
void findPosition (const KSNumbers *num, const KSPlanetBase *jup, const KSSun *sunptr) override
 
- Public Member Functions inherited from PlanetMoons
 PlanetMoons ()=default
 
virtual ~PlanetMoons ()
 
void EquatorialToHorizontal (const dms *LSTh, const dms *lat)
 
bool inFront (int id) const
 
TrailObjectmoon (int id)
 
QString name (int id) const
 
int nMoons () const
 
double x (int i) const
 
double y (int i) const
 
double z (int i) const
 

Additional Inherited Members

- Protected Attributes inherited from PlanetMoons
QVector< bool > InFront
 
QVector< TrailObject * > Moon
 
QVector< double > XP
 
QVector< double > YP
 
QVector< double > ZP
 

Detailed Description

Implements the four largest moons of Jupiter.

See Chapter 43 of "Astronomical Algorithms"by Jean Meeus for details

TODO: make the moons SkyObjects, rather than just points.

Author
Jason Harris
Version
1.0

Definition at line 27 of file jupitermoons.h.

Constructor & Destructor Documentation

◆ JupiterMoons()

JupiterMoons::JupiterMoons ( )

Constructor.

Assign the name of each moon, and initialize their XYZ positions to zero.

Definition at line 14 of file jupitermoons.cpp.

◆ ~JupiterMoons()

JupiterMoons::~JupiterMoons ( )
override

Destructor.

Delete moon objects.

Definition at line 29 of file jupitermoons.cpp.

Member Function Documentation

◆ findPosition()

void JupiterMoons::findPosition ( const KSNumbers * num,
const KSPlanetBase * jup,
const KSSun * sunptr )
overridevirtual

Find the positions of each Moon, relative to Jupiter.

We use an XYZ coordinate system, centered on Jupiter, where the X-axis corresponds to Jupiter's Equator, the Y-Axis is parallel to Jupiter's Poles, and the Z-axis points along the line joining the Earth and Jupiter. Once the XYZ positions are known, this function also computes the RA,Dec positions of each Moon, and sets the inFront bool variable to indicate whether the Moon is nearer to us than Jupiter or not (this information is used to determine whether the Moon should be drawn on top of Jupiter, or vice versa).

See "Astronomical Algorithms" bu Jean Meeus, Chapter 43.

Parameters
numpointer to the KSNumbers object describing the date/time at which to find the positions.
juppointer to the jupiter object
sunptrpointer to the Sun object

Implements PlanetMoons.

Definition at line 33 of file jupitermoons.cpp.


The documentation for this class was generated from the following files:
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Tue Mar 26 2024 11:19:04 by doxygen 1.10.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.