#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 (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 |
Additional Inherited Members | |
![]() | |
enum | Priority { Low, Default, High } |
![]() | |
template<typename T > | |
static intptr_t | ClassID () |
![]() | |
HPS::ModifierKeys | modifier_trigger |
HPS::MouseButtons | mouse_trigger |
Detailed Description
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 |
In order to use the NavigationCubeOperator, it's necessary to call HPS::NavigationCubeControl::SetInteractivity(true) first.
- Note
- The orientation of the NavigationCubeControl is specified by the model in the associated view. See HPS::Model::SetOrientation().
Member Function Documentation
|
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.
- 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.
|
virtual |
This function is called whenever HPS receives a MouseEvent that signals the mouse moved This function orbits the camera.
- 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.
|
virtual |
This function is called whenever HPS receives a MouseEvent that signals a mouse button was released. This function stops the operator.
- 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.
|
virtual |
This function is called whenever HPS receives a TouchEvent that signals the device was touched.
- 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.
|
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.
- 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.
|
virtual |
This function is called whenever HPS receives a TouchEvent that signals a point of contact has been released. This function stops the operator.
- 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.
|
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.
- Parameters
-
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.
- Parameters
-
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.
- Returns
- the segments to rotate around.
The documentation for this class was generated from the following file:
- include/sprk.h