|
OpenSceneGraph 3.6.5
|
Base class for motion commands that are generated by draggers. More...
#include <Command>

Public Types | |
| enum | Stage { NONE , START , MOVE , FINISH } |
| Motion command are based on click-drag-release actions. More... | |
Public Member Functions | |
| MotionCommand () | |
| virtual MotionCommand * | createCommandInverse ()=0 |
| create a MotionCommand that is the inverse of this command, and if applied will undo this commands changes. | |
| virtual osg::Matrix | getMotionMatrix () const =0 |
| Gets the matrix for transforming the object being dragged. | |
| virtual void | accept (const Constraint &constraint) |
| virtual void | accept (DraggerCallback &callback) |
| void | setLocalToWorldAndWorldToLocal (const osg::Matrix &localToWorld, const osg::Matrix &worldToLocal) |
| Sets the matrix for transforming the command's local coordinate system to the world/object coordinate system. | |
| const osg::Matrix & | getLocalToWorld () const |
| Gets the matrix for transforming the command's local coordinate system to the world/object coordinate system. | |
| const osg::Matrix & | getWorldToLocal () const |
| Gets the matrix for transforming the command's world/object coordinate system to the command's local coordinate system. | |
| void | setStage (const Stage s) |
| Stage | getStage () const |
| Public Member Functions inherited from osg::Referenced | |
| Referenced () | |
| Referenced (bool threadSafeRefUnref) | |
| Deprecated, Referenced is now always uses thread safe ref/unref, use default Referenced() constructor instead. | |
| Referenced (const Referenced &) | |
| Referenced & | operator= (const Referenced &) |
| virtual void | setThreadSafeRefUnref (bool) |
| Deprecated, Referenced is always theadsafe so there method now has no effect and does not need to be called. | |
| bool | getThreadSafeRefUnref () const |
| Get whether a mutex is used to ensure ref() and unref() are thread safe. | |
| OpenThreads::Mutex * | getRefMutex () const |
| Get the mutex used to ensure thread safety of ref()/unref(). | |
| int | ref () const |
| Increment the reference count by one, indicating that this object has another pointer which is referencing it. | |
| int | unref () const |
| Decrement the reference count by one, indicating that a pointer to this object is no longer referencing it. | |
| int | unref_nodelete () const |
| Decrement the reference count by one, indicating that a pointer to this object is no longer referencing it. | |
| int | referenceCount () const |
| Return the number of pointers currently referencing this object. | |
| ObserverSet * | getObserverSet () const |
| Get the ObserverSet if one is attached, otherwise return NULL. | |
| ObserverSet * | getOrCreateObserverSet () const |
| Get the ObserverSet if one is attached, otherwise create an ObserverSet, attach it, then return this newly created ObserverSet. | |
| void | addObserver (Observer *observer) const |
| Add a Observer that is observing this object, notify the Observer when this object gets deleted. | |
| void | removeObserver (Observer *observer) const |
| Remove Observer that is observing this object. | |
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::Mutex * | getGlobalReferencedMutex () |
| Get the optional global Referenced mutex, this can be shared between all osg::Referenced. | |
| static void | setDeleteHandler (DeleteHandler *handler) |
| Set a DeleteHandler to which deletion of all referenced counted objects will be delegated. | |
| static DeleteHandler * | getDeleteHandler () |
| Get a DeleteHandler. | |
| Protected Attributes inherited from osg::Referenced | |
| OpenThreads::AtomicPtr | _observerSet |
| OpenThreads::Atomic | _refCount |
Base class for motion commands that are generated by draggers.
| osgManipulator::MotionCommand::MotionCommand | ( | ) |
Referenced by createCommandInverse(), osgManipulator::Rotate3DCommand::createCommandInverse(), osgManipulator::Scale1DCommand::createCommandInverse(), osgManipulator::Scale2DCommand::createCommandInverse(), osgManipulator::ScaleUniformCommand::createCommandInverse(), osgManipulator::TranslateInLineCommand::createCommandInverse(), and osgManipulator::TranslateInPlaneCommand::createCommandInverse().
|
protectedvirtual |
|
inlinevirtual |
|
inlinevirtual |
|
pure virtual |
create a MotionCommand that is the inverse of this command, and if applied will undo this commands changes.
Implemented in osgManipulator::Rotate3DCommand, osgManipulator::Scale1DCommand, osgManipulator::Scale2DCommand, osgManipulator::ScaleUniformCommand, osgManipulator::TranslateInLineCommand, and osgManipulator::TranslateInPlaneCommand.
References MotionCommand().
|
inline |
Gets the matrix for transforming the command's local coordinate system to the world/object coordinate system.
|
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::Scale1DCommand, osgManipulator::Scale2DCommand, osgManipulator::ScaleUniformCommand, osgManipulator::TranslateInLineCommand, and osgManipulator::TranslateInPlaneCommand.
|
inline |
|
inline |
Gets the matrix for transforming the command's world/object coordinate system to the command's local coordinate system.
|
inline |
Sets the matrix for transforming the command's local coordinate system to the world/object coordinate system.
|
inline |
| Generated at for the OpenSceneGraph by doxygen 1.15.0. |