Home · All Namespaces · All Classes · Functions · Coding Style · Scripting · Plugins · File Structure

StelObject Class Reference

The base abstract class for sky objects used in Stellarium like Stars, Planets, Constellations etc. More...

#include <StelObject.hpp>

Inherits StelRegionObject.

Inherited by BigStarCatalogExtension::StarWrapperBase, Constellation, Nebula, Planet, and Telescope.

List of all members.

Public Types

enum  InfoStringGroup {
  Name = 0x00000001, CatalogNumber = 0x00000002, Magnitude = 0x00000004, RaDecJ2000 = 0x00000008,
  RaDecOfDate = 0x00000010, AltAzi = 0x00000020, Distance = 0x00000040, Size = 0x00000080,
  Extra1 = 0x00000100, Extra2 = 0x00000200, Extra3 = 0x00000400, PlainText = 0x00000800,
  HourAngle = 0x00001000, AbsoluteMagnitude = 0x00002000
}

Public Member Functions

virtual SphericalRegionP getRegion () const
virtual QString getInfoString (const StelCore *core, const InfoStringGroup &flags=StelObject::AllInfo) const =0
virtual QString getType (void) const =0
virtual QString getEnglishName (void) const =0
virtual QString getNameI18n (void) const =0
virtual Vec3d getJ2000EquatorialPos (const StelNavigator *nav) const =0
Vec3d getEquinoxEquatorialPos (const StelNavigator *nav) const
Vec3d getSideralPos (const StelCore *core) const
Vec3d getAltAzPos (const StelNavigator *nav) const
virtual float getVMagnitude (const StelNavigator *nav) const
virtual float getSelectPriority (const StelNavigator *nav) const
virtual Vec3f getInfoColor () const
virtual double getCloseViewFov (const StelNavigator *nav) const
virtual double getSatellitesFov (const StelNavigator *nav) const
virtual double getParentSatellitesFov (const StelNavigator *nav) const
virtual double getAngularSize (const StelCore *core) const =0

Static Public Attributes

static const InfoStringGroup AllInfo = (InfoStringGroup)(Name|CatalogNumber|Magnitude|RaDecJ2000|RaDecOfDate|AltAzi|Distance|Size|Extra1|Extra2|Extra3|HourAngle|AbsoluteMagnitude)
static const InfoStringGroup ShortInfo = (InfoStringGroup)(Name|CatalogNumber|Magnitude|RaDecJ2000)

Protected Member Functions

QString getPositionInfoString (const StelCore *core, const InfoStringGroup &flags) const
void postProcessInfoString (QString &str, const InfoStringGroup &flags) const


Detailed Description

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.

See also:
StelObjectP

Member Enumeration Documentation

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.

Enumerator:
Name  An object's name.
CatalogNumber  Catalog numbers.
Magnitude  Magnitude related data.
RaDecJ2000  The equatorial position (J2000 ref).
RaDecOfDate  The equatorial position (of date).
AltAzi  The position (Altitude/Azimuth).
Distance  Info about an object's distance.
Size  Info about an object's size.
Extra1  Derived class-specific extra fields.
Extra2  Derived class-specific extra fields.
Extra3  Derived class-specific extra fields.
PlainText  Strip HTML tags from output.
HourAngle  The hour angle + DE (of date).
AbsoluteMagnitude  The absolute magnitude.


Member Function Documentation

virtual SphericalRegionP StelObject::getRegion (  )  const [inline, virtual]

Default implementation of the getRegion method.

Calling this method on some object will cause an error if they need a valid StelNavigator instance to compute their position. Return the spatial region of the object.

Implements StelRegionObject.

virtual QString StelObject::getInfoString ( const StelCore core,
const InfoStringGroup flags = StelObject::AllInfo 
) const [pure virtual]

Write I18n information about the object in QString.

Parameters:
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.
Returns:
an HTML string containing information about the StelObject.

Implemented in BigStarCatalogExtension::StarWrapperBase.

virtual QString StelObject::getType ( void   )  const [pure virtual]

Return object's type. It should be the name of the class.

Implemented in BigStarCatalogExtension::StarWrapperBase.

virtual QString StelObject::getEnglishName ( void   )  const [pure virtual]

Return object's name in english.

Implemented in BigStarCatalogExtension::StarWrapperBase.

virtual QString StelObject::getNameI18n ( void   )  const [pure virtual]

Return translated object's name.

Implemented in BigStarCatalogExtension::StarWrapperBase.

virtual Vec3d StelObject::getJ2000EquatorialPos ( const StelNavigator nav  )  const [pure virtual]

Get observer-centered equatorial coordinates at equinox J2000.

Vec3d StelObject::getEquinoxEquatorialPos ( const StelNavigator nav  )  const

Get observer-centered equatorial coordinate at the current equinox The frame has it's 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.

Vec3d StelObject::getSideralPos ( const StelCore core  )  const

Get observer-centered hour angle + declination (at current equinox) The frame has its Z axis at the planet's current rotation axis.

Vec3d StelObject::getAltAzPos ( const StelNavigator nav  )  const

Get observer-centered alt/az position The frame has it's Z axis at the zenith.

virtual float StelObject::getVMagnitude ( const StelNavigator nav  )  const [inline, virtual]

Return object's apparent V magnitude as seen from observer.

virtual float StelObject::getSelectPriority ( const StelNavigator nav  )  const [inline, virtual]

Return a priority value which is used to discriminate objects by priority As for magnitudes, the lower is the higher priority.

virtual Vec3f StelObject::getInfoColor ( void   )  const [inline, virtual]

Get a color used to display info about the object.

virtual double StelObject::getCloseViewFov ( const StelNavigator nav  )  const [inline, virtual]

Return the best FOV in degree to use for a close view of the object.

virtual double StelObject::getSatellitesFov ( const StelNavigator nav  )  const [inline, virtual]

Return the best FOV in degree to use for a global view of the object satellite system (if there are satellites).

virtual double StelObject::getAngularSize ( const StelCore core  )  const [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().

Returns:
radius in degree. This value is the apparent angular size of the object, and is independent of the current FOV.

QString StelObject::getPositionInfoString ( const StelCore core,
const InfoStringGroup flags 
) const [protected]

Format the positional info string contain J2000/of date/altaz/hour angle positions for the object.

void StelObject::postProcessInfoString ( QString &  str,
const InfoStringGroup flags 
) const [protected]

Apply post processing on the info string.


Member Data Documentation

const InfoStringGroup StelObject::AllInfo = (InfoStringGroup)(Name|CatalogNumber|Magnitude|RaDecJ2000|RaDecOfDate|AltAzi|Distance|Size|Extra1|Extra2|Extra3|HourAngle|AbsoluteMagnitude) [static]

A pre-defined set of specifiers for the getInfoString flags argument to getInfoString.

const InfoStringGroup StelObject::ShortInfo = (InfoStringGroup)(Name|CatalogNumber|Magnitude|RaDecJ2000) [static]

A pre-defined set of specifiers for the getInfoString flags argument to getInfoString.


Generated on Mon Mar 22 09:55:39 2010 for Stellarium by  doxygen 1.5.5