kstars
#include <ksasteroid.h>

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) |
![]() | |
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) |
![]() | |
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) |
![]() | |
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 () |
![]() | |
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) |
![]() | |
void | findPA (const KSNumbers *num) |
virtual void | findPhase () |
UID | solarsysUID (UID type) const |
![]() | |
void | setMag (float m) |
void | setMag (const QString &band, const double mag) |
void | setName (const QString &name) |
void | setName2 (const QString &name2=QString()) |
![]() | |
void | precess (const KSNumbers *num) |
Additional Inherited Members | |
![]() | |
enum | Planets { MERCURY =0, VENUS =1, MARS =2, JUPITER =3, SATURN =4, URANUS =5, NEPTUNE =6, PLUTO =7, SUN =8, MOON =9, UNKNOWN_PLANET } |
![]() | |
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 KSPlanetBase * | createPlanet (int n) |
![]() | |
static void | clearTrailsExcept (SkyObject *o) |
![]() | |
static QString | typeName (const int t) |
![]() | |
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 QVector< QColor > | planetColor |
![]() | |
static const int | MaxTrail = 400 |
![]() | |
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 const double | altCrit = -1.0 |
![]() | |
EclipticPosition | ep |
EclipticPosition | helEcPos |
QImage | m_image |
double | Phase |
double | Rearth |
![]() | |
QList< SkyPoint > | Trail |
![]() | |
QSharedDataPointer< AuxInfo > | info |
QString | LongName |
QString | Name |
QString | Name2 |
![]() | |
long double | lastPrecessJD |
![]() | |
static const UID | UID_SOL_ASTEROID = 1 |
static const UID | UID_SOL_BIGOBJ = 0 |
static const UID | UID_SOL_COMET = 2 |
![]() | |
static QSet< TrailObject * > | trailObjects |
![]() | |
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
- 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.
|
inlinevirtual |
Destructor (empty)
Definition at line 73 of file ksasteroid.h.
Member Function Documentation
|
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.
|
protectedvirtual |
Calculate the geocentric RA, Dec coordinates of the Asteroid.
- Note
- reimplemented from KSPlanetBase
- Parameters
-
num time-dependent values for the desired date Earth planet 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.
|
inline |
This lets other classes like KSPlanetBase access H and G values Used by KSPlanetBase::FindMagnitude.
Definition at line 83 of file ksasteroid.h.
|
inline |
- Returns
- the asteroid's albedo
Definition at line 144 of file ksasteroid.h.
|
inline |
- Returns
- the asteroid's diameter
Definition at line 154 of file ksasteroid.h.
|
inline |
- Returns
- the asteroid's dimensions
Definition at line 164 of file ksasteroid.h.
|
inline |
- Returns
- the asteroid's earth minimum orbit intersection distance in km
Definition at line 104 of file ksasteroid.h.
|
inline |
- Returns
- the asteroid's orbit class
Definition at line 124 of file ksasteroid.h.
|
inline |
- Returns
- the asteroid's orbit solution ID
Definition at line 114 of file ksasteroid.h.
|
inline |
- Returns
- Perihelion distance
Definition at line 94 of file ksasteroid.h.
|
inline |
- Returns
- the asteroid's period
Definition at line 184 of file ksasteroid.h.
|
inline |
- Returns
- the asteroid's rotation period
Definition at line 174 of file ksasteroid.h.
|
inline |
Definition at line 84 of file ksasteroid.h.
|
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.
|
inline |
- Returns
- true if the asteroid is a near earth object
Definition at line 134 of file ksasteroid.h.
|
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.
|
inlineprotected |
Definition at line 196 of file ksasteroid.h.
|
inlineprotected |
Definition at line 197 of file ksasteroid.h.
|
inlineprotected |
Definition at line 199 of file ksasteroid.h.
|
inlineprotected |
Definition at line 201 of file ksasteroid.h.
|
inlineprotected |
Definition at line 202 of file ksasteroid.h.
|
inlineprotected |
Definition at line 198 of file ksasteroid.h.
|
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.
|
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:
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.