The HDraggerObject class encapsulates interactive dragger objects. More...
#include <HObjects.h>
Public Member Functions | |
const char * | GetName () |
HDraggerObject (HBaseView *view=0) | |
HC_KEY | Insert (HBaseView *view, HPoint &pos, float rotmat[], HBhvAnimation *ani, HBhvAnimation *rotani, int kfr, bool allowpos) |
int | ObjectMovedEvent (HBaseView *view, HC_KEY key, HPoint *pos) |
void | SetupDraggerSegment (HBaseView *view, HPoint &pos, float rotmat[], HC_KEY &outerkey, HC_KEY &geometrykey) |
int | SetupHandlesEvent (HBaseView *view, HC_KEY key, bool complex) |
![]() | |
HObject () | |
Static Public Member Functions | |
static const char * | GetStaticName () |
Protected Attributes | |
HBaseView * | m_pView |
Detailed Description
The HDraggerObject class encapsulates interactive dragger objects.
These interactive objects allow 3d movement in various dimensions and can be associated to other geometry. In the PartViewer, they are used to allow the interactive manipulation of animation paths.
Constructor & Destructor Documentation
◆ HDraggerObject()
HDraggerObject::HDraggerObject | ( | HBaseView * | view = 0 | ) |
Constructs an HDraggerObject object.
- Parameters
-
view A pointer to the HBaseView object.
Member Function Documentation
◆ GetName()
|
virtual |
- Returns
- The name of the object which is 'Dragger'.
Implements HObject.
◆ GetStaticName()
|
static |
- Returns
- The name of the object which is 'Dragger'.
◆ Insert()
HC_KEY HDraggerObject::Insert | ( | HBaseView * | view, |
HPoint & | pos, | ||
float | rotmat[], | ||
HBhvAnimation * | ani, | ||
HBhvAnimation * | rotani, | ||
int | kfr, | ||
bool | allowpos | ||
) |
This method inserts an HDraggerObject into an object segment. It also associates it with a given keyframe. When the object is moved using the dragger object, the position and orientation are recorded for the given keyframe.
- Parameters
-
view A pointer to the HBaseView object. pos The initial position of the dragger object. rot The initial rotation of dragger object. ani A pointer to the associated animation object. rotani A pointer to the associated rotation animation. kfr The associated keyframe. allowpos Pass true to allow repositioning.
◆ ObjectMovedEvent()
This handles the object moved event. It calculates the position and rotation of the object and captures this information for the animation in the associated keyframe and plots the animation.
- Parameters
-
view Pointer to View Object key Key of Current Object pos New Object Position
- Returns
- An HOperatorReturn indicating the status of the event.
◆ SetupDraggerSegment()
void HDraggerObject::SetupDraggerSegment | ( | HBaseView * | view, |
HPoint & | pos, | ||
float | rotmat[], | ||
HC_KEY & | outerkey, | ||
HC_KEY & | geometrykey | ||
) |
This method is a helper function for Insert. It creates a dragger object with the given attributes and adds it to the HObjectManager. It also inserts the dragger object into the given HOOPS key.
- Parameters
-
view A pointer to the HBaseView object. pos The 3d world position to insert dragger into. rotmat The initial rotation of dragger object. outerkey The object key to insert light into. geometrykey The key to insert geometry into.
◆ SetupHandlesEvent()
int HDraggerObject::SetupHandlesEvent | ( | HBaseView * | view, |
HC_KEY | key, | ||
bool | complex | ||
) |
This method creates geometry handles on the dragger object.
- Parameters
-
view A pointer to the HBaseView object. key The key of the current object. complex Pass true to create complex handles or false to create simple handles.
- Returns
- An HOperatorReturn indicating the status of the event.
Member Data Documentation
◆ m_pView
The documentation for this class was generated from the following file: