sprk_ops.h
26 (51 + std::hash<float>()(x.red)) * 51 + std::hash<float>()(x.green) * 51 + std::hash<float>()(x.blue));
70 PanOrbitZoomOperator(MouseButtons in_mouse_trigger = MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger = ModifierKeys());
139 PanOperator(MouseButtons in_mouse_trigger = MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger = ModifierKeys());
193 OrbitOperator(MouseButtons in_mouse_trigger = MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger = ModifierKeys());
249 RelativeOrbitOperator(MouseButtons in_mouse_trigger = MouseButtons::ButtonMiddle(), ModifierKeys in_modifier_trigger = ModifierKeys());
283 ZoomOperator(MouseButtons in_mouse_trigger = MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger = ModifierKeys());
336 ConstructRectangleOperator(MouseButtons in_mouse_trigger = MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger = ModifierKeys(), bool draw_faces = false);
374 ZoomBoxOperator(MouseButtons in_mouse_trigger = MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger = ModifierKeys());
409 SelectAreaOperator(MouseButtons in_mouse_trigger = MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger = ModifierKeys());
429 void SetSelectionOptions(HPS::SelectionOptionsKit const & in_options) { selection_options = in_options; }
437 bool SelectCommon(HPS::WindowKey & in_window, HPS::ModifierKeys in_modifiers = HPS::ModifierKeys());
453 HighlightAreaOperator(MouseButtons in_mouse_trigger = MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger = ModifierKeys());
467 void SetHighlightOptions(HPS::HighlightOptionsKit const & in_options) { highlight_options = in_options; }
506 SelectOperator(MouseButtons in_mouse_trigger = MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger = ModifierKeys());
522 void SetSelectionOptions(HPS::SelectionOptionsKit const & in_options) { selection_options = in_options; }
530 bool SelectCommon(HPS::Point const & in_loc, HPS::WindowKey & in_window, HPS::ModifierKeys in_modifiers = HPS::ModifierKeys());
544 HighlightOperator(MouseButtons in_mouse_trigger = MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger = ModifierKeys());
554 void SetHighlightOptions(HPS::HighlightOptionsKit const & in_options) { highlight_options = in_options; }
580 MouseWheelOperator(ZoomType in_default_type = ZoomType::Accurate, HPS::ModifierKeys in_alternate_type_modifiers = HPS::ModifierKeys::KeyControl());
613 TurntableOperator(MouseButtons in_mouse_trigger = MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger = ModifierKeys());
721 FlyOperator(MouseButtons in_mouse_trigger = MouseButtons::ButtonRight(), ModifierKeys in_modifier_trigger = ModifierKeys());
804 /* Keyboard sensitivity affects the speed of movement of action triggered from the keyboard, such as walking forward by pressing W */
806 void SetKeyboardSensitivity(float in_keyboard_sensitivity) { keyboard_sensitivity = in_keyboard_sensitivity; }
808 /* Mouse sensitivity affects the speed of movement of action triggered from the mouse, such as rotating */
810 void SetMouseSensitivity(float in_mouse_sensitivity) { mouse_sensitivity = in_mouse_sensitivity; }
812 /* Left Joystick sensitivity affects the speed of movement of action triggered from the left joystick on touch devices */
814 void SetLeftJoystickSensitivity(float in_left_joystick_sensitivity) { left_joystick_sensitivity = in_left_joystick_sensitivity; }
816 /* Right Joystick sensitivity affects the speed of movement of action triggered from the right joystick on touch devices */
818 void SetRightJoystickSensitivity(float in_right_joystick_sensitivity) { right_joystick_sensitivity = in_right_joystick_sensitivity; }
821 The dead zone is an area around the initial touch down position where the user can move its finger
856 bool MoveWithTouch(HPS::Point & position, HPS::Point & target, HPS::Vector & up, HPS::Vector const & walking_direction);
955 WalkOperator(MouseButtons in_mouse_trigger = MouseButtons::ButtonRight(), ModifierKeys in_modifier_trigger = ModifierKeys());
999 void AdjustWalkingDirection(HPS::Vector const & camera_direction, HPS::Vector const & camera_up);
1030 SimpleWalkOperator(MouseButtons in_mouse_trigger = MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger = ModifierKeys());
1045 virtual bool OnKeyDown(KeyboardState const & in_state) { HPS_UNREFERENCED(in_state); return false; }
1049 virtual bool OnKeyUp(KeyboardState const & in_state) { HPS_UNREFERENCED(in_state); return false; }
1173 bool Move(HPS::Point const & start_point, HPS::Point const & current_point, int directions, HPS::CameraKit & camera, ScaleFactor const & scale);
1269 CuttingSectionOperator(MouseButtons in_mouse_trigger = MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger = ModifierKeys());
1353 void SetPlaneHighlightOptions(HighlightOptionsKit const & in_highlight_options) { highlight_options = in_highlight_options; }
1361 void SetMouseOverHighlighting(bool in_enable_mouse_over_highlighting) { enable_mouse_over_highlighting = in_enable_mouse_over_highlighting; }
1379 bool GetIndicatorVisibility() { return (op_state == OpState::Uninitialized || op_state == OpState::FacePicking) ? true : false; }
1396 void TranslateCuttingPlane(KeyPath const & in_event_path, WindowPoint const & in_event_location);
1486 MarkupOperator(MouseButtons in_mouse_trigger = MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger = ModifierKeys());
1565 void SetTextAttribute(TextAttributeKit const & in_text_attributes) { current_attributes.text_attributes = in_text_attributes; }
1572 void SetLineAttribute(LineAttributeKit const & in_line_attributes) {current_attributes.line_attributes = in_line_attributes; }
1737 AnnotationOperator(MouseButtons in_mouse_trigger = MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger = ModifierKeys());
1822 AnnotationInsertedEvent(HPS::SegmentKey const & in_text_key, HPS::View const & in_view) : Event()
1896 SelectionOptionsKit annotation_selection_options; //selection options used when trying to select annotations
1899 UTF8 annotation_user_data; //the user data set on annotation geometry to distinguish it from non annotation geometry
1900 UTF8 annotation_shape; //the name of the shape definition used to draw the annotation background
1902 PortfolioKey current_portfolio; //the portfolio used to store the default definitions used by this operator
1913 //touch only flags -- these flags are only relevant when running the operator on a touch enabled device
1916 CameraKit original_camera; //the camera setting as they were just before the annotation text is edited
1917 KeyboardHiddenEventHandler handler; //a handler that takes care of resetting the camera when the software keyboard is hidden
1919 bool always_show_keyboard_on_touch_up; //true if we are just inserting the annotation, false if we are editing a previously inserted one.
1942 HandlesOperator(MouseButtons in_mouse_trigger = MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger = ModifierKeys());
2043 void SetHandlesAppearance(float in_length = 0.16f, float in_radius = 0.005f, size_t in_handles_points = 30);
2050 void SetRotationHandleAppearance(float in_offset = 0.045f, float in_angle = 25.0f, float in_tip_size = 0.15f);
2057 void SetPlaneTranslationAppearance(float in_plane_offset = 0.2f, float in_plane_length = 0.6f, float in_center_radius = 0.2f);
2063 void GetHandlesAppearance(float & out_length, float & out_radius, size_t & out_handles_points) const;
2069 void GetRotationHandleAppearance(float & out_offset, float & out_angle, float & out_tip_size) const;
2075 void GetPlaneTranslationAppearance(float & out_plane_offset, float & out_plane_length, float & out_center_radius) const;
2107 GeometryTransformedEvent(HPS::View const & in_view, HPS::SegmentKey const & in_segment_key, HPS::MatrixKit const & in_transform) : Event()
2164 CanvasArray canvases; //A list of Canvas objects that the View attached to this operator belongs to. This value only gets updated on OnViewAttached.
2169 SegmentKey handles_segment; //segment where the matrices for the handles transformations are accumulated
2174 SegmentKey temporary_segment_to_move; //segment where we accumulate changes while the handles are active
2213 float arc_offset; //Distance between the end of the translation handle and the start of the translation arc. Expressed in percentage of handles_length [0 - 1].
2216 float tip_size; //The size of the tips at the end of the handles, specified as a percentage of the handles length
2217 float plane_offset; //The distance between the axis translation handle and the start of the plane translation handle, specified as a percentage of handles_length.
2218 float plane_length; //The length of the plane translation handle, specified as a percentage of handles_length.
2261 //copies the accumulated transform from the reference geometry segment back into the original place.
Definition: hps.h:6162
Event * Clone() const
Definition: sprk_ops.h:1848
MarkupInsertedEvent(Event const &in_event)
Definition: sprk_ops.h:1606
Definition: sprk.h:264
An InvalidSpecificationException is thrown when a method is called with non-sensical or contradictory...
Definition: hps.h:5642
Definition: sprk_ops.h:1027
Definition: sprk_ops.h:280
Event * Clone() const
Definition: sprk_ops.h:2135
RGBAColor GetHighlightColor() const
Definition: sprk_ops.h:2036
Definition: hps.h:35172
HPS::HighlightOptionsKit GetHighlightOptions() const
Definition: sprk_ops.h:472
Definition: sprk_ops.h:394
HPS::SelectionOptionsKit GetSelectionOptions() const
Definition: sprk_ops.h:527
void SetMarkupType(MarkupType in_markup_type)
Definition: sprk_ops.h:1551
Definition: hps.h:44899
Definition: hps.h:7671
Definition: sprk_ops.h:67
AnnotationInsertedEvent()
Definition: sprk_ops.h:1816
Definition: hps.h:3463
Definition: hps.h:6548
void SetIndicatorScale(float in_scale)
Definition: sprk_ops.h:1337
Definition: hps.h:15731
HPS::SelectionOptionsKit GetSelectionOptions() const
Definition: sprk_ops.h:434
Definition: sprk_ops.h:610
GeometryTransformedEvent(Event const &in_event)
Definition: sprk_ops.h:2118
void SetPlaneHighlightOptions(HighlightOptionsKit const &in_highlight_options)
Definition: sprk_ops.h:1353
Definition: sprk_ops.h:2097
Definition: sprk_ops.h:491
Definition: sprk_ops.h:190
TextAttributeKit GetTextAttributes()
Definition: sprk_ops.h:1562
GeometryTransformedEvent()
Definition: sprk_ops.h:2101
Definition: hps.h:1510
Definition: hps.h:8844
void SetLineAttribute(LineAttributeKit const &in_line_attributes)
Definition: sprk_ops.h:1572
Definition: sprk_ops.h:333
Definition: sprk_ops.h:1586
Definition: sprk_ops.h:674
void SetSelectionOptions(HPS::SelectionOptionsKit const &in_options)
Definition: sprk_ops.h:522
Definition: sprk_ops.h:1257
Definition: sprk_ops.h:1939
virtual HPS::UTF8 GetName() const OVERRIDE
Definition: sprk_ops.h:1740
Definition: hps.h:44798
virtual HPS::UTF8 GetName() const
Definition: sprk_ops.h:337
Definition: sprk_ops.h:718
Definition: sprk_ops.h:444
Definition: hps.h:31590
Definition: hps.h:4353
Definition: sprk_ops.h:1475
bool GetTrailingGeometry() const
Definition: sprk_ops.h:2085
AnnotationInsertedEvent(Event const &in_event)
Definition: sprk_ops.h:1832
bool GetIndicatorVisibility()
Definition: sprk_ops.h:1379
Definition: hps.h:4292
Definition: hps.h:7044
Definition: hps.h:44290
Definition: hps.h:25797
Definition: hps.h:41822
Definition: hps.h:5866
Definition: hps.h:43343
Definition: hps.h:41117
Definition: hps.h:44686
void SetTrailingGeometry(bool in_state)
Definition: sprk_ops.h:2080
Definition: sprk_ops.h:537
Definition: hps.h:15141
Definition: hps.h:14407
Definition: hps.h:42099
Definition: hps.h:43955
bool GetMouseOverHighlighting() const
Definition: sprk_ops.h:1357
HPS::Rectangle GetRectangle() const
Definition: sprk_ops.h:352
Definition: hps.h:6262
void SetSelectionOptions(HPS::SelectionOptionsKit const &in_options)
Definition: sprk_ops.h:429
Definition: hps.h:13439
virtual bool OnKeyDown(KeyboardState const &in_state)
Definition: sprk_ops.h:1045
void SetMouseOverHighlighting(bool in_enable_mouse_over_highlighting)
Definition: sprk_ops.h:1361
Definition: sprk_ops.h:239
LineAttributeKit GetLineAttributes()
Definition: sprk_ops.h:1569
Definition: sprk_ops.h:1812
void SetHighlightOptions(HPS::HighlightOptionsKit const &in_options)
Definition: sprk_ops.h:467
float GetIndicatorScale() const
Definition: sprk_ops.h:1333
Definition: sprk_ops.h:1734
HPS::HighlightOptionsKit GetHighlightOptions() const
Definition: sprk_ops.h:559
Definition: hps.h:43269
Definition: sprk_ops.h:567
Definition: sprk_ops.h:952
Definition: hps.h:8962
MaterialMappingKit GetPlaneMaterial() const
Definition: sprk_ops.h:1341
Definition: hps.h:7590
Definition: hps.h:9176
Definition: hps.h:10688
void SetTextAttribute(TextAttributeKit const &in_text_attributes)
Definition: sprk_ops.h:1565
MaterialKitArray GetHandlesColors() const
Definition: sprk_ops.h:2027
Definition: hps.h:23149
Definition: hps.h:23434
Definition: sprk.h:1092
Definition: sprk_ops.h:136
virtual bool OnKeyUp(KeyboardState const &in_state)
Definition: sprk_ops.h:1049
HighlightOptionsKit GetPlaneHighlightOptions() const
Definition: sprk_ops.h:1349
Definition: hps.h:38684
MarkupInsertedEvent()
Definition: sprk_ops.h:1590
void SetHighlightOptions(HPS::HighlightOptionsKit const &in_options)
Definition: sprk_ops.h:554
Definition: sprk_ops.h:371