#include <sprk.h>
Public Member Functions | |
virtual HPS::UTF8 | GetName () const |
NavigationCubeOperator (MouseButtons in_mouse_trigger=MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger=ModifierKeys()) | |
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 | OnTouchDown (TouchState const &in_state) |
virtual bool | OnTouchMove (TouchState const &in_state) |
virtual bool | OnTouchUp (TouchState const &in_state) |
virtual void | OnViewAttached () |
virtual void | OnViewDetached () |
void | SetReferenceSegment (HPS::SegmentKey const &in_segment) |
void | SetReferenceSegment (HPS::SegmentKeyArray const &in_segments) |
HPS::SegmentKeyArray | ShowReferenceSegment () |
void | UpdateHighlightColor () |
![]() | |
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 bool | OnKeyDown (KeyboardState const &in_state) |
virtual bool | OnKeyUp (KeyboardState const &in_state) |
virtual void | OnModelDetached () |
virtual bool | OnMouseEnter (MouseState const &in_state) |
virtual bool | OnMouseLeave (MouseState const &in_state) |
virtual bool | OnMouseWheel (MouseState const &in_state) |
virtual bool | OnTextInput (HPS::UTF8 const &in_text) |
virtual bool | OnTimerTick (HPS::TimerTickEvent const &in_event) |
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 (HPS::Sprocket const &in_that)=default | |
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 () |
HPS::Type | Type () const |
Additional Inherited Members | |
![]() | |
enum | Priority { Low, Default, High } |
![]() | |
template<typename T > | |
static intptr_t | ClassID () |
![]() | |
HPS::ModifierKeys | modifier_trigger |
HPS::MouseButtons | mouse_trigger |
The NavigationCubeOperator class defines an operator which allows the user to interact with the navigation cube. This Operator works for both mouse- and touch-driven devices. Mouse-Driver Devices: Left Button Down: Snap view to plane Left Button Down and Move: Rotates the scene Touch-Driven Devices: Tap: Snaps view to plane Tap and Move: Rotates the scene
|
inlinevirtual |
Returns the name of the operator.
Reimplemented from HPS::Operator.
|
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.
|
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.
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.
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 TouchEvent that signals the device was touched.
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. This function orbits the camera as needed.
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.
|
virtual |
This function is called whenever a view is attached to this operator.
Reimplemented from HPS::Operator.
|
virtual |
This function is called whenever a view is detached from this operator.
Reimplemented from HPS::Operator.
void HPS::NavigationCubeOperator::SetReferenceSegment | ( | HPS::SegmentKey const & | in_segment | ) |
Sets a segment as the reference segment. All rotations happen around the reference segment. By default the reference segment is the View segment. /param in_segment the segment to rotate around.
void HPS::NavigationCubeOperator::SetReferenceSegment | ( | HPS::SegmentKeyArray const & | in_segments | ) |
Sets a group of segments as the reference segments. All rotations happen around the combined bounding box of the reference segments. By default the reference segment is the View segment. /param in_segments the segments to rotate around.
HPS::SegmentKeyArray HPS::NavigationCubeOperator::ShowReferenceSegment | ( | ) |
Returns the segments used as a reference for rotations By default the reference segment is the View segment. /return the segments to rotate around.