• 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
ksasteroid.h
Go to the documentation of this file.
1 /***************************************************************************
2  ksasteroid.h - K Desktop Planetarium
3  -------------------
4  begin : Wed 19 Feb 2003
5  copyright : (C) 2001 by Jason Harris
6  email : jharris@30doradus.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 KSASTEROID_H_
19 #define KSASTEROID_H_
20 
21 #include "ksplanetbase.h"
22 
23 class KStarsData;
24 class KSNumbers;
25 class dms;
26 
48 class KSAsteroid : public KSPlanetBase
49 {
50 public:
51 
66  KSAsteroid( int catN, const QString &s, const QString &image_file,
67  long double JD, double a, double e, dms i, dms w, dms N, dms M, double H, double G );
68 
69  virtual KSAsteroid* clone() const;
70  virtual SkyObject::UID getUID() const;
71 
73  virtual ~KSAsteroid() {}
74 
78  virtual bool loadData();
79 
83  double inline getAbsoluteMagnitude() { return H; }
84  double inline getSlopeParameter() { return G; }
85 
89  void setPerihelion( double perihelion );
90 
94  inline double getPerihelion() { return q; }
95 
99  void setEarthMOID( double earth_moid );
100 
104  inline double getEarthMOID() { return EarthMOID; }
105 
109  void setOrbitID( QString orbit_id );
110 
114  inline QString getOrbitID() { return OrbitID; }
115 
119  void setOrbitClass( QString orbit_class );
120 
124  inline QString getOrbitClass() { return OrbitClass; }
125 
129  void setNEO( bool neo );
130 
134  inline bool isNEO() { return NEO; }
135 
139  void setAlbedo( float albedo );
140 
144  inline float getAlbedo() { return Albedo; }
145 
149  void setDiameter( float diam );
150 
154  inline float getDiameter() { return Diameter; }
155 
159  void setDimensions( QString dim );
160 
164  inline QString getDimensions() { return Dimensions; }
165 
169  void setRotationPeriod( float rot_per );
170 
174  inline float getRotationPeriod() { return RotationPeriod; }
175 
179  void setPeriod( float per );
180 
184  inline float getPeriod() { return Period; }
185 
186 protected:
193  virtual bool findGeocentricPosition( const KSNumbers *num, const KSPlanetBase *Earth=NULL );
194 
195  //these set functions are needed for the new KSPluto subclass
196  void set_a( double newa ) { a = newa; }
197  void set_e( double newe ) { e = newe; }
198  void set_P( double newP ) { P = newP; }
199  void set_i( double newi ) { i.setD( newi ); }
200  void set_w( double neww ) { w.setD( neww ); }
201  void set_M( double newM ) { M.setD( newM ); }
202  void set_N( double newN ) { N.setD( newN ); }
203  void setJD( long double jd ) { JD = jd; }
204 
205 private:
206  virtual void findMagnitude(const KSNumbers*);
207 
208  int catN;
209  long double JD;
210  double q, a, e, P, EarthMOID;
211  float Albedo, Diameter, RotationPeriod, Period;
212  dms i, w, M, N;
213  double H, G;
214  QString OrbitID, OrbitClass, Dimensions;
215  bool NEO;
216 };
217 
218 #endif
KSAsteroid::getUID
virtual SkyObject::UID getUID() const
Return UID for object.
Definition: ksasteroid.cpp:189
KSAsteroid::set_a
void set_a(double newa)
Definition: ksasteroid.h:196
ksplanetbase.h
KSAsteroid::setJD
void setJD(long double jd)
Definition: ksasteroid.h:203
KSAsteroid::isNEO
bool isNEO()
Definition: ksasteroid.h:134
KStarsData
KStarsData is the backbone of KStars.
Definition: kstarsdata.h:66
KSAsteroid::getSlopeParameter
double getSlopeParameter()
Definition: ksasteroid.h:84
KSAsteroid::getEarthMOID
double getEarthMOID()
Definition: ksasteroid.h:104
KSAsteroid::setOrbitID
void setOrbitID(QString orbit_id)
Sets the asteroid's orbit solution ID.
Definition: ksasteroid.cpp:171
KSAsteroid::setAlbedo
void setAlbedo(float albedo)
Sets the asteroid's albedo.
Definition: ksasteroid.cpp:146
KSAsteroid::getOrbitClass
QString getOrbitClass()
Definition: ksasteroid.h:124
KSAsteroid::getOrbitID
QString getOrbitID()
Definition: ksasteroid.h:114
KSAsteroid::setPeriod
void setPeriod(float per)
Sets the asteroid's period.
Definition: ksasteroid.cpp:176
KSAsteroid::setEarthMOID
void setEarthMOID(double earth_moid)
Sets the asteroid's earth minimum orbit intersection distance.
Definition: ksasteroid.cpp:141
KSAsteroid::set_w
void set_w(double neww)
Definition: ksasteroid.h:200
KSAsteroid::setDiameter
void setDiameter(float diam)
Sets the asteroid's diameter.
Definition: ksasteroid.cpp:151
KSAsteroid::getDiameter
float getDiameter()
Definition: ksasteroid.h:154
KSAsteroid::set_i
void set_i(double newi)
Definition: ksasteroid.h:199
KSAsteroid::getPerihelion
double getPerihelion()
Definition: ksasteroid.h:94
KSAsteroid::getRotationPeriod
float getRotationPeriod()
Definition: ksasteroid.h:174
KSAsteroid::getDimensions
QString getDimensions()
Definition: ksasteroid.h:164
KSAsteroid::setNEO
void setNEO(bool neo)
Sets if the comet is a near earth object.
Definition: ksasteroid.cpp:161
KSAsteroid::setRotationPeriod
void setRotationPeriod(float rot_per)
Sets the asteroid's rotation period.
Definition: ksasteroid.cpp:181
KSAsteroid::loadData
virtual bool loadData()
This is inherited from KSPlanetBase.
Definition: ksasteroid.cpp:187
SkyObject::UID
qint64 UID
Type for Unique object IDenticator.
Definition: skyobject.h:53
KSAsteroid
A subclass of KSPlanetBase that implements asteroids.
Definition: ksasteroid.h:48
KSAsteroid::~KSAsteroid
virtual ~KSAsteroid()
Destructor (empty)
Definition: ksasteroid.h:73
dms
An angle, stored as degrees, but expressible in many ways.
Definition: dms.h:42
KSAsteroid::set_N
void set_N(double newN)
Definition: ksasteroid.h:202
KSAsteroid::getPeriod
float getPeriod()
Definition: ksasteroid.h:184
KSAsteroid::set_P
void set_P(double newP)
Definition: ksasteroid.h:198
KSNumbers
There are several time-dependent values used in position calculations, that are not specific to an ob...
Definition: ksnumbers.h:43
KSAsteroid::getAbsoluteMagnitude
double getAbsoluteMagnitude()
This lets other classes like KSPlanetBase access H and G values Used by KSPlanetBase::FindMagnitude.
Definition: ksasteroid.h:83
KSAsteroid::clone
virtual KSAsteroid * clone() const
Create copy of object.
Definition: ksasteroid.cpp:36
KSAsteroid::setOrbitClass
void setOrbitClass(QString orbit_class)
Sets the asteroid's orbit class.
Definition: ksasteroid.cpp:166
KSAsteroid::setPerihelion
void setPerihelion(double perihelion)
Sets the asteroid's perihelion distance.
Definition: ksasteroid.cpp:136
KSAsteroid::getAlbedo
float getAlbedo()
Definition: ksasteroid.h:144
KSPlanetBase
A subclass of TrailObject that provides additional information needed for most solar system objects...
Definition: ksplanetbase.h:63
KSAsteroid::setDimensions
void setDimensions(QString dim)
Sets the asteroid's dimensions.
Definition: ksasteroid.cpp:156
dms::setD
void setD(const double &x)
Sets floating-point value of angle, in degrees.
Definition: dms.h:130
KSAsteroid::findGeocentricPosition
virtual bool findGeocentricPosition(const KSNumbers *num, const KSPlanetBase *Earth=NULL)
Calculate the geocentric RA, Dec coordinates of the Asteroid.
Definition: ksasteroid.cpp:41
KSAsteroid::KSAsteroid
KSAsteroid(int catN, const QString &s, const QString &image_file, long double JD, double a, double e, dms i, dms w, dms N, dms M, double H, double G)
Constructor.
Definition: ksasteroid.cpp:26
KSAsteroid::set_e
void set_e(double newe)
Definition: ksasteroid.h:197
KSAsteroid::set_M
void set_M(double newM)
Definition: ksasteroid.h:201
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