14#ifndef OSGUTIL_KEYSWITCMATRIXMANIPULATOR
15#define OSGUTIL_KEYSWITCMATRIXMANIPULATOR 1
23class GUIActionAdapter;
38 virtual const char*
className()
const {
return "KeySwitchMatrixManipulator"; }
The 'GA' in osgGA stands for 'GUI Abstraction'; the osgGA namespace provides facilities to help devel...
Definition Callback:21
Definition ApplicationUsage:26
Base class for all internal nodes in the scene graph.
Definition Node:72
Smart pointer for handling referenced counted objects.
Definition ref_ptr:32
General purpose double triple for use as vertices, vectors and normals.
Definition Vec3d:30
callback class to use to allow matrix manipulators to query the application for the local coordinate ...
Definition CameraManipulator:51
Definition GUIActionAdapter:62
Event class for storing Keyboard, mouse and window events.
Definition GUIEventAdapter:82
KeySwitchMatrixManipulator is a decorator which allows the type of camera manipulator being used to b...
Definition KeySwitchMatrixManipulator:32
const CameraManipulator * getCurrentMatrixManipulator() const
Get the const current active manipulators.
Definition KeySwitchMatrixManipulator:66
virtual void setByMatrix(const osg::Matrixd &matrix)
Set the position of the matrix manipulator using a 4x4 Matrix.
Definition KeySwitchMatrixManipulator:88
virtual const osg::Node * getNode() const
Return const node if attached.
Definition KeySwitchMatrixManipulator:108
CameraManipulator * getCurrentMatrixManipulator()
Get the current active manipulators.
Definition KeySwitchMatrixManipulator:63
virtual void setByInverseMatrix(const osg::Matrixd &matrix)
set the position of the matrix manipulator using a 4x4 Matrix.
Definition KeySwitchMatrixManipulator:91
virtual osgUtil::SceneView::FusionDistanceMode getFusionDistanceMode() const
Get the FusionDistanceMode.
Definition KeySwitchMatrixManipulator:100
virtual void setHomePosition(const osg::Vec3d &eye, const osg::Vec3d ¢er, const osg::Vec3d &up, bool autoComputeHomePosition=false)
Manually set the home position, and set the automatic compute of home position.
CameraManipulator * getMatrixManipulatorWithIndex(unsigned int key)
Get manipulator assigned to a specified index.
const KeyManipMap & getKeyManipMap() const
Get the const complete list of manipulators attached to this keyswitch manipulator.
Definition KeySwitchMatrixManipulator:59
virtual float getFusionDistanceValue() const
Get the FusionDistanceValue.
Definition KeySwitchMatrixManipulator:103
virtual bool handle(const GUIEventAdapter &ea, GUIActionAdapter &us)
Handle events, return true if handled, false otherwise.
virtual void finishAnimation()
finish any active manipulator animations.
KeyManipMap & getKeyManipMap()
Get the complete list of manipulators attached to this keyswitch manipulator.
Definition KeySwitchMatrixManipulator:56
const CameraManipulator * getMatrixManipulatorWithKey(unsigned int key) const
Get const manipulator assigned to a specified key.
virtual void setNode(osg::Node *n)
Attach a node to the manipulator, automatically detaching any previously attached node.
const CameraManipulator * getMatrixManipulatorWithIndex(unsigned int key) const
Get const manipulator assigned to a specified index.
virtual osg::Matrixd getInverseMatrix() const
get the position of the manipulator as a inverse matrix of the manipulator, typically used as a model...
Definition KeySwitchMatrixManipulator:97
virtual void init(const GUIEventAdapter &ee, GUIActionAdapter &aa)
Start/restart the manipulator.
Definition KeySwitchMatrixManipulator:122
std::map< int, NamedManipulator > KeyManipMap
Definition KeySwitchMatrixManipulator:36
virtual void computeHomePosition()
CameraManipulator * getMatrixManipulatorWithKey(unsigned int key)
Get manipulator assigned to a specified key.
virtual void setCoordinateFrameCallback(CoordinateFrameCallback *cb)
set the coordinate frame which callback tells the manipulator which way is up, east and north.
void addNumberedMatrixManipulator(CameraManipulator *cm)
Add a camera manipulator with an autogenerated keybinding which is '1' + previous number of camera's ...
virtual osg::Node * getNode()
Return node if attached.
Definition KeySwitchMatrixManipulator:110
virtual void getUsage(osg::ApplicationUsage &usage) const
Get the keyboard and mouse usage of this manipulator.
virtual void setAutoComputeHomePosition(bool flag)
Set whether the automatic compute of the home position is enabled.
virtual void home(const GUIEventAdapter &ee, GUIActionAdapter &aa)
Move the camera to the default position.
std::pair< std::string, osg::ref_ptr< CameraManipulator > > NamedManipulator
Definition KeySwitchMatrixManipulator:35
virtual osg::Matrixd getMatrix() const
get the position of the manipulator as 4x4 Matrix.
Definition KeySwitchMatrixManipulator:94
void selectMatrixManipulator(unsigned int num)
virtual const char * className() const
return the name of the object's class type.
Definition KeySwitchMatrixManipulator:38
void addMatrixManipulator(int key, std::string name, CameraManipulator *cm)
Add a camera manipulator with an associated name, and a key to trigger the switch,...
unsigned int getNumMatrixManipulators() const
Definition KeySwitchMatrixManipulator:51
FusionDistanceMode
FusionDistanceMode is used only when working in stereo.
Definition SceneView:339
#define OSGGA_EXPORT
Definition Export:40