Kstars

ksconjunct.h
1 /*
2  SPDX-FileCopyrightText: 2008 Akarsh Simha <[email protected]>
3 
4  SPDX-License-Identifier: GPL-2.0-or-later
5 */
6 
7 #pragma once
8 #include "approachsolver.h"
9 
10 class GeoLocation;
11 class KSPlanetBase;
12 class SkyObject;
13 
14 /**
15  * @class KSConjunct
16  * @short Implements algorithms to find close conjunctions of planets in a given time range.
17  * A class that implements a method to compute close conjunctions between any two solar system
18  * objects excluding planetary moons. Given two such objects, this class has implementations of
19  * algorithms required to find the time of closest approach in a given range of time.
20  *
21  * @author Akarsh Simha
22  * @version 2.0
23  */
24 class KSConjunct : public ApproachSolver
25 {
27 public:
28  /** Constructor. Instantiates a KSNumbers for internal computations. */
29  KSConjunct();
30 
31  void setObject1(SkyObject_s &obj) { m_object1 = obj; }
32  void setObject2(KSPlanetBase_s &obj) { m_object2 = obj; }
33  void setOpposition(bool opposition) { m_opposition = opposition; }
34 
35 signals:
36  void madeProgress(int);
37 
38 protected:
39  double findInitialStep(long double startJD, long double stopJD) override;
40  void updatePositions(long double jd) override;
41 
42 private:
43  dms findDistance() override;
44 
45 
46  SkyObject_s m_object1;
47  KSPlanetBase_s m_object2;
48  bool m_opposition { false };
49 };
50 
Q_OBJECTQ_OBJECT
Implements algorithms to find close conjunctions of planets in a given time range....
Definition: ksconjunct.h:24
Implements algorithms to find close approaches of two objects on the sky. A class that implements a m...
void updatePositions(long double jd) override
updatePositions
Definition: ksconjunct.cpp:32
double findInitialStep(long double startJD, long double stopJD) override
findStep
Definition: ksconjunct.cpp:49
An angle, stored as degrees, but expressible in many ways.
Definition: dms.h:37
KSConjunct()
Constructor.
Definition: ksconjunct.cpp:16
Information about an object in the sky.
Definition: skyobject.h:41
Provides necessary information about objects in the solar system.
Definition: ksplanetbase.h:49
Relevant data about an observing location on Earth.
Definition: geolocation.h:27
This file is part of the KDE documentation.
Documentation copyright © 1996-2022 The KDE developers.
Generated on Sat Aug 13 2022 04:01:54 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.