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

StelNavigator Class Reference

Manages a navigation context. More...

#include <StelNavigator.hpp>

List of all members.

Public Types

enum  ViewingModeType { ViewHorizon, ViewEquator }
enum  MountMode { MountAltAzimuthal, MountEquatorial }

Public Slots

void toggleMountMode ()
void setEquatorialMount (bool b)
void setJDay (double JD)
double getJDay () const
void setTimeRate (double ts)
double getTimeRate () const
void increaseTimeSpeed ()
void decreaseTimeSpeed ()
void setZeroTimeSpeed ()
void setRealTimeSpeed ()
bool getRealTimeSpeed () const
void setTimeNow ()
void setTodayTime (const QTime &target)
bool getIsTimeNow () const
QTime getInitTodayTime (void)
void setInitTodayTime (const QTime &t)
void setPresetSkyTime (QDateTime dt)
void addHour ()
void addDay ()
void addWeek ()
void addSiderealDay ()
void addSiderealWeek ()
void subtractHour ()
void subtractDay ()
void subtractWeek ()
void subtractSiderealDay ()
void subtractSiderealWeek ()
void addSolarDays (double d)
void addSiderealDays (double d)
void moveObserverToSelected (void)
QString getDefaultLocationID () const
void setDefaultLocationID (const QString &id)
void setInitViewDirectionToCurrent (void)

Public Member Functions

void init ()
void updateTime (double deltaTime)
void updateTransformMatrices (void)
void setMountMode (MountMode m)
MountMode getMountMode (void)
const Vec3dgetEquinoxEquVisionDirection (void) const
const Vec3dgetJ2000EquVisionDirection (void) const
const Vec3dgetAltAzVisionDirection (void) const
void setAltAzVisionDirection (const Vec3d &_pos)
void setEquinoxEquVisionDirection (const Vec3d &_pos)
void setJ2000EquVisionDirection (const Vec3d &_pos)
const StelLocationgetCurrentLocation () const
void moveObserverTo (const StelLocation &target, double duration=1., double durationIfPlanetChange=1.)
double getLocalSideralTime () const
const Planet * getHomePlanet (void) const
Vec3d getObserverHeliocentricEclipticPos (void) const
Vec3d altAzToEquinoxEqu (const Vec3d &v) const
Vec3d equinoxEquToAltAz (const Vec3d &v) const
Vec3d equinoxEquToJ2000 (const Vec3d &v) const
Vec3d j2000ToEquinoxEqu (const Vec3d &v) const
Vec3d j2000ToAltAz (const Vec3d &v) const
Vec3d heliocentricEclipticToAltAz (const Vec3d &v) const
Vec3d heliocentricEclipticToEquinoxEqu (const Vec3d &v) const
Vec3d heliocentricEclipticToEarthPosEquinoxEqu (const Vec3d &v) const
const Mat4d getHeliocentricEclipticModelViewMat (void) const
const Mat4d getObservercentricEclipticModelViewMat (void) const
const Mat4d getEquinoxEquModelViewMat (void) const
const Mat4dgetAltAzModelViewMat (void) const
const Mat4d getJ2000ModelViewMat (void) const
void setViewingMode (ViewingModeType viewMode)
ViewingModeType getViewingMode (void) const
const Vec3dgetInitViewingDirection ()
double getPresetSkyTime () const
void setPresetSkyTime (double d)
QString getStartupTimeMode ()
void setStartupTimeMode (const QString &s)

Static Public Attributes

static const Mat4d matJ2000ToVsop87
static const Mat4d matVsop87ToJ2000


Detailed Description

Manages a navigation context.

This includes:


Member Enumeration Documentation

Possible mount modes.


Member Function Documentation

void StelNavigator::setMountMode ( MountMode  m  )  [inline]

Set current mount type.

MountMode StelNavigator::getMountMode ( void   )  [inline]

Get current mount type.

const Vec3d& StelNavigator::getEquinoxEquVisionDirection ( void   )  const [inline]

Get vision direction.

const StelLocation& StelNavigator::getCurrentLocation (  )  const

Get the informations on the current location.

void StelNavigator::moveObserverTo ( const StelLocation target,
double  duration = 1.,
double  durationIfPlanetChange = 1. 
)

Smoothly move the observer to the given location.

Parameters:
target the target location
duration direction of view move duration in s
durationIfPlanetChange direction of view + planet travel move duration in s. This is used only if the destination planet is different from the starting one.

double StelNavigator::getLocalSideralTime (  )  const

Get the sideral time shifted by the observer longitude.

Returns:
the locale sideral time in radian

Vec3d StelNavigator::getObserverHeliocentricEclipticPos ( void   )  const

Return the observer heliocentric ecliptic position.

Vec3d StelNavigator::altAzToEquinoxEqu ( const Vec3d v  )  const [inline]

Transform vector from altazimuthal coordinate to equatorial.

Vec3d StelNavigator::equinoxEquToAltAz ( const Vec3d v  )  const [inline]

Transform vector from equatorial coordinate to altazimuthal.

Vec3d StelNavigator::heliocentricEclipticToAltAz ( const Vec3d v  )  const [inline]

Transform vector from heliocentric ecliptic coordinate to altazimuthal.

Vec3d StelNavigator::heliocentricEclipticToEquinoxEqu ( const Vec3d v  )  const [inline]

Transform from heliocentric coordinate to equatorial at current equinox (for the planet where the observer stands).

Vec3d StelNavigator::heliocentricEclipticToEarthPosEquinoxEqu ( const Vec3d v  )  const [inline]

Transform vector from heliocentric coordinate to false equatorial : equatorial coordinate but centered on the observer position (usefull for objects close to earth).

const Mat4d StelNavigator::getHeliocentricEclipticModelViewMat ( void   )  const [inline]

Get the modelview matrix for heliocentric ecliptic (Vsop87) drawing.

const Mat4d StelNavigator::getObservercentricEclipticModelViewMat ( void   )  const [inline]

Get the modelview matrix for observer-centric ecliptic (Vsop87) drawing.

const Mat4d StelNavigator::getEquinoxEquModelViewMat ( void   )  const [inline]

Get the modelview matrix for observer-centric equatorial at equinox drawing.

const Mat4d& StelNavigator::getAltAzModelViewMat ( void   )  const [inline]

Get the modelview matrix for observer-centric altazimuthal drawing.

const Mat4d StelNavigator::getJ2000ModelViewMat ( void   )  const [inline]

Get the modelview matrix for observer-centric J2000 equatorial drawing.

const Vec3d& StelNavigator::getInitViewingDirection (  )  [inline]

Return the inital viewing direction in altazimuthal coordinates.

double StelNavigator::getPresetSkyTime (  )  const [inline]

Return the preset sky time in JD.

void StelNavigator::setPresetSkyTime ( double  d  )  [inline]

Set the preset sky time from a JD.

QString StelNavigator::getStartupTimeMode (  )  [inline]

Return the startup mode, can be preset|Preset or anything else.

void StelNavigator::toggleMountMode (  )  [inline, slot]

Toggle current mount mode between equatorial and altazimuthal.

void StelNavigator::setEquatorialMount ( bool  b  )  [inline, slot]

Define whether we should use equatorial mount or altazimuthal.

void StelNavigator::setJDay ( double  JD  )  [inline, slot]

Set the current date in Julian Day.

double StelNavigator::getJDay (  )  const [inline, slot]

Get the current date in Julian Day.

void StelNavigator::setTimeRate ( double  ts  )  [inline, slot]

Set time speed in JDay/sec.

double StelNavigator::getTimeRate (  )  const [inline, slot]

Get time speed in JDay/sec.

void StelNavigator::increaseTimeSpeed (  )  [slot]

Increase the time speed.

void StelNavigator::decreaseTimeSpeed (  )  [slot]

Decrease the time speed.

void StelNavigator::setZeroTimeSpeed (  )  [inline, slot]

Set time speed to 0, i.e. freeze the passage of simulation time.

void StelNavigator::setRealTimeSpeed (  )  [inline, slot]

Set real time speed, i.e. 1 sec/sec.

bool StelNavigator::getRealTimeSpeed (  )  const [inline, slot]

Get whether it is real time speed, i.e. 1 sec/sec.

void StelNavigator::setTimeNow (  )  [slot]

Set stellarium time to current real world time.

void StelNavigator::setTodayTime ( const QTime &  target  )  [slot]

Set the time to some value, leaving the day the same.

bool StelNavigator::getIsTimeNow (  )  const [slot]

Get wether the current stellarium time is the real world time.

QTime StelNavigator::getInitTodayTime ( void   )  [inline, slot]

get the initial "today time" from the config file

void StelNavigator::setInitTodayTime ( const QTime &  t  )  [inline, slot]

set the initial "today time" from the config file

void StelNavigator::setPresetSkyTime ( QDateTime  dt  )  [slot]

Set the preset sky time from a QDateTime.

void StelNavigator::addHour (  )  [inline, slot]

Add one [Earth, solar] hour to the current simulation time.

void StelNavigator::addDay (  )  [inline, slot]

Add one [Earth, solar] day to the current simulation time.

void StelNavigator::addWeek (  )  [inline, slot]

Add one [Earth, solar] week to the current simulation time.

void StelNavigator::addSiderealDay (  )  [inline, slot]

Add one sidereal day to the simulation time.

The length of time depends on the current planetary body on which the observer is located.

void StelNavigator::addSiderealWeek (  )  [inline, slot]

Add one sidereal week to the simulation time.

The length of time depends on the current planetary body on which the observer is located.

void StelNavigator::subtractHour (  )  [inline, slot]

Subtract one [Earth, solar] hour to the current simulation time.

void StelNavigator::subtractDay (  )  [inline, slot]

Subtract one [Earth, solar] day to the current simulation time.

void StelNavigator::subtractWeek (  )  [inline, slot]

Subtract one [Earth, solar] week to the current simulation time.

void StelNavigator::subtractSiderealDay (  )  [inline, slot]

Subtract one sidereal week to the simulation time.

The length of time depends on the current planetary body on which the observer is located.

void StelNavigator::subtractSiderealWeek (  )  [inline, slot]

Subtract one sidereal week to the simulation time.

The length of time depends on the current planetary body on which the observer is located.

void StelNavigator::addSolarDays ( double  d  )  [slot]

Add a number of Earth Solar days to the current simulation time.

Parameters:
d the decimal number of days to add (use negative values to subtract)

void StelNavigator::addSiderealDays ( double  d  )  [slot]

Add a number of sidereal days to the current simulation time, based on the observer body's rotational period.

Parameters:
d the decimal number of sidereal days to add (use negative values to subtract)

void StelNavigator::moveObserverToSelected ( void   )  [slot]

Move the observer to the selected object.

This will only do something if the selected object is of the correct type - i.e. a planet.

QString StelNavigator::getDefaultLocationID (  )  const [inline, slot]

Get the location used by default at startup.

void StelNavigator::setDefaultLocationID ( const QString &  id  )  [slot]

Set the location to use by default at startup.

void StelNavigator::setInitViewDirectionToCurrent ( void   )  [slot]

Sets the initial direction of view to the current altitude and azimuth.

Note: Updates the configuration file.


Member Data Documentation

Rotation matrix from equatorial J2000 to ecliptic (Vsop87).

Rotation matrix from ecliptic (Vsop87) to equatorial J2000.


Generated on Mon Feb 2 17:23:48 2009 for Stellarium by  doxygen 1.5.5