openscenegraph
Public Types | Public Member Functions | Protected Member Functions | List of all members
osgManipulator::MotionCommand Class Referenceabstract
Inheritance diagram for osgManipulator::MotionCommand:
osg::Referenced osgManipulator::Rotate3DCommand osgManipulator::Scale1DCommand osgManipulator::Scale2DCommand osgManipulator::ScaleUniformCommand osgManipulator::TranslateInLineCommand osgManipulator::TranslateInPlaneCommand

Public Types

enum  Stage { NONE, START, MOVE, FINISH }
 

Public Member Functions

 MotionCommand ()
 
virtual MotionCommandcreateCommandInverse ()=0
 
virtual osg::Matrix getMotionMatrix () const =0
 
void setLocalToWorldAndWorldToLocal (const osg::Matrix &localToWorld, const osg::Matrix &worldToLocal)
 
const osg::MatrixgetLocalToWorld () const
 
const osg::MatrixgetWorldToLocal () const
 
void setStage (const Stage s)
 
Stage getStage () const
 
- Public Member Functions inherited from osg::Referenced
 Referenced ()
 
 Referenced (bool threadSafeRefUnref)
 
 Referenced (const Referenced &)
 
Referencedoperator= (const Referenced &)
 
virtual void setThreadSafeRefUnref (bool threadSafe)
 
bool getThreadSafeRefUnref () const
 
OpenThreads::MutexgetRefMutex () const
 
int ref () const
 
int unref () const
 
int unref_nodelete () const
 
int referenceCount () const
 
ObserverSetgetObserverSet () const
 
ObserverSetgetOrCreateObserverSet () const
 
void addObserver (Observer *observer) const
 
void removeObserver (Observer *observer) const
 

Protected Member Functions

virtual ~MotionCommand ()
 
- Protected Member Functions inherited from osg::Referenced
virtual ~Referenced ()
 
void signalObserversAndDelete (bool signalDelete, bool doDelete) const
 
void deleteUsingDeleteHandler () const
 

Additional Inherited Members

- Static Public Member Functions inherited from osg::Referenced
static OpenThreads::MutexgetGlobalReferencedMutex ()
 
static void setThreadSafeReferenceCounting (bool enableThreadSafeReferenceCounting)
 
static bool getThreadSafeReferenceCounting ()
 
static void setDeleteHandler (DeleteHandler *handler)
 
static DeleteHandlergetDeleteHandler ()
 
- Protected Attributes inherited from osg::Referenced
OpenThreads::AtomicPtr _observerSet
 
OpenThreads::Atomic _refCount
 

Detailed Description

Base class for motion commands that are generated by draggers.

Member Enumeration Documentation

Motion command are based on click-drag-release actions. So each command needs to indicate which stage of the motion the command represents.

Enumerator:
NONE 
START 

Click or pick start.

MOVE 

Drag or pick move.

FINISH 

Release or pick finish.

Constructor & Destructor Documentation

osgManipulator::MotionCommand::MotionCommand ( )
virtual osgManipulator::MotionCommand::~MotionCommand ( )
protectedvirtual

Member Function Documentation

virtual MotionCommand* osgManipulator::MotionCommand::createCommandInverse ( )
pure virtual
const osg::Matrix& osgManipulator::MotionCommand::getLocalToWorld ( ) const
inline

Gets the matrix for transforming the command's local coordinate system to the world/object coordinate system.

virtual osg::Matrix osgManipulator::MotionCommand::getMotionMatrix ( ) const
pure virtual

Gets the matrix for transforming the object being dragged. This matrix is in the command's coordinate systems.

Implemented in osgManipulator::Rotate3DCommand, osgManipulator::ScaleUniformCommand, osgManipulator::Scale2DCommand, osgManipulator::Scale1DCommand, osgManipulator::TranslateInPlaneCommand, and osgManipulator::TranslateInLineCommand.

Stage osgManipulator::MotionCommand::getStage ( ) const
inline
const osg::Matrix& osgManipulator::MotionCommand::getWorldToLocal ( ) const
inline

Gets the matrix for transforming the command's world/object coordinate system to the command's local coordinate system.

void osgManipulator::MotionCommand::setLocalToWorldAndWorldToLocal ( const osg::Matrix localToWorld,
const osg::Matrix worldToLocal 
)
inline

Sets the matrix for transforming the command's local coordinate system to the world/object coordinate system.

void osgManipulator::MotionCommand::setStage ( const Stage  s)
inline

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