• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdeedu API Reference
  • KDE Home
  • Contact Us
 

kstars

  • sources
  • kde-4.12
  • kdeedu
  • kstars
  • kstars
  • skyobjects
satellite.h
Go to the documentation of this file.
1 /***************************************************************************
2  satellite.h - K Desktop Planetarium
3  -------------------
4  begin : Tue 02 Mar 2011
5  copyright : (C) 2009 by Jerome SONRIER
6  email : jsid@emor3j.fr.eu.org
7  ***************************************************************************/
8 
9 /***************************************************************************
10  * *
11  * This program is free software; you can redistribute it and/or modify *
12  * it under the terms of the GNU General Public License as published by *
13  * the Free Software Foundation; either version 2 of the License, or *
14  * (at your option) any later version. *
15  * *
16  ***************************************************************************/
17 
18 #ifndef SATELLITE_H
19 #define SATELLITE_H
20 
21 
22 #include <QString>
23 
24 #include "skyobject.h"
25 #include "skypoint.h"
26 
27 class KSPopupMenu;
28 
35 class Satellite : public SkyObject
36 {
37 public:
41  Satellite( QString name, QString line1, QString line2 );
42 
46  ~Satellite();
47 
51  void updatePos();
52 
56  bool isVisible();
57 
61  bool selected();
62 
66  void setSelected( bool selected );
67 
71  double velocity();
72 
76  double altitude();
77 
81  double range();
82 
86  QString id();
87 
88 private:
92  void init();
93 
97  int sgp4( double tsince );
98 
102  double arcSin( double arg );
103 
110  double deltaET( double year );
111 
115  double Modulus(double arg1, double arg2);
116 
117 
118  virtual void initPopupMenu( KSPopupMenu *pmenu );
119 
120  // TLE
121  int m_number; // Satellite Number
122  QChar m_class; // Security Classification
123  QString m_id; // International Designator
124  double m_epoch_year; // Epoch Year
125  double m_epoch; // Epoch (Day of the year and fractional portion of the day)
126  double m_first_deriv; // First Time Derivative of the Mean Motion
127  double m_second_deriv; // Second Time Derivative of Mean Motion
128  double m_bstar; // BSTAR drag term (decimal point assumed)
129  int m_ephem_type; // Ephemeris type
130  int m_elem_number; // Element number
131  double m_inclination; // Inclination [Radians]
132  double m_ra; // Right Ascension of the Ascending Node [Radians]
133  double m_eccentricity; // Eccentricity
134  double m_arg_perigee; // Argument of Perigee [Radians]
135  double m_mean_anomaly; // Mean Anomaly [Radians]
136  double m_mean_motion; // Mean Motion [Radians per minutes]
137  int m_nb_revolution; // Revolution number at epoch [Revs]
138  double m_tle_jd; // TLE epoch converted to julian date
139 
140  // Satellite
141  bool m_is_visible; // True if the satellite is visible
142  bool m_is_eclipsed; // True if the satellite is in the shadow of the earth
143  bool m_is_selected; // True if the satellite is selected
144  double m_velocity; // Satellite velocity in km/s
145  double m_altitude; // Satellite altitude in km
146  double m_range; // Satellite range from observer in km
147 
148  // Near Earth
149  bool isimp;
150  double aycof , con41 , cc1 , cc4 , cc5 , d2 , d3 , d4 ,
151  delmo , eta , argpdot, omgcof , sinmao , t , t2cof, t3cof ,
152  t4cof , t5cof , x1mth2 , x7thm1 , mdot , nodedot , xlcof, xmcof ,
153  nodecf;
154 
155  // Deep Space
156  int irez;
157  double d2201 , d2211 , d3210 , d3222 , d4410 , d4422 , d5220 , d5232 ,
158  d5421 , d5433 , dedt , del1 , del2 , del3 , didt , dmdt ,
159  dnodt , domdt , e3 , ee2 , peo , pgho , pho , pinco ,
160  plo , se2 , se3 , sgh2 , sgh3 , sgh4 , sh2 , sh3 ,
161  si2 , si3 , sl2 , sl3 , sl4 , gsto , xfact , xgh2 ,
162  xgh3 , xgh4 , xh2 , xh3 , xi2 , xi3 , xl2 , xl3 ,
163  xl4 , xlamo , zmol , zmos , atime , xli , xni;
164 
165  char method;
166 };
167 
168 #endif
KSPopupMenu
The KStars Popup Menu.
Definition: kspopupmenu.h:43
Satellite::altitude
double altitude()
Definition: satellite.cpp:1220
skyobject.h
Satellite::id
QString id()
Definition: satellite.cpp:1230
Satellite::Satellite
Satellite(QString name, QString line1, QString line2)
Constructor.
Definition: satellite.cpp:62
Satellite::~Satellite
~Satellite()
Destructor.
Definition: satellite.cpp:108
skypoint.h
Satellite::selected
bool selected()
Definition: satellite.cpp:1201
Satellite::isVisible
bool isVisible()
Definition: satellite.cpp:1196
Satellite
Represents an artificial satellites.
Definition: satellite.h:35
Satellite::range
double range()
Definition: satellite.cpp:1225
SkyObject::name
virtual QString name(void) const
Definition: skyobject.h:124
Satellite::updatePos
void updatePos()
Update satellite position.
Definition: satellite.cpp:647
SkyObject
Provides all necessary information about an object in the sky: its coordinates, name(s), type, magnitude, and QStringLists of URLs for images and webpages regarding the object.
Definition: skyobject.h:46
Satellite::setSelected
void setSelected(bool selected)
Select or not the satellite.
Definition: satellite.cpp:1206
Satellite::velocity
double velocity()
Definition: satellite.cpp:1215
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 22:36:20 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

kstars

Skip menu "kstars"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdeedu API Reference

Skip menu "kdeedu API Reference"
  • Analitza
  •     lib
  • kalgebra
  • kalzium
  •   libscience
  • kanagram
  • kig
  •   lib
  • klettres
  • kstars
  • libkdeedu
  •   keduvocdocument
  • marble
  • parley
  • rocs
  •   App
  •   RocsCore
  •   VisualEditor
  •   stepcore

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal