SGEphemeris Class Reference

Ephemeris class. More...

#include <ephemeris.hxx>

List of all members.

Public Member Functions

 SGEphemeris (const string &path)
 Constructor.
 ~SGEphemeris (void)
 Destructor.
void update (double mjd, double lst, double lat)
 Update (recalculate) the positions of all objects for the specified time.
Starget_sun () const
 
Returns:
a pointer to a Star class containing all the positional information for Earth's Sun.

double getSunRightAscension () const
 
Returns:
the right ascension of the Sun.

double getSunDeclination () const
 
Returns:
the declination of the Sun.

MoonPosget_moon () const
 
Returns:
a pointer to a Moon class containing all the positional information for Earth's Moon.

double getMoonRightAscension () const
 
Returns:
the right ascension of the Moon.

double getMoonDeclination () const
 
Returns:
the declination of the Moon.

int getNumPlanets () const
 
Returns:
the numbers of defined planets.

sgdVec3 * getPlanets ()
 Returns a pointer to an array of planet data in sgdVec3 format.
int getNumStars () const
 
Returns:
the numbers of defined stars.

sgdVec3 * getStars ()
 Returns a pointer to an array of star data in sgdVec3 format.


Detailed Description

Ephemeris class.

Written by Durk Talsma <d.talsma@direct.a2000.nl> and Curtis Olson <http://www.flightgear.org/~curt>

Introduction

The SGEphemeris class computes and stores the positions of the Sun, the Moon, the planets, and the brightest stars. These positions can then be used to accurately render the dominant visible items in the Earth's sky. Note, this class isn't intended for use in an interplanetary/interstellar/intergalactic type application. It is calculates everything relative to the Earth and is therefore best suited for Earth centric applications.

The positions of the various astronomical objects are time dependent, so to maintain accuracy, you will need to periodically call the update() method. The SGTime class conveniently provides the two time related values you need to pass to the update() method.

Definition at line 69 of file ephemeris.hxx.


Constructor & Destructor Documentation

SGEphemeris::SGEphemeris ( const string &  path  ) 

Constructor.

This creates an instance of the SGEphemeris object. When calling the constructor you need to provide a path pointing to your star database file.

Parameters:
path path to your star database

Definition at line 34 of file ephemeris.cxx.


Member Function Documentation

void SGEphemeris::update ( double  mjd,
double  lst,
double  lat 
)

Update (recalculate) the positions of all objects for the specified time.

The update() method requires you to pass in the current modified Julian date, the current local sidereal time, and the current latitude. The update() method is designed to be called by the host application before every frame.

Parameters:
mjd modified julian date
lst current local sidereal time
lat current latitude

Definition at line 69 of file ephemeris.cxx.

References CelestialBody::getPos(), Neptune::updatePosition(), Uranus::updatePosition(), Saturn::updatePosition(), Jupiter::updatePosition(), Mars::updatePosition(), Venus::updatePosition(), Mercury::updatePosition(), MoonPos::updatePosition(), and Star::updatePosition().

sgdVec3* SGEphemeris::getPlanets (  )  [inline]

Returns a pointer to an array of planet data in sgdVec3 format.

(See plib.sourceforge.net for information on plib and the ``sg'' package.) An sgdVec3 is a 3 element double array. The first element is the right ascension of the planet, the second is the declination, and the third is the magnitude.

Returns:
planets array

Definition at line 158 of file ephemeris.hxx.

sgdVec3* SGEphemeris::getStars (  )  [inline]

Returns a pointer to an array of star data in sgdVec3 format.

An The first element of the sgdVec3 is the right ascension of the planet, the second is the declination, and the third is the magnitude.

Returns:
star array

Definition at line 170 of file ephemeris.hxx.

References SGStarData::getStars().


The documentation for this class was generated from the following files:
Generated on Mon Dec 17 09:30:57 2007 for SimGear by  doxygen 1.5.1