#include <sprk_ops.h>

Public Member Functions | |
FlyOperator (MouseButtons in_mouse_trigger=MouseButtons::ButtonRight(), ModifierKeys in_modifier_trigger=ModifierKeys()) | |
float | GetJoystickDeadZone () const |
float | GetKeyboardSensitivity () const |
float | GetLeftJoystickSensitivity () const |
float | GetMouseSensitivity () const |
virtual HPS::UTF8 | GetName () const |
float | GetRightJoystickSensitivity () const |
float | GetSceneExtents () const |
void | InvertXAxis () |
void | InvertYAxis () |
bool | IsXAxisInverted () const |
bool | IsYAxisInverted () const |
virtual bool | OnKeyDown (KeyboardState const &in_state) |
virtual bool | OnKeyUp (KeyboardState const &in_state) |
virtual void | OnModelAttached () |
virtual bool | OnMouseDown (MouseState const &in_state) |
virtual bool | OnMouseMove (MouseState const &in_state) |
virtual bool | OnMouseUp (MouseState const &in_state) |
virtual bool | OnMouseWheel (MouseState const &in_state) |
virtual bool | OnTimerTick (HPS::TimerTickEvent const &in_event) |
virtual bool | OnTouchDown (TouchState const &in_state) |
virtual bool | OnTouchMove (TouchState const &in_state) |
virtual bool | OnTouchUp (TouchState const &in_state) |
virtual void | OnViewAttached (HPS::View const &in_attached_view) |
virtual void | OnViewDetached (HPS::View const &in_detached_view) |
void | SetJoystickDeadZone (float in_dead_zone) |
void | SetKeyboardSensitivity (float in_keyboard_sensitivity) |
void | SetLeftJoystickSensitivity (float in_left_joystick_sensitivity) |
void | SetMouseSensitivity (float in_mouse_sensitivity) |
void | SetRightJoystickSensitivity (float in_right_joystick_sensitivity) |
![]() | |
virtual void | Assign (Operator const &in_that) |
void | DetachView () |
virtual bool | Equals (Operator const &in_that) const |
View | GetAttachedView () const |
ModifierKeys | GetModifierTrigger () const |
MouseButtons | GetMouseTrigger () const |
virtual bool | IsMouseTriggered (MouseState const &in_state) |
HPS::Type | ObjectType () const |
virtual void | OnModelDetached () |
virtual bool | OnMouseEnter (MouseState const &in_state) |
virtual bool | OnMouseLeave (MouseState const &in_state) |
virtual bool | OnTextInput (HPS::UTF8 const &in_text) |
Operator (MouseButtons in_mouse_trigger=MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger=ModifierKeys()) | |
Operator (Operator const &in_that) | |
virtual bool | operator!= (Operator const &in_that) const |
virtual Operator & | operator= (Operator const &in_that) |
virtual bool | operator== (Operator const &in_that) const |
void | SetModifierTrigger (ModifierKeys in_modifiers) |
void | SetMouseTrigger (MouseButtons in_buttons) |
![]() | |
Sprocket (Sprocket &&in_that) | |
![]() | |
virtual bool | Empty () const |
intptr_t | GetClassID () const |
intptr_t | GetInstanceID () const |
bool | HasType (HPS::Type in_mask) const |
Object (Object const &that) | |
Object (Object &&in_that) | |
Object & | operator= (Object const &other_object) |
Object & | operator= (Object &&in_that) |
virtual void | Reset () |
virtual HPS::Type | Type () const |
Protected Member Functions | |
void | MoveBack (HPS::Point &position, HPS::Point &target, HPS::Vector const &direction) |
void | MoveDown (HPS::Point &position, HPS::Point &target, HPS::Vector &up) |
void | MoveForward (HPS::Point &position, HPS::Point &target, HPS::Vector const &direction) |
void | MoveLeft (HPS::Point &position, HPS::Point &target, HPS::Vector &up) |
void | MoveRight (HPS::Point &position, HPS::Point &target, HPS::Vector &up) |
void | MoveUp (HPS::Point &position, HPS::Point &target, HPS::Vector &up) |
bool | MoveWithTouch (HPS::Point &position, HPS::Point &target, HPS::Vector &up, HPS::Vector const &walking_direction) |
void | RotateCommon (HPS::Point const &delta, HPS::Point &position, HPS::Point &target) |
bool | RotateScene (HPS::Point &position, HPS::Point &target) |
bool | RotateWithTouch (HPS::Point &position, HPS::Point &target) |
Protected Attributes | |
unsigned int | movement_flags |
![]() | |
HPS::ModifierKeys | modifier_trigger |
HPS::MouseButtons | mouse_trigger |
Additional Inherited Members | |
![]() | |
enum | Priority { Low, Default, High } |
![]() | |
template<typename T > | |
static intptr_t | ClassID () |
![]() | |
static const HPS::Type | staticType = HPS::Type::Operator |
![]() | |
static const HPS::Type | staticType = HPS::Type::None |
Detailed Description
The FlyOperator class defines an operator which allows the user to accurately move the camera around the scene. This Operator works for both mouse- and touch-driven devices. Mouse-Driven Devices: W: Move camera position and target forward A: Pan camera left S: Move camera position and target forward D: Pan camera right C: Pan camera down Space: Pan camera up
Q: Roll camera left E: Roll camera right Right-button down and move: Rotate camera in place Shift: Walk at double the speed while pressed Ctrl: Walk at half the speed while pressed Mouse Wheel: Increase / Decrease step length Shift + Mouse Wheel: Increase / Decrease field of view Touch-Driven Devices: touch -left side of screen: Pans camera in left or right, moves camera forward or back touch -right side of screen: Rotates camera in place Two-finger touch -right side of screen: Pans camera up or down, rolls camera left or right The movement speed increases as the user drags his fingers away from the initial touch position
Member Function Documentation
◆ GetName()
|
inlinevirtual |
Returns the name of the operator.
Reimplemented from HPS::Operator.
Reimplemented in HPS::SimpleWalkOperator, and HPS::WalkOperator.
◆ OnKeyDown()
|
virtual |
This function is called whenever HPS receives a KeyboardState event that signals a button was pressed. This function instructs the operator on which direction to move towards.
- Parameters
-
in_state A KeyboardState object describing the current keyboard state. W: Move camera position and target forward A: Pan camera left S: Move camera position and target forward D: Pan camera right C: Pan camera down Space: Pan camera up
Q: Roll camera left E: Roll camera right Shift: Walk at double the speed while pressed Ctrl: Walk at half the speed while pressed
- Returns
- true if the input event was handled, false otherwise.
Reimplemented from HPS::Operator.
Reimplemented in HPS::SimpleWalkOperator.
◆ OnKeyUp()
|
virtual |
This function is called whenever HPS receives a KeyboardState event that signals a button was released.
- Parameters
-
in_state A KeyboardState object describing the current keyboard state.
- Returns
- true if the input event was handled, false otherwise.
Reimplemented from HPS::Operator.
Reimplemented in HPS::SimpleWalkOperator.
◆ OnModelAttached()
|
virtual |
This function is called whenever a model is attached to the view that is attached to this operator. If no view is attached to this operator, this function will not be called.
Reimplemented from HPS::Operator.
Reimplemented in HPS::SimpleWalkOperator, and HPS::WalkOperator.
◆ OnMouseDown()
|
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.
- Parameters
-
in_state A MouseState object describing the current mouse state.
- Returns
- true if the input event was handled, false otherwise.
Reimplemented from HPS::Operator.
Reimplemented in HPS::SimpleWalkOperator.
◆ OnMouseMove()
|
virtual |
This function is called whenever HPS receives a MouseEvent that signals the mouse moved This function rotates the camera in place if the right mouse button is down.
- Parameters
-
in_state A MouseState object describing the current mouse state.
- Returns
- true if the input event was handled, false otherwise.
Reimplemented from HPS::Operator.
Reimplemented in HPS::SimpleWalkOperator.
◆ OnMouseUp()
|
virtual |
This function is called whenever HPS receives a MouseEvent that signals a mouse button was released.
- Parameters
-
in_state A MouseState object describing the current mouse state.
- Returns
- true if the input event was handled, false otherwise.
Reimplemented from HPS::Operator.
Reimplemented in HPS::SimpleWalkOperator.
◆ OnMouseWheel()
|
virtual |
This function is called whenever HPS receives a MouseEvent that signals the mouse wheel moved If shift is not pressed this function increases or decreases the step length. If shift is pressed this function increases or decreases the camera field of view.
- Parameters
-
in_state A MouseState object describing the current mouse state.
- Returns
- true if the input event was handled, false otherwise.
Reimplemented from HPS::Operator.
Reimplemented in HPS::SimpleWalkOperator.
◆ OnTimerTick()
|
virtual |
This function is called whenever HPS receives a TimerTickEvent This function moves the camera
- Parameters
-
in_event A TimerTickEvent object describing the current timer tick.
- Returns
- true if the input event was handled, false otherwise.
Reimplemented from HPS::Operator.
Reimplemented in HPS::SimpleWalkOperator, and HPS::WalkOperator.
◆ OnTouchDown()
|
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.
- Parameters
-
in_state A TouchState object describing the current touch state.
- Returns
- true if the input event was handled, false otherwise.
Reimplemented from HPS::Operator.
Reimplemented in HPS::SimpleWalkOperator.
◆ OnTouchMove()
|
virtual |
This function is called whenever HPS receives a TouchEvent that signals a point of contact has moved. This function rotates the camera in place.
- Parameters
-
in_state A TouchState object describing the current touch state.
- Returns
- true if the input event was handled, false otherwise.
Reimplemented from HPS::Operator.
Reimplemented in HPS::SimpleWalkOperator.
◆ OnTouchUp()
|
virtual |
This function is called whenever HPS receives a TouchEvent that signals a point of contact has been released.
- Parameters
-
in_state A TouchState object describing the current touch state.
- Returns
- true if the input event was handled, false otherwise.
Reimplemented from HPS::Operator.
Reimplemented in HPS::SimpleWalkOperator.
◆ OnViewAttached()
|
virtual |
This function is called whenever a view is attached to this operator.
Reimplemented from HPS::Operator.
Reimplemented in HPS::SimpleWalkOperator, and HPS::WalkOperator.
◆ OnViewDetached()
|
virtual |
This function is called whenever a view is detached from this operator.
Reimplemented from HPS::Operator.
The documentation for this class was generated from the following file:
- include/sprk_ops.h