PanOrbitZoomOperator

class HPS.PanOrbitZoomOperator : public HPS.Operator

The PanOrbitZoomOperator class defines an operator which allows the user to pan, orbit and zoom the camera. This Operator works for both mouse- and touch-driven devices. Mouse-Driven Devices: Left button pressed and move: Orbit camera Left button pressed and move + Shift: Pan camera Left button pressed and move + Ctrl: Zoom camera Touch-Driven Devices: Touch down and move: Orbit camera Two finger touch and move: Pan camera Pinch: Zoom camera

Public Functions

override void Dispose ()
override string GetName ()

Returns the name of the operator.

override bool OnMouseDown (HPS.MouseState in_state)

This function is called whenever HPS receives a MouseEvent that signals a mouse button was pressed. This function starts the operator and computes the position of the starting point.

Param in_state

A MouseState object describing the current mouse state.

Return

true if the input event was handled, false otherwise.

override bool OnMouseMove (HPS.MouseState in_state)

This function is called whenever HPS receives a MouseEvent that signals the mouse moved This function interprets the input to decide whether to orbit, zoom or pan the camera, and updates the camera as needed.

Param in_state

A MouseState object describing the current mouse state.

Return

true if the input event was handled, false otherwise.

override bool OnMouseUp (HPS.MouseState in_state)

This function is called whenever HPS receives a MouseEvent that signals a mouse button was released. This function stops the operator.

Param in_state

A MouseState object describing the current mouse state.

Return

true if the input event was handled, false otherwise.

override bool OnTouchDown (HPS.TouchState in_state)

This function is called whenever HPS receives a TouchEvent that signals the device was touched. This function starts the operator and computes the position of the starting point.

Param in_state

A TouchState object describing the current touch state.

Return

true if the input event was handled, false otherwise.

override bool OnTouchMove (HPS.TouchState in_state)

This function is called whenever HPS receives a TouchEvent that signals a point of contact has moved. This function interprets the input to decide whether to orbit, zoom or pan the camera, and updates the camera as needed.

Param in_state

A TouchState object describing the current touch state.

Return

true if the input event was handled, false otherwise.

override bool OnTouchUp (HPS.TouchState in_state)

This function is called whenever HPS receives a TouchEvent that signals a point of contact has been released. This function stops the operator.

Param in_state

A TouchState object describing the current touch state.

Return

true if the input event was handled, false otherwise.

PanOrbitZoomOperator ()
PanOrbitZoomOperator (HPS.MouseButtons in_mouse_trigger)
PanOrbitZoomOperator (HPS.MouseButtons in_mouse_trigger, HPS.ModifierKeys in_modifier_trigger)
PanOrbitZoomOperator (HPS.PanOrbitZoomOperator in_that)