Stellarium
0.16.1
|
The base abstract class for sky objects used in Stellarium like Stars, Planets, Constellations etc... More...
#include <StelObject.hpp>
Public Types | |
enum | InfoStringGroupFlags { Name = 0x00000001, CatalogNumber = 0x00000002, Magnitude = 0x00000004, RaDecJ2000 = 0x00000008, RaDecOfDate = 0x00000010, AltAzi = 0x00000020, Distance = 0x00000040, Size = 0x00000080, Extra = 0x00000100, HourAngle = 0x00000200, AbsoluteMagnitude = 0x00000400, GalacticCoord = 0x00000800, SupergalacticCoord = 0x00001000, ObjectType = 0x00002000, EclipticCoordJ2000 = 0x00004000, EclipticCoordOfDate = 0x00008000, IAUConstellation = 0x00010000, SiderealTime = 0x00020000, NoFont = 0x00040000, PlainText = 0x00080000 } |
Used as named bitfield flags as specifiers to filter results of getInfoString. More... | |
Public Member Functions | |
virtual SphericalRegionP | getRegion () const |
Default implementation of the getRegion method. More... | |
virtual Vec3d | getPointInRegion () const |
Default implementation of the getPointInRegion method. More... | |
virtual QString | getInfoString (const StelCore *core, const InfoStringGroup &flags=StelObject::AllInfo) const =0 |
Write I18n information about the object in QString. More... | |
virtual QVariantMap | getInfoMap (const StelCore *core) const |
Return a key/value map with data about an object's position, magnitude and so on. More... | |
virtual QString | getType () const =0 |
Return object's type. It should be the name of the class. More... | |
virtual QString | getID () const =0 |
Returns a unique identifier for this object. More... | |
virtual QString | getEnglishName () const =0 |
Return object's name in english. More... | |
virtual QString | getNameI18n () const =0 |
Return translated object's name. More... | |
virtual Vec3d | getJ2000EquatorialPos (const StelCore *core) const =0 |
Get observer-centered equatorial coordinates at equinox J2000. More... | |
Vec3d | getEquinoxEquatorialPos (const StelCore *core) const |
Get observer-centered equatorial coordinate at the current equinox The frame has its Z axis at the planet's current rotation axis At time 2000-01-01 this frame is almost the same as J2000, but ONLY if the observer is on earth. More... | |
Vec3d | getEquinoxEquatorialPosApparent (const StelCore *core) const |
Like getEquinoxEquatorialPos(core), but always adds refraction correction to the position. More... | |
Vec3d | getEquinoxEquatorialPosAuto (const StelCore *core) const |
Like getEquinoxEquatorialPos(core), but adds refraction correction to the position if atmosphere is active. More... | |
Vec3d | getGalacticPos (const StelCore *core) const |
Get observer-centered galactic coordinates. More... | |
Vec3d | getSupergalacticPos (const StelCore *core) const |
Get observer-centered supergalactic coordinates. More... | |
Vec3d | getSiderealPosGeometric (const StelCore *core) const |
Get observer-centered hour angle + declination (at current equinox) It is the geometric position, i.e. More... | |
Vec3d | getSiderealPosApparent (const StelCore *core) const |
Get observer-centered hour angle + declination (at current equinox) It is the apparent position, i.e. More... | |
Vec3d | getAltAzPosGeometric (const StelCore *core) const |
Get observer-centered alt/az position It is the geometric position, i.e. More... | |
Vec3d | getAltAzPosApparent (const StelCore *core) const |
Get observer-centered alt/az position It is the apparent position, i.e. More... | |
Vec3d | getAltAzPosAuto (const StelCore *core) const |
Get observer-centered alt/az position It is the automatic position, i.e. More... | |
bool | isAboveHorizon (const StelCore *core) const |
Checking position an object above mathematical horizon for current location. More... | |
bool | isAboveRealHorizon (const StelCore *core) const |
Checking position an object above real horizon for current location. More... | |
virtual float | getVMagnitude (const StelCore *core) const |
Return object's apparent V magnitude as seen from observer, without including extinction. More... | |
float | getVMagnitudeWithExtinction (const StelCore *core) const |
Return object's apparent V magnitude as seen from observer including extinction. More... | |
virtual float | getSelectPriority (const StelCore *) const |
Return a priority value which is used to discriminate objects by priority As for magnitudes, the lower is the higher priority. More... | |
virtual Vec3f | getInfoColor () const |
Get a color used to display info about the object. More... | |
virtual double | getCloseViewFov (const StelCore *) const |
Return the best FOV in degree to use for a close view of the object. More... | |
virtual double | getSatellitesFov (const StelCore *) const |
Return the best FOV in degree to use for a global view of the object satellite system (if there are satellites) More... | |
virtual double | getParentSatellitesFov (const StelCore *) const |
virtual double | getAngularSize (const StelCore *core) const =0 |
Return the angular radius of a circle containing the object as seen from the observer with the circle center assumed to be at getJ2000EquatorialPos(). More... | |
Static Public Attributes | |
static const InfoStringGroupFlags | AllInfo |
A pre-defined set of specifiers for the getInfoString flags argument to getInfoString. More... | |
static const InfoStringGroupFlags | ShortInfo = (InfoStringGroupFlags)(Name|CatalogNumber|Magnitude|RaDecJ2000) |
A pre-defined set of specifiers for the getInfoString flags argument to getInfoString. More... | |
Protected Member Functions | |
QString | getCommonInfoString (const StelCore *core, const InfoStringGroup &flags) const |
Format the positional info string contain J2000/of date/altaz/hour angle positions and constellation, sidereal time, etc. for the object. More... | |
void | postProcessInfoString (QString &str, const InfoStringGroup &flags) const |
Apply post processing on the info string. More... | |
The base abstract class for sky objects used in Stellarium like Stars, Planets, Constellations etc...
Normally you should use StelObjectP instead of StelObject* which have by default the same behaviour, but which can be added reference counting if needed.
Definition at line 36 of file StelObject.hpp.
Used as named bitfield flags as specifiers to filter results of getInfoString.
The precise definition of these should be documented in the getInfoString documentation for the derived classes for all specifiers which are defined in that derivative. Use InfoStringGroup instead.
Definition at line 47 of file StelObject.hpp.
Get observer-centered alt/az position It is the apparent position, i.e.
taking the refraction effect into account. The frame has its Z axis at the zenith
Get observer-centered alt/az position It is the automatic position, i.e.
taking the refraction effect into account if atmosphere is on. The frame has its Z axis at the zenith
Get observer-centered alt/az position It is the geometric position, i.e.
without taking refraction effect into account. The frame has its Z axis at the zenith
|
pure virtual |
Return the angular radius of a circle containing the object as seen from the observer with the circle center assumed to be at getJ2000EquatorialPos().
Implemented in Planet, Nebula, Satellite, MeteorShower, Exoplanet, Pulsar, StarWrapper< Star >, StarWrapper< Star2 >, StarWrapper< Star3 >, StarWrapper< Star1 >, Quasar, Supernova, Nova, TelescopeClient, and CustomObject.
|
inlinevirtual |
Return the best FOV in degree to use for a close view of the object.
Reimplemented in Planet, and Nebula.
Definition at line 222 of file StelObject.hpp.
|
protected |
Format the positional info string contain J2000/of date/altaz/hour angle positions and constellation, sidereal time, etc. for the object.
|
pure virtual |
Return object's name in english.
Implemented in Planet, Satellite, Nebula, StarWrapper1, MeteorShower, Exoplanet, Pulsar, StarWrapper< Star >, Quasar, StarWrapper< Star2 >, StarWrapper< Star3 >, StarWrapper< Star1 >, Comet, Supernova, Nova, MinorPlanet, CustomObject, TelescopeClient, and StarWrapperBase.
Get observer-centered equatorial coordinate at the current equinox The frame has its Z axis at the planet's current rotation axis At time 2000-01-01 this frame is almost the same as J2000, but ONLY if the observer is on earth.
Like getEquinoxEquatorialPos(core), but always adds refraction correction to the position.
Like getEquinoxEquatorialPos(core), but adds refraction correction to the position if atmosphere is active.
Get observer-centered galactic coordinates.
|
pure virtual |
Returns a unique identifier for this object.
The ID should be unique for all objects of the same type, but may freely conflict with IDs of other types, so getType() must also be tested.
With this it should be possible to at least identify the same object in a different instance of Stellarium running the same version, but it would even be better if the ID provides some degree of forward-compatibility. For some object types (e.g. planets) this may simply return getEnglishName(), but better candidates may be official designations or at least (stable) internal IDs.
An object may have multiple IDs (different catalog numbers, etc). StelObjectMgr::searchByID() should search through all ID variants, but this method only returns one of them.
Implemented in Planet, Nebula, Satellite, MeteorShower, Exoplanet, Pulsar, TelescopeClient, Supernova, Quasar, Nova, CustomObject, and StarWrapperBase.
|
inlinevirtual |
Get a color used to display info about the object.
Reimplemented in Planet, Satellite, Nebula, MeteorShower, Exoplanet, Pulsar, StarWrapper< Star >, StarWrapper< Star2 >, StarWrapper< Star3 >, StarWrapper< Star1 >, Quasar, Supernova, Nova, TelescopeClient, and CustomObject.
Definition at line 219 of file StelObject.hpp.
|
virtual |
Return a key/value map with data about an object's position, magnitude and so on.
Useful in a context like scripting. Derived objects can add their own special information tags.
core | the current StelCore |
Reimplemented in Planet, Satellite, Nebula, StarWrapper1, MeteorShower, Exoplanet, Pulsar, Comet, Quasar, Supernova, and Nova.
|
pure virtual |
Write I18n information about the object in QString.
core | the StelCore object to use |
flags | a set of InfoStringGroup flags which are used to filter the return value - including specified types of information and altering the output format. |
Implemented in Planet, Nebula, Satellite, StarWrapper1, MeteorShower, Exoplanet, Pulsar, Comet, Quasar, TelescopeClient, Supernova, MinorPlanet, Nova, StarWrapperBase, and CustomObject.
Get observer-centered equatorial coordinates at equinox J2000.
Implemented in Planet, Satellite, Nebula, TelescopeClientDummy, MeteorShower, Exoplanet, Pulsar, Quasar, Supernova, Nova, StarWrapper< Star >, StarWrapper< Star2 >, StarWrapper< Star3 >, StarWrapper< Star1 >, CustomObject, and TelescopeClientJsonRts2.
|
pure virtual |
Return translated object's name.
Implemented in Planet, Satellite, Nebula, MeteorShower, Exoplanet, Pulsar, StarWrapper< Star >, StarWrapper< Star2 >, StarWrapper< Star3 >, StarWrapper< Star1 >, Comet, Quasar, Supernova, Nova, MinorPlanet, CustomObject, TelescopeClient, and StarWrapperBase.
|
inlinevirtual |
Default implementation of the getPointInRegion method.
Return the J2000 Equatorial Position of the object.
Implements StelRegionObject.
Definition at line 92 of file StelObject.hpp.
|
inlinevirtual |
Default implementation of the getRegion method.
Return the spatial region of the object.
Implements StelRegionObject.
Reimplemented in Nebula.
Definition at line 88 of file StelObject.hpp.
|
inlinevirtual |
Return the best FOV in degree to use for a global view of the object satellite system (if there are satellites)
Reimplemented in Planet.
Definition at line 225 of file StelObject.hpp.
|
virtual |
Return a priority value which is used to discriminate objects by priority As for magnitudes, the lower is the higher priority.
Reimplemented in Planet, Nebula, Satellite, MeteorShower, Exoplanet, Pulsar, Quasar, and CustomObject.
Get observer-centered hour angle + declination (at current equinox) It is the apparent position, i.e.
taking the refraction effect into account. The frame has its Z axis at the planet's current rotation axis
Get observer-centered hour angle + declination (at current equinox) It is the geometric position, i.e.
without taking refraction effect into account. The frame has its Z axis at the planet's current rotation axis
Get observer-centered supergalactic coordinates.
|
pure virtual |
Return object's type. It should be the name of the class.
Implemented in Planet, Nebula, Satellite, MeteorShower, TelescopeClient, Exoplanet, Pulsar, Supernova, Quasar, Nova, StarWrapperBase, and CustomObject.
|
virtual |
Return object's apparent V magnitude as seen from observer, without including extinction.
Reimplemented in Planet, Satellite, Nebula, Exoplanet, Pulsar, Comet, StarWrapper< Star >, Quasar, Supernova, StarWrapper< Star2 >, StarWrapper< Star3 >, StarWrapper< Star1 >, Nova, MinorPlanet, and CustomObject.
float StelObject::getVMagnitudeWithExtinction | ( | const StelCore * | core | ) | const |
Return object's apparent V magnitude as seen from observer including extinction.
Extinction obviously only if atmosphere=on.
bool StelObject::isAboveHorizon | ( | const StelCore * | core | ) | const |
Checking position an object above mathematical horizon for current location.
bool StelObject::isAboveRealHorizon | ( | const StelCore * | core | ) | const |
Checking position an object above real horizon for current location.
|
protected |
Apply post processing on the info string.
|
static |
A pre-defined set of specifiers for the getInfoString flags argument to getInfoString.
Definition at line 78 of file StelObject.hpp.
|
static |
A pre-defined set of specifiers for the getInfoString flags argument to getInfoString.
Definition at line 82 of file StelObject.hpp.