Kstars

jupitermoons.h
1/*
2 SPDX-FileCopyrightText: 2002 Jason Harris <kstars@30doradus.org>
3
4 SPDX-License-Identifier: GPL-2.0-or-later
5*/
6
7#pragma once
8
9#include <QString>
10#include <QVector>
11#include "planetmoons.h"
12
13class KSNumbers;
14class KSPlanet;
15class KSSun;
16
17/**
18 *@class JupiterMoons
19 *Implements the four largest moons of Jupiter.
20 *See Chapter 43 of "Astronomical Algorithms"by Jean Meeus for details
21 *
22 *TODO: make the moons SkyObjects, rather than just points.
23 *
24 *@author Jason Harris
25 *@version 1.0
26 */
28{
29 public:
30 /**
31 *Constructor. Assign the name of each moon,
32 *and initialize their XYZ positions to zero.
33 */
35
36 /**
37 *Destructor. Delete moon objects.
38 */
39 ~JupiterMoons() override;
40
41 /**
42 *@short Find the positions of each Moon, relative to Jupiter.
43 *We use an XYZ coordinate system, centered on Jupiter,
44 *where the X-axis corresponds to Jupiter's Equator,
45 *the Y-Axis is parallel to Jupiter's Poles, and the
46 *Z-axis points along the line joining the Earth and
47 *Jupiter. Once the XYZ positions are known, this
48 *function also computes the RA,Dec positions of each
49 *Moon, and sets the inFront bool variable to indicate
50 *whether the Moon is nearer to us than Jupiter or not
51 *(this information is used to determine whether the
52 *Moon should be drawn on top of Jupiter, or vice versa).
53 *
54 *See "Astronomical Algorithms" bu Jean Meeus, Chapter 43.
55 *
56 *@param num pointer to the KSNumbers object describing
57 *the date/time at which to find the positions.
58 *@param jup pointer to the jupiter object
59 *@param sunptr pointer to the Sun object
60 */
61 void findPosition(const KSNumbers *num, const KSPlanetBase *jup, const KSSun *sunptr) override;
62};
63
Implements the four largest moons of Jupiter.
JupiterMoons()
Constructor.
void findPosition(const KSNumbers *num, const KSPlanetBase *jup, const KSSun *sunptr) override
Find the positions of each Moon, relative to Jupiter.
~JupiterMoons() override
Destructor.
There are several time-dependent values used in position calculations, that are not specific to an ob...
Definition ksnumbers.h:43
A subclass of TrailObject that provides additional information needed for most solar system objects.
A subclass of KSPlanetBase for seven of the major planets in the solar system (Earth and Pluto have t...
Definition ksplanet.h:33
Child class of KSPlanetBase; encapsulates information about the Sun.
Definition kssun.h:24
Implements the moons of a planet.
Definition planetmoons.h:30
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Mon Nov 18 2024 12:16:41 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.