OSG  3.4.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Protected Member Functions | List of all members
osgManipulator::MotionCommand Class Referenceabstract

#include <Command.h>

Inheritance diagram for osgManipulator::MotionCommand:
Inheritance graph
[legend]
Collaboration diagram for osgManipulator::MotionCommand:
Collaboration graph
[legend]

Public Types

enum  Stage { NONE, START, MOVE, FINISH }
 

Public Member Functions

 MotionCommand ()
 
virtual MotionCommandcreateCommandInverse ()=0
 
virtual osg::Matrix getMotionMatrix () const =0
 
virtual void accept (const Constraint &constraint)
 
virtual void accept (DraggerCallback &callback)
 
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.

Definition at line 30 of file Command.h.

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.

Definition at line 39 of file Command.h.

Constructor & Destructor Documentation

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

Member Function Documentation

virtual void osgManipulator::MotionCommand::accept ( const Constraint constraint)
inlinevirtual
virtual void osgManipulator::MotionCommand::accept ( DraggerCallback callback)
inlinevirtual
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.

Definition at line 78 of file Command.h.

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

Definition at line 87 of file Command.h.

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.

Definition at line 84 of file Command.h.

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.

Definition at line 68 of file Command.h.

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

Definition at line 86 of file Command.h.


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