|
Katana Plug-in APIs 0.1
|
A handle to scale the selected object along YZ, XZ and XY planes. More...
#include <FnGLScalePlaneHandle.h>
Public Member Functions | |
| GLScalePlaneHandle () | |
| virtual | ~GLScalePlaneHandle () |
| void | draw () |
| void | pickerDraw (int64_t pickerId) |
| void | setup (const IMATH_NAMESPACE::V3d &normal) |
| virtual FnKat::ViewerUtils::Orientation | getOrientation () |
Static Public Member Functions | |
| static Foundry::Katana::ViewerAPI::ManipulatorHandle * | create () |
| static void | flush () |
Protected Member Functions | |
| virtual std::string | getComponentName () |
| bool | getDraggingPlane (Foundry::Katana::ViewerAPI::Vec3d &origin, Foundry::Katana::ViewerAPI::Vec3d &normal) |
| void | drag (const Foundry::Katana::ViewerAPI::Vec3d &initialPointOnPlane, const Foundry::Katana::ViewerAPI::Vec3d &previousPointOnPlane, const Foundry::Katana::ViewerAPI::Vec3d ¤tPointOnPlane, const Foundry::Katana::ViewerAPI::Vec2i &initialMousePosition, const Foundry::Katana::ViewerAPI::Vec2i &previousMousePosition, const Foundry::Katana::ViewerAPI::Vec2i ¤tMousePosition, bool isFinal) |
| void | applyXformToLocation (const std::string &locationPath, const IMATH_NAMESPACE::M44d &xform, bool isFinal) |
A handle to scale the selected object along YZ, XZ and XY planes.
This class represents a single handle that can be used to scale an object along an plane. The handle is represented by square. Dragging the square will scale the object along the plane the square is drawn onto.
| GLScalePlaneHandle::GLScalePlaneHandle | ( | ) |
Constructor.
Referenced by create().
| virtual GLScalePlaneHandle::~GLScalePlaneHandle | ( | ) | [virtual] |
Destructor.
| void GLScalePlaneHandle::applyXformToLocation | ( | const std::string & | locationPath, |
| const IMATH_NAMESPACE::M44d & | xform, | ||
| bool | isFinal | ||
| ) | [protected, virtual] |
Applies the given scale transform to the given location.
Implements Foundry::Katana::ViewerUtils::GLTransformManipulatorHandle.
| static Foundry::Katana::ViewerAPI::ManipulatorHandle* GLScalePlaneHandle::create | ( | ) | [inline, static] |
Creates a new instance of GLScalePlaneHandle.
References GLScalePlaneHandle().
| void GLScalePlaneHandle::drag | ( | const Foundry::Katana::ViewerAPI::Vec3d & | initialPointOnPlane, |
| const Foundry::Katana::ViewerAPI::Vec3d & | previousPointOnPlane, | ||
| const Foundry::Katana::ViewerAPI::Vec3d & | currentPointOnPlane, | ||
| const Foundry::Katana::ViewerAPI::Vec2i & | initialMousePosition, | ||
| const Foundry::Katana::ViewerAPI::Vec2i & | previousMousePosition, | ||
| const Foundry::Katana::ViewerAPI::Vec2i & | currentMousePosition, | ||
| bool | isFinal | ||
| ) | [protected, virtual] |
Detects the amount of rotation in either orbital or linear drag, depending on the direction of axis in relation to the camera direction, and applies the rotation to the manipulated locations.
Reimplemented from Foundry::Katana::ViewerUtils::GLTransformManipulatorHandle.
| void GLScalePlaneHandle::draw | ( | ) | [virtual] |
Draws the handle.
Reimplemented from Foundry::Katana::ViewerUtils::GLTransformManipulatorHandle.
| static void GLScalePlaneHandle::flush | ( | ) | [inline, static] |
Flushes any cached data.
| virtual std::string GLScalePlaneHandle::getComponentName | ( | ) | [inline, protected, virtual] |
The transform component: xform.interactive.scale
Implements Foundry::Katana::ViewerUtils::GLTransformManipulatorHandle.
| bool GLScalePlaneHandle::getDraggingPlane | ( | Foundry::Katana::ViewerAPI::Vec3d & | origin, |
| Foundry::Katana::ViewerAPI::Vec3d & | normal | ||
| ) | [protected, virtual] |
Gets the dragging plane's origin and normal. The origin is always the same as in the whole manipulator and the normal is given by the normal of the plane handle in world space.
Reimplemented from Foundry::Katana::ViewerUtils::GLManipulatorHandle.
| virtual FnKat::ViewerUtils::Orientation GLScalePlaneHandle::getOrientation | ( | ) | [inline, virtual] |
Forces the handle to only use object space orientation.
Reimplemented from Foundry::Katana::ViewerUtils::GLTransformManipulatorHandle.
| void GLScalePlaneHandle::pickerDraw | ( | int64_t | pickerId | ) | [virtual] |
Draws the manipulator with a specific selection picker ID. Typically this id is converted to a color value, and the handle is then drawn with flat shading, so it can be identified in a look-up table.
Reimplemented from Foundry::Katana::ViewerUtils::GLTransformManipulatorHandle.
| void GLScalePlaneHandle::setup | ( | const IMATH_NAMESPACE::V3d & | normal | ) |
Initializes the meshes. Called at handle creation.
1.7.3