|
Katana Plug-in APIs 0.1
|
Interface for a Viewer Manipulator Handle. More...
#include <FnManipulatorHandle.h>
Public Member Functions | |
| ManipulatorHandlePluginBase () | |
| Constructor. | |
| virtual | ~ManipulatorHandlePluginBase () |
| Destructor. | |
| ManipulatorWrapperPtr | getManipulator () |
| Gets the Manipulator. | |
| Matrix44d | getXform () |
| Gets the world transform of the handle. | |
| void | setLocalXform (const Matrix44d &xform) |
| Sets the local transform of the handle. | |
| Matrix44d | getLocalXform () |
| Gets the local transform of the handle. | |
| bool | isActive () |
| Tells if the Handle is currently being manipulated. | |
| bool | isHovered () |
| Tells if the Handle is currently being hovered by the mouse. | |
Interface for a Viewer Manipulator Handle.
A ManipulatorHandle is a reusable component that can be used by different Manipulators. It is a scene interaction pattern that can appear in different Manipulators to perform different tasks. An example of a ManipulatorHandle: an Arrow handle that draws an arrow that can be clicked and dragged, this can be used, for example, as the axis handle for a translate manipulator and as a light's image projection positioning handle.
This is a virtual base class to be extended in your plug-in. In addition to implementing all the pure virtual functions in this class, you must also implement this static method in your derived class:
// Returns a new instance of your derived class. static ManipulatorHandle* create();
To indicate an error to the caller, your implementation may throw an exception derived from std::exception.
ViewerDelegate is the class that plugins should extend and implement.
ViewerDelegateWrapper is the class that allows other plugin types to access the ViewerDelegate plugin.
ViewerDelegatePluginBase is the base class that provides the common methods between ViewerDelegate and ViewerDelegateWrapper.
| Matrix44d Foundry::Katana::ViewerAPI::ManipulatorHandlePluginBase::getLocalXform | ( | ) |
Gets the local transform of the handle.
| ManipulatorWrapperPtr Foundry::Katana::ViewerAPI::ManipulatorHandlePluginBase::getManipulator | ( | ) |
Gets the Manipulator.
Gets the Manipulator that created and manages this instance of ManipulatorHandle. This can be used to access the Manipulator's functionality and also to access the Viewport and ViewerDelegate associated with it, via:
getManipulator()->getViewport()->getViewerDelegate()
| Matrix44d Foundry::Katana::ViewerAPI::ManipulatorHandlePluginBase::getXform | ( | ) |
Gets the world transform of the handle.
| void Foundry::Katana::ViewerAPI::ManipulatorHandlePluginBase::setLocalXform | ( | const Matrix44d & | xform | ) |
Sets the local transform of the handle.
| xform | A 4x4 matrix that defines the handle's local transform in relation to the Manipulator's transform. |
1.7.3