#include <sprk_ops.h>
Public Member Functions | |
TurntableOperator (MouseButtons in_mouse_trigger=MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger=ModifierKeys()) | |
virtual HPS::UTF8 | GetName () const |
virtual bool | OnMouseDown (MouseState const &in_state) |
virtual bool | OnMouseUp (MouseState const &in_state) |
virtual bool | OnMouseMove (MouseState const &in_state) |
virtual bool | OnMouseWheel (MouseState const &in_state) |
virtual bool | OnTouchDown (TouchState const &in_state) |
virtual bool | OnTouchUp (TouchState const &in_state) |
virtual bool | OnTouchMove (TouchState const &in_state) |
![]() | |
Operator (MouseButtons in_mouse_trigger=MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger=ModifierKeys()) | |
Operator (Operator const &in_that) | |
HPS::Type | ObjectType () const |
virtual Operator & | operator= (Operator const &in_that) |
virtual void | Assign (Operator const &in_that) |
virtual bool | Equals (Operator const &in_that) const |
virtual bool | operator!= (Operator const &in_that) const |
virtual bool | operator== (Operator const &in_that) const |
void | DetachView () |
View | GetAttachedView () const |
virtual bool | OnMouseEnter (MouseState const &in_state) |
virtual bool | OnMouseLeave (MouseState const &in_state) |
virtual bool | OnKeyDown (KeyboardState const &in_state) |
virtual bool | OnKeyUp (KeyboardState const &in_state) |
virtual bool | OnTimerTick (HPS::TimerTickEvent const &in_event) |
virtual void | OnViewAttached () |
virtual void | OnViewDetached () |
virtual void | OnModelAttached () |
virtual void | OnModelDetached () |
void | SetMouseTrigger (MouseButtons in_buttons) |
MouseButtons | GetMouseTrigger () const |
void | SetModifierTrigger (ModifierKeys in_modifiers) |
ModifierKeys | GetModifierTrigger () const |
virtual bool | IsMouseTriggered (MouseState const &in_state) |
![]() | |
Sprocket (HPS::Sprocket const &in_that)=default | |
Sprocket (Sprocket &&in_that) | |
![]() | |
Object (Object const &that) | |
Object & | operator= (Object const &other_object) |
Object (Object &&in_that) | |
Object & | operator= (Object &&in_that) |
HPS::Type | Type () const |
virtual bool | Empty () const |
virtual void | Reset () |
bool | HasType (HPS::Type in_mask) const |
intptr_t | GetClassID () const |
intptr_t | GetInstanceID () const |
Additional Inherited Members | |
![]() | |
enum | Priority { Low, Normal, High } |
![]() | |
enum | UpdateType { Synchronous, Asynchronous } |
![]() | |
template<typename T > | |
static intptr_t | ClassID () |
![]() | |
HPS::MouseButtons | mouse_trigger |
HPS::ModifierKeys | modifier_trigger |
The TurntableOperator class defines an operator which allows the user to orbit the camera along a specific axis. This Operator works for both mouse- and touch-driven devices. Mouse-Driven Devices: Left button pressed and move: Orbit camera around z-axis Mouse wheel: Orbit camera around y-axis Left click + Control: Selects click location as rotation center Touch-Driven Devices: Touch down and move: Orbit camera around z-axis Two finger touch and move: Orbit camera around y-axis Double Tap: Selects click location as rotation center
|
inlinevirtual |
Returns the name of the operator.
Reimplemented from HPS::Operator.
|
virtual |
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. If the Control button is pressed the click location will become the rotation center point.
in_state | A MouseState object describing the current mouse state. |
Reimplemented from HPS::Operator.
|
virtual |
This function is called whenever HPS receives a MouseEvent that signals the mouse moved This function orbits the camera around the z-axis.
in_state | A MouseState object describing the current mouse state. |
Reimplemented from HPS::Operator.
|
virtual |
This function is called whenever HPS receives a MouseEvent that signals a mouse button was released. This function stops the operator.
in_state | A MouseState object describing the current mouse state. |
Reimplemented from HPS::Operator.
|
virtual |
This function is called whenever HPS receives a MouseEvent that signals the mouse wheel moved This function orbits the camera around the y-axis.
in_state | A MouseState object describing the current mouse state. |
Reimplemented from HPS::Operator.
|
virtual |
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. If a double-tap is received, the touch location will become the rotation center point.
in_state | A TouchState object describing the current touch state. |
Reimplemented from HPS::Operator.
|
virtual |
This function is called whenever HPS receives a TouchEvent that signals a point of contact has moved. If a one-finger touch was received, this function orbits the camera around the z-axis. If a two-finger touch was received, this function orbits the camera around the y-axis.
in_state | A TouchState object describing the current touch state. |
Reimplemented from HPS::Operator.
|
virtual |
This function is called whenever HPS receives a TouchEvent that signals a point of contact has been released. This function stops the operator.
in_state | A TouchState object describing the current touch state. |
Reimplemented from HPS::Operator.