osgGA::KeySwitchMatrixManipulator Class Reference

Inheritance diagram for osgGA::KeySwitchMatrixManipulator:

osgGA::MatrixManipulator osgGA::GUIEventHandler osg::NodeCallback osg::Drawable::EventCallback osg::Object osg::Object osg::Referenced osg::Referenced

List of all members.

Public Types

typedef std::pair< std::string,
osg::ref_ptr
< MatrixManipulator > > 
NamedManipulator
typedef std::map< int,
NamedManipulator
KeyManipMap

Public Member Functions

virtual const char * className () const
void addMatrixManipulator (int key, std::string name, MatrixManipulator *cm)
void addNumberedMatrixManipulator (MatrixManipulator *cm)
unsigned int getNumMatrixManipulators () const
void selectMatrixManipulator (unsigned int num)
KeyManipMapgetKeyManipMap ()
const KeyManipMapgetKeyManipMap () const
MatrixManipulatorgetCurrentMatrixManipulator ()
const MatrixManipulatorgetCurrentMatrixManipulator () const
MatrixManipulatorgetMatrixManipulatorWithIndex (unsigned int key)
const MatrixManipulatorgetMatrixManipulatorWithIndex (unsigned int key) const
MatrixManipulatorgetMatrixManipulatorWithKey (unsigned int key)
const MatrixManipulatorgetMatrixManipulatorWithKey (unsigned int key) const
virtual void setMinimumDistance (float minimumDistance)
virtual void setCoordinateFrameCallback (CoordinateFrameCallback *cb)
virtual void setByMatrix (const osg::Matrixd &matrix)
virtual void setByInverseMatrix (const osg::Matrixd &matrix)
virtual osg::Matrixd getMatrix () const
virtual osg::Matrixd getInverseMatrix () const
virtual
osgUtil::SceneView::FusionDistanceMode 
getFusionDistanceMode () const
virtual float getFusionDistanceValue () const
virtual void setNode (osg::Node *n)
virtual const osg::NodegetNode () const
virtual osg::NodegetNode ()
virtual void setHomePosition (const osg::Vec3d &eye, const osg::Vec3d &center, const osg::Vec3d &up, bool autoComputeHomePosition=false)
virtual void setAutoComputeHomePosition (bool flag)
virtual void computeHomePosition ()
virtual void home (const GUIEventAdapter &ee, GUIActionAdapter &aa)
virtual void init (const GUIEventAdapter &ee, GUIActionAdapter &aa)
virtual bool handle (const GUIEventAdapter &ea, GUIActionAdapter &us)
virtual void getUsage (osg::ApplicationUsage &usage) const


Detailed Description

KeySwitchMatrixManipulator is a decorator which allows the type of camera manipulator being used to be switched by pressing a key. E.g. '1' for a TrackballManipultor, '2' for a DriveManipulator, '3' for a FlightManipulator. The manipulators available, and the associated switch keys, can be configured.

Member Typedef Documentation


Member Function Documentation

virtual const char* osgGA::KeySwitchMatrixManipulator::className (  )  const [inline, virtual]

return the name of the object's class type. Must be defined by derived classes.

Reimplemented from osgGA::MatrixManipulator.

void osgGA::KeySwitchMatrixManipulator::addMatrixManipulator ( int  key,
std::string  name,
MatrixManipulator cm 
)

Add a camera manipulator with an associated name, and a key to trigger the switch,

void osgGA::KeySwitchMatrixManipulator::addNumberedMatrixManipulator ( MatrixManipulator cm  ) 

Add a camera manipulator with an autogenerated keybinding which is '1' + previous number of camera's registerd.

unsigned int osgGA::KeySwitchMatrixManipulator::getNumMatrixManipulators (  )  const [inline]

void osgGA::KeySwitchMatrixManipulator::selectMatrixManipulator ( unsigned int  num  ) 

KeyManipMap& osgGA::KeySwitchMatrixManipulator::getKeyManipMap (  )  [inline]

Get the complete list of manipulators attached to this keyswitch manipulator.

const KeyManipMap& osgGA::KeySwitchMatrixManipulator::getKeyManipMap (  )  const [inline]

Get the const complete list of manipulators attached to this keyswitch manipulator.

MatrixManipulator* osgGA::KeySwitchMatrixManipulator::getCurrentMatrixManipulator (  )  [inline]

Get the current active manipulators.

const MatrixManipulator* osgGA::KeySwitchMatrixManipulator::getCurrentMatrixManipulator (  )  const [inline]

Get the const current active manipulators.

MatrixManipulator* osgGA::KeySwitchMatrixManipulator::getMatrixManipulatorWithIndex ( unsigned int  key  ) 

Get manipulator assigned to a specified index.

const MatrixManipulator* osgGA::KeySwitchMatrixManipulator::getMatrixManipulatorWithIndex ( unsigned int  key  )  const

Get const manipulator assigned to a specified index.

MatrixManipulator* osgGA::KeySwitchMatrixManipulator::getMatrixManipulatorWithKey ( unsigned int  key  ) 

Get manipulator assigned to a specified key.

const MatrixManipulator* osgGA::KeySwitchMatrixManipulator::getMatrixManipulatorWithKey ( unsigned int  key  )  const

Get const manipulator assigned to a specified key.

virtual void osgGA::KeySwitchMatrixManipulator::setMinimumDistance ( float  minimumDistance  )  [virtual]

set the minimum distance (as ratio) the eye point can be zoomed in towards the center before the center is pushed forward.

Reimplemented from osgGA::MatrixManipulator.

virtual void osgGA::KeySwitchMatrixManipulator::setCoordinateFrameCallback ( CoordinateFrameCallback cb  )  [virtual]

set the coordinate frame which callback tells the manipulator which way is up, east and north.

Reimplemented from osgGA::MatrixManipulator.

virtual void osgGA::KeySwitchMatrixManipulator::setByMatrix ( const osg::Matrixd matrix  )  [inline, virtual]

Set the position of the matrix manipulator using a 4x4 Matrix.

Implements osgGA::MatrixManipulator.

virtual void osgGA::KeySwitchMatrixManipulator::setByInverseMatrix ( const osg::Matrixd matrix  )  [inline, virtual]

set the position of the matrix manipulator using a 4x4 Matrix.

Implements osgGA::MatrixManipulator.

virtual osg::Matrixd osgGA::KeySwitchMatrixManipulator::getMatrix (  )  const [inline, virtual]

get the position of the manipulator as 4x4 Matrix.

Implements osgGA::MatrixManipulator.

virtual osg::Matrixd osgGA::KeySwitchMatrixManipulator::getInverseMatrix (  )  const [inline, virtual]

get the position of the manipulator as a inverse matrix of the manipulator, typically used as a model view matrix.

Implements osgGA::MatrixManipulator.

virtual osgUtil::SceneView::FusionDistanceMode osgGA::KeySwitchMatrixManipulator::getFusionDistanceMode (  )  const [inline, virtual]

Get the FusionDistanceMode. Used by SceneView for setting up stereo convergence.

Reimplemented from osgGA::MatrixManipulator.

virtual float osgGA::KeySwitchMatrixManipulator::getFusionDistanceValue (  )  const [inline, virtual]

Get the FusionDistanceValue. Used by SceneView for setting up stereo convergence.

Reimplemented from osgGA::MatrixManipulator.

virtual void osgGA::KeySwitchMatrixManipulator::setNode ( osg::Node  )  [virtual]

Attach a node to the manipulator, automatically detaching any previously attached node. setNode(NULL) detaches previous nodes. May be ignored by manipulators which do not require a reference model.

Reimplemented from osgGA::MatrixManipulator.

virtual const osg::Node* osgGA::KeySwitchMatrixManipulator::getNode (  )  const [inline, virtual]

Return const node if attached.

Reimplemented from osgGA::MatrixManipulator.

virtual osg::Node* osgGA::KeySwitchMatrixManipulator::getNode (  )  [inline, virtual]

Return node if attached.

Reimplemented from osgGA::MatrixManipulator.

virtual void osgGA::KeySwitchMatrixManipulator::setHomePosition ( const osg::Vec3d eye,
const osg::Vec3d center,
const osg::Vec3d up,
bool  autoComputeHomePosition = false 
) [virtual]

Manually set the home position, and set the automatic compute of home position.

Reimplemented from osgGA::MatrixManipulator.

virtual void osgGA::KeySwitchMatrixManipulator::setAutoComputeHomePosition ( bool  flag  )  [virtual]

Set whether the automatic compute of the home position is enabled.

Reimplemented from osgGA::MatrixManipulator.

virtual void osgGA::KeySwitchMatrixManipulator::computeHomePosition (  )  [virtual]

Compute the home position.

Reimplemented from osgGA::MatrixManipulator.

virtual void osgGA::KeySwitchMatrixManipulator::home ( const GUIEventAdapter ,
GUIActionAdapter  
) [inline, virtual]

Move the camera to the default position. May be ignored by manipulators if home functionality is not appropriate.

Reimplemented from osgGA::MatrixManipulator.

virtual void osgGA::KeySwitchMatrixManipulator::init ( const GUIEventAdapter ,
GUIActionAdapter  
) [inline, virtual]

Start/restart the manipulator. FIXME: what does this actually mean? Provide examples.

Reimplemented from osgGA::MatrixManipulator.

virtual bool osgGA::KeySwitchMatrixManipulator::handle ( const GUIEventAdapter ea,
GUIActionAdapter us 
) [virtual]

Handle events, return true if handled, false otherwise.

Reimplemented from osgGA::MatrixManipulator.

virtual void osgGA::KeySwitchMatrixManipulator::getUsage ( osg::ApplicationUsage usage  )  const [virtual]

Get the keyboard and mouse usage of this manipulator.

Reimplemented from osgGA::GUIEventHandler.


The documentation for this class was generated from the following file:

Generated on Wed Nov 17 16:52:50 2010 for openscenegraph by  doxygen 1.5.6