# SimpleWalkOperator

class `SimpleWalkOperator` : public HPS::WalkOperator

  The SimpleWalkOperator class defines an operator which allows the user to move forward and backwards and rotate while staying snapped to a plane.

  Public Functions

  bool `GetEnableMiddleMouseButtonDolly`() const

    This function returns the state of Camera Dolly operations using the middle mouse button. The SimpleWalkOperator has Camera Dolly operations fixed to the middle mouse button by default. To disable this behavior, set this value to false.

    Returns: | true if middle mouse button Camera Dollying is enabled, false otherwise.

  inline virtual HPS::UTF8 `GetName`() const

    Returns the name of the operator.

  virtual bool `IsMouseTriggered`(MouseState const &in_state)

    This function overrides the base class implementation to additionally inspect in_state for the middle mouse button state if middle mouse button Camera Dollying is enabled.

    Returns: | true if the MouseButtons and ModifierKeys are active.

  inline virtual bool `OnKeyDown`(KeyboardState const &in_state)

    This function is called whenever HPS receives a KeyboardState event that signals a button was pressed. This operator does not handle key down events.

    Returns: | true if the input event was handled, false otherwise.

  inline virtual bool `OnKeyUp`(KeyboardState const &in_state)

    This function is called whenever HPS receives a KeyboardState event that signals a button was released. This operator does not handle key up events.

    Returns: | true if the input event was handled, false otherwise.

  virtual void `OnModelAttached`()

    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.

  virtual bool `OnMouseDown`(MouseState const &in_state)

    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.

  virtual bool `OnMouseEnter`(MouseState const &in_state)

    This function is called whenever HPS receives a MouseEvent that signals the mouse entered the window.

    Parameters: | in_state – A MouseState object describing the current mouse state.
    Returns: | true if the input event was handled, false otherwise.

  virtual bool `OnMouseLeave`(MouseState const &in_state)

    This function is called whenever HPS receives a MouseEvent that signals the mouse left the window.

    Parameters: | in_state – A MouseState object describing the current mouse state.
    Returns: | true if the input event was handled, false otherwise.

  virtual bool `OnMouseMove`(MouseState const &in_state)

    This function is called whenever HPS receives a MouseEvent that signals the mouse moved This function rotates the camera in place and moves forward/back if the left 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.

  virtual bool `OnMouseUp`(MouseState const &in_state)

    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.

  virtual bool `OnMouseWheel`(MouseState const &in_state)

    This function is called whenever HPS receives a MouseEvent that signals the mouse wheel moved

    Parameters: | in_state – A MouseState object describing the current mouse state.
    Returns: | true if the input event was handled, false otherwise.

  virtual bool `OnTimerTick`(HPS::TimerTickEvent const &in_event)

    This function is called whenever HPS receives a TimerTickEvent This function moves the camera

    Parameters: | in_state – A TimerTickEvent object describing the current timer tick.
    Returns: | true if the input event was handled, false otherwise.

  virtual bool `OnTouchDown`(TouchState const &in_state)

    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.

  virtual bool `OnTouchMove`(TouchState const &in_state)

    This function is called whenever HPS receives a TouchEvent that signals a point of contact has moved.

    Parameters: | in_state – A TouchState object describing the current touch state.
    Returns: | true if the input event was handled, false otherwise.

  virtual bool `OnTouchUp`(TouchState const &in_state)

    This function is called whenever HPS receives a TouchEvent that signals a point of contact has been released.

    Returns: | true if the input event was handled, false otherwise.

  virtual void `OnViewAttached`(HPS::View const &in_attached_view)

    This function is called whenever a view is attached to this operator.

  void `SetEnableMiddleMouseButtonDolly`(bool in_enable)

    This function enables or disables Camera Dolly operations using the middle mouse button. The SimpleWalkOperator has Camera Dolly operations fixed to the middle mouse button by default. To disable this behavior, set this value to false.

    Parameters: | in_state – The new state of middle mouse button dollying.

  void `SetKeyboardControlKey`(bool in_state)

    This function sets the Control key state in this operator. Call this function from your application to inform the the operator of the Control key state. The Control key decreases the velocities of forward/backward and rotation movements.

    Parameters: | in_state – The new state of the Control key.

  void `SetKeyboardShiftKey`(bool in_state)

    This function sets the Shift key state in this operator. Call this function from your application to inform the the operator of the Shift key state. The Shift key increases the mouse trigger button forward/backward velocity.

    Parameters: | in_state – The new state of the Shift key.

  `SimpleWalkOperator`(MouseButtons in_mouse_trigger = MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger = ModifierKeys())

Conversation saved
HOOPSY BETA

### Hello! I'm HOOPSY

Your multilingual generative AI assistant for documentation. Ask me anything about HOOPS Visualize Desktop in your own language, or choose a sample question below to start a conversation:

What is HOOPS Visualize Desktop?
What are the latest release notes for HOOPS Visualize Desktop?
How do I start evaluating HOOPS Visualize Desktop?
How do I write my first sample application?
How can I get assistance?

HOOPSY may store conversations according to OpenAI's policy. Responses may not always be accurate.

HOOPSY is thinking...