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

StelMovementMgr Class Reference

Manages the head movements and zoom operations. More...

#include <StelMovementMgr.hpp>

List of all members.

Classes

struct  AutoMove
struct  AutoZoom
struct  DragHistoryEntry

Public Types

enum  MountMode { MountAltAzimuthal, MountEquinoxEquatorial, MountGalactic }
 

Possible mount modes defining the reference frame in which head movements occur.

More...

Public Slots

void toggleMountMode ()
 Toggle current mount mode between equatorial and altazimuthal.
void setEquatorialMount (bool b)
 Define whether we should use equatorial mount or altazimuthal.
void setFlagTracking (bool b=true)
 Set object tracking on/off and go to selected object.
bool getFlagTracking (void) const
 Get current object tracking status.
void setFlagLockEquPos (bool b)
 Set whether sky position is to be locked.
bool getFlagLockEquPos (void) const
 Get whether sky position is locked.
void panView (double deltaAz, double deltaAlt)
 Move view in alt/az (or equatorial if in that mode) coordinates.
void setAutoMoveDuration (float f)
 Set automove duration in seconds.
float getAutoMoveDuration (void) const
 Get automove duration in seconds.
void setFlagAutoZoomOutResetsDirection (bool b)
 Set whether auto zoom out will reset the viewing direction to the inital value.
bool getFlagAutoZoomOutResetsDirection (void)
 Get whether auto zoom out will reset the viewing direction to the inital value.
bool getFlagEnableZoomKeys () const
 Get whether keys can control zoom.
void setFlagEnableZoomKeys (bool b)
 Set whether keys can control zoom.
bool getFlagEnableMoveKeys () const
 Get whether keys can control move.
void setFlagEnableMoveKeys (bool b)
 Set whether keys can control movement.
bool getFlagEnableMoveAtScreenEdge () const
 Get whether being at the edge of the screen activates movement.
void setFlagEnableMoveAtScreenEdge (bool b)
 Set whether being at the edge of the screen activates movement.
bool getFlagEnableMouseNavigation () const
 Get whether mouse can control movement.
void setFlagEnableMouseNavigation (bool b)
 Set whether mouse can control movement.
void moveToJ2000 (const Vec3d &aim, float moveDuration=1., int zooming=0)
 Move the view to a specified J2000 position.
void moveToObject (const StelObjectP &target, float moveDuration=1., int zooming=0)
void zoomTo (double aimFov, float moveDuration=1.)
 Change the zoom level.
double getCurrentFov () const
 Get the current Field Of View in degrees.
double getInitFov () const
 Return the initial default FOV in degree.
void setInitFov (double fov)
 Set the initial Field Of View in degree.
const Vec3dgetInitViewingDirection ()
 Return the inital viewing direction in altazimuthal coordinates.
void setInitViewDirectionToCurrent ()
 Sets the initial direction of view to the current altitude and azimuth.
Vec3d getViewDirectionJ2000 () const
 Return the current viewing direction in equatorial J2000 frame.
void setViewDirectionJ2000 (const Vec3d &v)
void setMaxFov (double max)
 Set the maximum field of View in degrees.
double getMaxFov (void) const
 Get the maximum field of View in degrees.
void autoZoomIn (float moveDuration=1.f, bool allowManualZoom=1)
 Go and zoom to the selected object. A later call to autoZoomOut will come back to the previous zoom level.
void autoZoomOut (float moveDuration=1.f, bool full=0)
 Unzoom to the previous position.
double getAimFov (void) const
 If currently zooming, return the target FOV, otherwise return current FOV in degree.
void turnRight (bool)
 Viewing direction function : true move, false stop.
void turnLeft (bool)
void turnUp (bool)
void turnDown (bool)
void moveSlow (bool b)
void zoomIn (bool)
void zoomOut (bool)
void setMountMode (MountMode m)
 Set current mount type defining the reference frame in which head movements occur.
MountMode getMountMode (void) const
 Get current mount type defining the reference frame in which head movements occur.
void setDragTimeMode (bool b)
bool getDragTimeMode () const

Public Member Functions

 StelMovementMgr (StelCore *core)
virtual void init ()
 Initializes the object based on the application settings Includes:

  • Enabling/disabling the movement keys
  • Enabling/disabling the zoom keys
  • Enabling/disabling the mouse zoom
  • Enabling/disabling the mouse movement
  • Sets the zoom and movement speeds
  • Sets the auto-zoom duration and mode.

virtual void update (double)
 Update time-dependent things (does nothing).
virtual void draw (StelCore *)
 Implement required draw function. Does nothing.
virtual void handleKeys (QKeyEvent *event)
 Handle keyboard events.
virtual bool handleMouseMoves (int x, int y, Qt::MouseButtons b)
 Handle mouse movement events.
virtual void handleMouseWheel (class QWheelEvent *event)
 Handle mouse wheel events.
virtual void handleMouseClicks (class QMouseEvent *event)
 Handle mouse click events.
void updateMotion (double deltaTime)
 Increment/decrement smoothly the vision field and position.
bool getHasDragged () const
double getZoomSpeed ()
 Get the zoom speed.
Vec3d getViewUpVectorJ2000 () const
 Return the current up view vector.
void setViewUpVectorJ2000 (const Vec3d &up)
void setMovementSpeedFactor (float s)
float getMovementSpeedFactor () const
void setDragTriggerDistance (float d)

Detailed Description

Manages the head movements and zoom operations.


Member Enumeration Documentation

Possible mount modes defining the reference frame in which head movements occur.


Member Function Documentation

void StelMovementMgr::autoZoomIn ( float  moveDuration = 1.f,
bool  allowManualZoom = 1 
) [slot]

Go and zoom to the selected object. A later call to autoZoomOut will come back to the previous zoom level.

void StelMovementMgr::autoZoomOut ( float  moveDuration = 1.f,
bool  full = 0 
) [slot]

Unzoom to the previous position.

virtual void StelMovementMgr::draw ( StelCore  )  [inline, virtual]

Implement required draw function. Does nothing.

Reimplemented from StelModule.

double StelMovementMgr::getAimFov ( void   )  const [slot]

If currently zooming, return the target FOV, otherwise return current FOV in degree.

float StelMovementMgr::getAutoMoveDuration ( void   )  const [inline, slot]

Get automove duration in seconds.

Returns:
the number of seconds it takes for an auto-move operation to complete.
double StelMovementMgr::getCurrentFov (  )  const [inline, slot]

Get the current Field Of View in degrees.

bool StelMovementMgr::getFlagAutoZoomOutResetsDirection ( void   )  [inline, slot]

Get whether auto zoom out will reset the viewing direction to the inital value.

bool StelMovementMgr::getFlagEnableMouseNavigation (  )  const [inline, slot]

Get whether mouse can control movement.

bool StelMovementMgr::getFlagEnableMoveAtScreenEdge (  )  const [inline, slot]

Get whether being at the edge of the screen activates movement.

bool StelMovementMgr::getFlagEnableMoveKeys (  )  const [inline, slot]

Get whether keys can control move.

bool StelMovementMgr::getFlagEnableZoomKeys (  )  const [inline, slot]

Get whether keys can control zoom.

bool StelMovementMgr::getFlagLockEquPos ( void   )  const [inline, slot]

Get whether sky position is locked.

bool StelMovementMgr::getFlagTracking ( void   )  const [inline, slot]

Get current object tracking status.

double StelMovementMgr::getInitFov (  )  const [inline, slot]

Return the initial default FOV in degree.

const Vec3d& StelMovementMgr::getInitViewingDirection (  )  [inline, slot]

Return the inital viewing direction in altazimuthal coordinates.

double StelMovementMgr::getMaxFov ( void   )  const [inline, slot]

Get the maximum field of View in degrees.

MountMode StelMovementMgr::getMountMode ( void   )  const [inline, slot]

Get current mount type defining the reference frame in which head movements occur.

Vec3d StelMovementMgr::getViewDirectionJ2000 (  )  const [inline, slot]

Return the current viewing direction in equatorial J2000 frame.

Vec3d StelMovementMgr::getViewUpVectorJ2000 (  )  const

Return the current up view vector.

double StelMovementMgr::getZoomSpeed (  )  [inline]

Get the zoom speed.

virtual void StelMovementMgr::handleKeys ( QKeyEvent *  event  )  [virtual]

Handle keyboard events.

Reimplemented from StelModule.

virtual void StelMovementMgr::handleMouseClicks ( class QMouseEvent *  event  )  [virtual]

Handle mouse click events.

Reimplemented from StelModule.

virtual bool StelMovementMgr::handleMouseMoves ( int  x,
int  y,
Qt::MouseButtons  b 
) [virtual]

Handle mouse movement events.

Reimplemented from StelModule.

virtual void StelMovementMgr::handleMouseWheel ( class QWheelEvent *  event  )  [virtual]

Handle mouse wheel events.

Reimplemented from StelModule.

virtual void StelMovementMgr::init (  )  [virtual]

Initializes the object based on the application settings Includes:

  • Enabling/disabling the movement keys
  • Enabling/disabling the zoom keys
  • Enabling/disabling the mouse zoom
  • Enabling/disabling the mouse movement
  • Sets the zoom and movement speeds
  • Sets the auto-zoom duration and mode.

Implements StelModule.

void StelMovementMgr::moveToJ2000 ( const Vec3d aim,
float  moveDuration = 1.,
int  zooming = 0 
) [slot]

Move the view to a specified J2000 position.

Parameters:
aim The position to move to expressed as a vector.
moveDuration The time it takes for the move to complete.
zooming ???
void StelMovementMgr::panView ( double  deltaAz,
double  deltaAlt 
) [slot]

Move view in alt/az (or equatorial if in that mode) coordinates.

Changes to viewing direction are instantaneous.

Parameters:
deltaAz change in azimuth angle in radians
deltaAlt change in altitude angle in radians
void StelMovementMgr::setAutoMoveDuration ( float  f  )  [inline, slot]

Set automove duration in seconds.

Parameters:
f the number of seconds it takes for an auto-move operation to complete.
void StelMovementMgr::setEquatorialMount ( bool  b  )  [inline, slot]

Define whether we should use equatorial mount or altazimuthal.

void StelMovementMgr::setFlagAutoZoomOutResetsDirection ( bool  b  )  [inline, slot]

Set whether auto zoom out will reset the viewing direction to the inital value.

void StelMovementMgr::setFlagEnableMouseNavigation ( bool  b  )  [inline, slot]

Set whether mouse can control movement.

void StelMovementMgr::setFlagEnableMoveAtScreenEdge ( bool  b  )  [inline, slot]

Set whether being at the edge of the screen activates movement.

void StelMovementMgr::setFlagEnableMoveKeys ( bool  b  )  [inline, slot]

Set whether keys can control movement.

void StelMovementMgr::setFlagEnableZoomKeys ( bool  b  )  [inline, slot]

Set whether keys can control zoom.

void StelMovementMgr::setFlagLockEquPos ( bool  b  )  [slot]

Set whether sky position is to be locked.

void StelMovementMgr::setFlagTracking ( bool  b = true  )  [slot]

Set object tracking on/off and go to selected object.

void StelMovementMgr::setInitFov ( double  fov  )  [inline, slot]

Set the initial Field Of View in degree.

void StelMovementMgr::setInitViewDirectionToCurrent (  )  [slot]

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

Note: Updates the configuration file.

void StelMovementMgr::setMaxFov ( double  max  )  [slot]

Set the maximum field of View in degrees.

void StelMovementMgr::setMountMode ( MountMode  m  )  [slot]

Set current mount type defining the reference frame in which head movements occur.

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

Toggle current mount mode between equatorial and altazimuthal.

void StelMovementMgr::turnRight ( bool   )  [slot]

Viewing direction function : true move, false stop.

virtual void StelMovementMgr::update ( double   )  [inline, virtual]

Update time-dependent things (does nothing).

Implements StelModule.

void StelMovementMgr::updateMotion ( double  deltaTime  ) 

Increment/decrement smoothly the vision field and position.

void StelMovementMgr::zoomTo ( double  aimFov,
float  moveDuration = 1. 
) [slot]

Change the zoom level.

Parameters:
aimFov The desired field of view in degrees.
moveDuration The time that the operation should take to complete.
Generated on Sat Aug 25 22:13:33 2012 for Stellarium by  doxygen 1.6.3