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

kstars

Public Member Functions | Protected Member Functions | List of all members
KSAsteroid Class Reference

#include <ksasteroid.h>

Inheritance diagram for KSAsteroid:
Inheritance graph
[legend]

Public Member Functions

 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)
 
virtual ~KSAsteroid ()
 
virtual KSAsteroid * clone () const
 
double getAbsoluteMagnitude ()
 
float getAlbedo ()
 
float getDiameter ()
 
QString getDimensions ()
 
double getEarthMOID ()
 
QString getOrbitClass ()
 
QString getOrbitID ()
 
double getPerihelion ()
 
float getPeriod ()
 
float getRotationPeriod ()
 
double getSlopeParameter ()
 
virtual SkyObject::UID getUID () const
 
bool isNEO ()
 
virtual bool loadData ()
 
void setAlbedo (float albedo)
 
void setDiameter (float diam)
 
void setDimensions (QString dim)
 
void setEarthMOID (double earth_moid)
 
void setNEO (bool neo)
 
void setOrbitClass (QString orbit_class)
 
void setOrbitID (QString orbit_id)
 
void setPerihelion (double perihelion)
 
void setPeriod (float per)
 
void setRotationPeriod (float rot_per)
 
- Public Member Functions inherited from KSPlanetBase
 KSPlanetBase (const QString &s=i18n("unnamed"), const QString &image_file=QString(), const QColor &c=Qt::white, double pSize=0)
 
virtual ~KSPlanetBase ()
 
double angSize () const
 
QColor & color ()
 
const dms & ecLat () const
 
void EclipticToEquatorial (const dms *Obliquity)
 
const dms & ecLong () const
 
void EquatorialToEcliptic (const dms *Obliquity)
 
void findPosition (const KSNumbers *num, const dms *lat=0, const dms *LST=0, const KSPlanetBase *Earth=0)
 
const dms & helEcLat () const
 
const dms & helEcLong () const
 
const QImage & image ()
 
void init (const QString &s, const QString &image_file, const QColor &c, double pSize)
 
bool isMajorPlanet () const
 
virtual double labelOffset () const
 
virtual double pa () const
 
dms phase ()
 
double physicalSize () const
 
double rearth () const
 
double rsun () const
 
void setAngularSize (double size)
 
void setColor (const QColor &c)
 
void setEcLat (dms elat)
 
void setEcLong (dms elong)
 
void setPA (double p)
 
void setPhysicalSize (double size)
 
void setRearth (double r)
 
void setRearth (const KSPlanetBase *Earth)
 
void setRsun (double r)
 
virtual void updateCoords (KSNumbers *num, bool includePlanets=true, const dms *lat=0, const dms *LST=0, bool forceRecompute=false)
 
- Public Member Functions inherited from TrailObject
 TrailObject (int t=TYPE_UNKNOWN, dms r=dms(0.0), dms d=dms(0.0), float m=0.0, const QString &n=QString())
 
 TrailObject (int t, double r, double d, float m=0.0, const QString &n=QString())
 
virtual ~TrailObject ()
 
void addToTrail ()
 
void clearTrail ()
 
void clipTrail ()
 
void drawTrail (SkyPainter *skyp) const
 
bool hasTrail () const
 
const QList< SkyPoint > & trail () const
 
void updateTrail (dms *LST, const dms *lat)
 
- Public Member Functions inherited from SkyObject
 SkyObject (int t=TYPE_UNKNOWN, dms r=dms(0.0), dms d=dms(0.0), float m=0.0, const QString &n=QString(), const QString &n2=QString(), const QString &lname=QString())
 
 SkyObject (int t, double r, double d, float m=0.0, const QString &n=QString(), const QString &n2=QString(), const QString &lname=QString())
 
virtual ~SkyObject ()
 
bool hasAuxInfo ()
 
bool hasLongName () const
 
bool hasName () const
 
bool hasName2 () const
 
QStringList & ImageList ()
 
QStringList & ImageTitle ()
 
QStringList & InfoList ()
 
QStringList & InfoTitle ()
 
bool isSolarSystem () const
 
virtual QString labelString () const
 
virtual QString longname (void) const
 
float mag (void) const
 
float mag (const QString &band) const
 
QString messageFromTitle (const QString &imageTitle)
 
virtual QString name (void) const
 
QString name2 (void) const
 
QString & notes ()
 
SkyPoint recomputeCoords (const KStarsDateTime &dt, const GeoLocation *geo=0)
 
QTime riseSetTime (const KStarsDateTime &dt, const GeoLocation *geo, bool rst, bool exact=true)
 
dms riseSetTimeAz (const KStarsDateTime &dt, const GeoLocation *geo, bool rst)
 
QTime riseSetTimeUT (const KStarsDateTime &dt, const GeoLocation *geo, bool rst, bool exact=true)
 
void saveUserLog (const QString &newLog)
 
void setLongName (const QString &longname=QString())
 
void setNotes (QString _notes)
 
void setType (int t)
 
void showPopupMenu (KSPopupMenu *pmenu, const QPoint &pos)
 
dms transitAltitude (const KStarsDateTime &dt, const GeoLocation *geo)
 
QTime transitTime (const KStarsDateTime &dt, const GeoLocation *geo)
 
QTime transitTimeUT (const KStarsDateTime &dt, const GeoLocation *geo)
 
QString translatedLongName () const
 
QString translatedName () const
 
QString translatedName2 () const
 
int type (void) const
 
QString typeName () const
 
QString & userLog ()
 
- Public Member Functions inherited from SkyPoint
 SkyPoint (const dms &r, const dms &d)
 
 SkyPoint (double r, double d)
 
 SkyPoint ()
 
virtual ~SkyPoint ()
 
void aberrate (const KSNumbers *num)
 
void addEterms (void)
 
const dms & alt () const
 
dms altRefracted () const
 
dms angularDistanceTo (const SkyPoint *sp, double *const positionAngle=0) const
 
void apparentCoord (long double jd0, long double jdf)
 
const dms & az () const
 
void B1950ToJ2000 (void)
 
bool bendlight ()
 
bool checkBendLight ()
 
bool checkCircumpolar (const dms *gLat)
 
const dms & dec () const
 
const dms & dec0 () const
 
SkyPoint deprecess (const KSNumbers *num, long double epoch=J2000)
 
void Equatorial1950ToGalactic (dms &galLong, dms &galLat)
 
void EquatorialToHorizontal (const dms *LST, const dms *lat)
 
SkyPoint Eterms (void)
 
void findEcliptic (const dms *Obliquity, dms &EcLong, dms &EcLat)
 
void GalacticToEquatorial1950 (const dms *galLong, const dms *galLat)
 
void HorizontalToEquatorial (const dms *LST, const dms *lat)
 
void J2000ToB1950 (void)
 
SkyPoint moveAway (const SkyPoint &from, double dist)
 
void nutate (const KSNumbers *num)
 
bool operator== (SkyPoint &p)
 
void precessFromAnyEpoch (long double jd0, long double jdf)
 
const dms & ra () const
 
const dms & ra0 () const
 
void set (const dms &r, const dms &d)
 
void setAlt (dms alt)
 
void setAlt (double alt)
 
void setAz (dms az)
 
void setAz (double az)
 
void setDec (dms d)
 
void setDec (double d)
 
void setDec0 (dms d)
 
void setDec0 (double d)
 
void setFromEcliptic (const dms *Obliquity, const dms &EcLong, const dms &EcLat)
 
void setRA (dms r)
 
void setRA (double r)
 
void setRA0 (dms r)
 
void setRA0 (double r)
 
void subtractEterms (void)
 
double vGeocentric (double vhelio, long double jd)
 
double vGeoToVHelio (double vgeo, long double jd)
 
double vHeliocentric (double vlsr, long double jd)
 
double vHelioToVlsr (double vhelio, long double jd)
 
double vREarth (long double jd0)
 
double vRSite (double vsite[3])
 
double vRSun (long double jd)
 
double vTopocentric (double vgeo, double vsite[3])
 
double vTopoToVGeo (double vtopo, double vsite[3])
 

Protected Member Functions

virtual bool findGeocentricPosition (const KSNumbers *num, const KSPlanetBase *Earth=NULL)
 
void set_a (double newa)
 
void set_e (double newe)
 
void set_i (double newi)
 
void set_M (double newM)
 
void set_N (double newN)
 
void set_P (double newP)
 
void set_w (double neww)
 
void setJD (long double jd)
 
- Protected Member Functions inherited from KSPlanetBase
void findPA (const KSNumbers *num)
 
virtual void findPhase ()
 
UID solarsysUID (UID type) const
 
- Protected Member Functions inherited from SkyObject
void setMag (float m)
 
void setMag (const QString &band, const double mag)
 
void setName (const QString &name)
 
void setName2 (const QString &name2=QString())
 
- Protected Member Functions inherited from SkyPoint
void precess (const KSNumbers *num)
 

Additional Inherited Members

- Public Types inherited from KSPlanetBase
enum  Planets {
  MERCURY =0, VENUS =1, MARS =2, JUPITER =3,
  SATURN =4, URANUS =5, NEPTUNE =6, PLUTO =7,
  SUN =8, MOON =9, UNKNOWN_PLANET
}
 
- Public Types inherited from SkyObject
enum  TYPE {
  STAR =0, CATALOG_STAR =1, PLANET =2, OPEN_CLUSTER =3,
  GLOBULAR_CLUSTER =4, GASEOUS_NEBULA =5, PLANETARY_NEBULA =6, SUPERNOVA_REMNANT =7,
  GALAXY =8, COMET =9, ASTEROID =10, CONSTELLATION =11,
  MOON =12, ASTERISM =13, GALAXY_CLUSTER =14, DARK_NEBULA =15,
  QUASAR =16, MULT_STAR =17, RADIO_SOURCE =18, SATELLITE =19,
  SUPERNOVA =20, TYPE_UNKNOWN
}
 
typedef qint64 UID
 
- Static Public Member Functions inherited from KSPlanetBase
static KSPlanetBase * createPlanet (int n)
 
- Static Public Member Functions inherited from TrailObject
static void clearTrailsExcept (SkyObject *o)
 
- Static Public Member Functions inherited from SkyObject
static QString typeName (const int t)
 
- Static Public Member Functions inherited from SkyPoint
static double refract (const double alt)
 
static dms refract (const dms alt)
 
static double refractionCorr (double alt)
 
static double unrefract (const double alt)
 
static dms unrefract (const dms alt)
 
- Static Public Attributes inherited from KSPlanetBase
static QVector< QColor > planetColor
 
- Static Public Attributes inherited from TrailObject
static const int MaxTrail = 400
 
- Static Public Attributes inherited from SkyObject
static const UID invalidUID = ~0
 
static const UID UID_DEEPSKY = 2
 
static const UID UID_GALAXY = 1
 
static const UID UID_SOLARSYS = 3
 
static const UID UID_STAR = 0
 
- Static Public Attributes inherited from SkyPoint
static const double altCrit = -1.0
 
- Protected Attributes inherited from KSPlanetBase
EclipticPosition ep
 
EclipticPosition helEcPos
 
QImage m_image
 
double Phase
 
double Rearth
 
- Protected Attributes inherited from TrailObject
QList< SkyPoint > Trail
 
- Protected Attributes inherited from SkyObject
QSharedDataPointer< AuxInfo > info
 
QString LongName
 
QString Name
 
QString Name2
 
- Protected Attributes inherited from SkyPoint
long double lastPrecessJD
 
- Static Protected Attributes inherited from KSPlanetBase
static const UID UID_SOL_ASTEROID = 1
 
static const UID UID_SOL_BIGOBJ = 0
 
static const UID UID_SOL_COMET = 2
 
- Static Protected Attributes inherited from TrailObject
static QSet< TrailObject * > trailObjects
 
- Static Protected Attributes inherited from SkyObject
static QString emptyString
 
static QString starString = QString("star")
 
static QString unnamedObjectString = QString(I18N_NOOP("unnamed object"))
 
static QString unnamedString = QString(I18N_NOOP("unnamed"))
 

Detailed Description

A subclass of KSPlanetBase that implements asteroids.

The orbital elements are stored as private member variables, and it provides methods to compute the ecliptic coordinates for any time from the orbital elements.

The orbital elements are:

  • JD Epoch of element values
  • a semi-major axis length (AU)
  • e eccentricity of orbit
  • i inclination angle (with respect to J2000.0 ecliptic plane)
  • w argument of perihelion (w.r.t. J2000.0 ecliptic plane)
  • N longitude of ascending node (J2000.0 ecliptic)
  • M mean anomaly at epoch JD
  • H absolute magnitude
  • G slope parameter
Author
Jason Harris
Version
1.0

Definition at line 48 of file ksasteroid.h.

Constructor & Destructor Documentation

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.

catN number of asteroid s the name of the asteroid image_file the filename for an image of the asteroid JD the Julian Day for the orbital elements a the semi-major axis of the asteroid's orbit (AU) e the eccentricity of the asteroid's orbit i the inclination angle of the asteroid's orbit w the argument of the orbit's perihelion N the longitude of the orbit's ascending node M the mean anomaly for the Julian Day H absolute magnitude G slope parameter

Definition at line 26 of file ksasteroid.cpp.

virtual KSAsteroid::~KSAsteroid ( )
inlinevirtual

Destructor (empty)

Definition at line 73 of file ksasteroid.h.

Member Function Documentation

KSAsteroid * KSAsteroid::clone ( ) const
virtual

Create copy of object.

This method is virtual copy constructor. It allows for safe copying of objects. In other words, KSPlanet object stored in SkyObject pointer will be copied as KSPlanet. Each subclass of SkyObject MUST implement clone method.

Returns
pointer to newly allocated object. Caller takes full responsibility for deallocating it.

Reimplemented from TrailObject.

Reimplemented in KSPluto.

Definition at line 36 of file ksasteroid.cpp.

bool KSAsteroid::findGeocentricPosition ( const KSNumbers *  num,
const KSPlanetBase *  Earth = NULL 
)
protectedvirtual

Calculate the geocentric RA, Dec coordinates of the Asteroid.

Note
reimplemented from KSPlanetBase
Parameters
numtime-dependent values for the desired date
Earthplanet Earth (needed to calculate geocentric coords)
Returns
true if position was successfully calculated.

Implements KSPlanetBase.

Reimplemented in KSPluto.

Definition at line 41 of file ksasteroid.cpp.

double KSAsteroid::getAbsoluteMagnitude ( )
inline

This lets other classes like KSPlanetBase access H and G values Used by KSPlanetBase::FindMagnitude.

Definition at line 83 of file ksasteroid.h.

float KSAsteroid::getAlbedo ( )
inline
Returns
the asteroid's albedo

Definition at line 144 of file ksasteroid.h.

float KSAsteroid::getDiameter ( )
inline
Returns
the asteroid's diameter

Definition at line 154 of file ksasteroid.h.

QString KSAsteroid::getDimensions ( )
inline
Returns
the asteroid's dimensions

Definition at line 164 of file ksasteroid.h.

double KSAsteroid::getEarthMOID ( )
inline
Returns
the asteroid's earth minimum orbit intersection distance in km

Definition at line 104 of file ksasteroid.h.

QString KSAsteroid::getOrbitClass ( )
inline
Returns
the asteroid's orbit class

Definition at line 124 of file ksasteroid.h.

QString KSAsteroid::getOrbitID ( )
inline
Returns
the asteroid's orbit solution ID

Definition at line 114 of file ksasteroid.h.

double KSAsteroid::getPerihelion ( )
inline
Returns
Perihelion distance

Definition at line 94 of file ksasteroid.h.

float KSAsteroid::getPeriod ( )
inline
Returns
the asteroid's period

Definition at line 184 of file ksasteroid.h.

float KSAsteroid::getRotationPeriod ( )
inline
Returns
the asteroid's rotation period

Definition at line 174 of file ksasteroid.h.

double KSAsteroid::getSlopeParameter ( )
inline

Definition at line 84 of file ksasteroid.h.

SkyObject::UID KSAsteroid::getUID ( ) const
virtual

Return UID for object.

This method should be reimplemented in all concrete subclasses. Implementation for SkyObject just returns invalidUID. It's required SkyObject is not an abstract class.

Reimplemented from SkyObject.

Definition at line 189 of file ksasteroid.cpp.

bool KSAsteroid::isNEO ( )
inline
Returns
true if the asteroid is a near earth object

Definition at line 134 of file ksasteroid.h.

bool KSAsteroid::loadData ( )
virtual

This is inherited from KSPlanetBase.

We don't use it in this class, so it is empty.

Implements KSPlanetBase.

Definition at line 187 of file ksasteroid.cpp.

void KSAsteroid::set_a ( double  newa)
inlineprotected

Definition at line 196 of file ksasteroid.h.

void KSAsteroid::set_e ( double  newe)
inlineprotected

Definition at line 197 of file ksasteroid.h.

void KSAsteroid::set_i ( double  newi)
inlineprotected

Definition at line 199 of file ksasteroid.h.

void KSAsteroid::set_M ( double  newM)
inlineprotected

Definition at line 201 of file ksasteroid.h.

void KSAsteroid::set_N ( double  newN)
inlineprotected

Definition at line 202 of file ksasteroid.h.

void KSAsteroid::set_P ( double  newP)
inlineprotected

Definition at line 198 of file ksasteroid.h.

void KSAsteroid::set_w ( double  neww)
inlineprotected

Definition at line 200 of file ksasteroid.h.

void KSAsteroid::setAlbedo ( float  albedo)

Sets the asteroid's albedo.

Definition at line 146 of file ksasteroid.cpp.

void KSAsteroid::setDiameter ( float  diam)

Sets the asteroid's diameter.

Definition at line 151 of file ksasteroid.cpp.

void KSAsteroid::setDimensions ( QString  dim)

Sets the asteroid's dimensions.

Definition at line 156 of file ksasteroid.cpp.

void KSAsteroid::setEarthMOID ( double  earth_moid)

Sets the asteroid's earth minimum orbit intersection distance.

Definition at line 141 of file ksasteroid.cpp.

void KSAsteroid::setJD ( long double  jd)
inlineprotected

Definition at line 203 of file ksasteroid.h.

void KSAsteroid::setNEO ( bool  neo)

Sets if the comet is a near earth object.

Definition at line 161 of file ksasteroid.cpp.

void KSAsteroid::setOrbitClass ( QString  orbit_class)

Sets the asteroid's orbit class.

Definition at line 166 of file ksasteroid.cpp.

void KSAsteroid::setOrbitID ( QString  orbit_id)

Sets the asteroid's orbit solution ID.

Definition at line 171 of file ksasteroid.cpp.

void KSAsteroid::setPerihelion ( double  perihelion)

Sets the asteroid's perihelion distance.

Definition at line 136 of file ksasteroid.cpp.

void KSAsteroid::setPeriod ( float  per)

Sets the asteroid's period.

Definition at line 176 of file ksasteroid.cpp.

void KSAsteroid::setRotationPeriod ( float  rot_per)

Sets the asteroid's rotation period.

Definition at line 181 of file ksasteroid.cpp.


The documentation for this class was generated from the following files:
  • ksasteroid.h
  • ksasteroid.cpp
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 22:36:22 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