HDraggerObject

Functions

HDraggerObject

~HDraggerObject

char const *

GetName

void

SetupDraggerSegment

HC_KEY

Insert

int

SetupHandlesEvent

int

ObjectMovedEvent

char const *

GetStaticName

Detailed Description

class HDraggerObject : public HObject, public HObjectManipulationListener

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.

Public Functions

HDraggerObject(HBaseView *view = 0)

Constructs an HDraggerObject object.

Parameters

view – A pointer to the HBaseView object.

~HDraggerObject()
virtual char const *GetName()
Returns

The name of the object which is ‘Dragger’.

void 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.

HC_KEY 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.

int 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.

int ObjectMovedEvent(HBaseView *view, HC_KEY key, HPoint *pos)

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.

Public Static Functions

static char const *GetStaticName()
Returns

The name of the object which is ‘Dragger’.