HOpObjectTranslate

Fields

HPoint

m_ptRecent

HPoint

m_ptRecentVP

Functions

HOpObjectTranslate

~HOpObjectTranslate

char const *

GetName

int

OnLButtonDown

int

OnLButtonDownAndMove

int

OnLButtonUp

int

OnLButtonDblClk

HBaseOperator *

Clone

void

UpdateKeyList

Detailed Description

class HOpObjectTranslate : public HBaseOperator

The HOpObjectTranslate class translates a selected object.

HOpObjectTranslates implements three of the mouse event handlers defined on the base class and maps the event information to HOOPS routines which translates the currently selected objects. This provides the basic functionality for applying a translation transform to an object (as opposed to a global panning of the camera which affects the entire scene). The operation consists of the following steps:

  1. Left Button Down: The operation is initiated and an object is selected.

  2. Left Button Down and Drag: The object is translated using spriting.

  3. Left Button Up: The translation is finalized and the operation ends.

More Detailed Description: see event methods.

Subclassed by HOpCreateCuttingPlane, HOpObjectClash

Public Functions

HOpObjectTranslate(HBaseView *view, int DoRepeat = 0, int DoCapture = 1)

Constructs an HOpObjectTranslate object.

Parameters:
  • view – A pointer to an HBaseView object,

  • DoRepeat – An integer denoting whether this is a repeatable operator. This parameter has been deprecated.

  • DoCapture – An integer denoting whether the mouse state should be captured, which means that all mouse events should be received after a mousedown, even if it leaves the window. This parameter has been deprecated.

virtual ~HOpObjectTranslate()
virtual char const *GetName()
Returns:

A pointer to a character string denoting the name of the operator which is ‘HOpObjectTranslate’.

virtual int OnLButtonDown(HEventInfo &hevent)

OnLButtonDown records the first pointer position and initializes the translation mechanism.

Parameters:

hevent – An HEventInfo object containing information about the current event.

Returns:

An HOperatorReturn indicating the status of the event.

virtual int OnLButtonDownAndMove(HEventInfo &hevent)

OnLButtonDownAndMove computes the translation transform based on the distance between the first and current pointer positions, and translates the object accordingly.

Parameters:

hevent – An HEventInfo object containing information about the current event.

Returns:

An HOperatorReturn indicating the status of the event.

virtual int OnLButtonUp(HEventInfo &hevent)

OnLButtonUp cleans up the construction segments used during the transformation and ends the operation.

Parameters:

hevent – An HEventInfo object containing information about the current event.

Returns:

An HOperatorReturn indicating the status of the event.

virtual int OnLButtonDblClk(HEventInfo &hevent)

OnLButtonDblClk translates the object back to its original location.

Parameters:

hevent – An HEventInfo object containing information about the current event.

Returns:

An HOperatorReturn indicating the status of the event.

virtual HBaseOperator *Clone()

Creates a new operator which is a copy of the current operator. The user is responsible for deleting the newly created operator.

Returns:

A pointer to the newly created HOpObjectTranslate object.

virtual void UpdateKeyList(void *data)

This method is used to update the list of keys to translate when the selection list changes.

Public Members

HPoint m_ptRecent

A pointer to the current position in world coordinates.

HPoint m_ptRecentVP

A pointer to the current position in viewpoint (screen) coordinates.