Class FPSViewController

Inheritance Relationships

Base Type

  • public rviz_common::FramePositionTrackingViewController

Class Documentation

class FPSViewController : public rviz_common::FramePositionTrackingViewController

A first-person camera, controlled by yaw, pitch, and position.

Public Functions

FPSViewController()
~FPSViewController() override
void onInitialize() override
void yaw(float angle)
void pitch(float angle)
void move(float x, float y, float z)
void handleMouseEvent(rviz_common::ViewportMouseEvent &evt) override
void lookAt(const Ogre::Vector3 &point) override
void reset() override
void mimic(rviz_common::ViewController *source_view) override

Configure the settings of this view controller to give, as much as possible, a similar view as that given by the.

Parameters:
  • source_view.

  • source_view – must return a valid Ogre::Camera* from getCamera().

void update(float dt, float ros_dt) override

Protected Functions

void onTargetFrameChanged(const Ogre::Vector3 &old_reference_position, const Ogre::Quaternion &old_reference_orientation) override
void setPropertiesFromCamera(Ogre::Camera *source_camera)
void updateCamera()
void setCursorStatus(rviz_common::ViewportMouseEvent &event)
bool extractMouseMoveDifference(const rviz_common::ViewportMouseEvent &event, int32_t &diff_x, int32_t &diff_y) const
void moveCamera(rviz_common::ViewportMouseEvent &event, int32_t diff_x, int32_t diff_y)
bool handleMouseWheelMovement(const rviz_common::ViewportMouseEvent &event)
void handleQuaternionOrientationAmbiguity(const Ogre::Quaternion &quaternion, float &yaw, float &pitch) const
Ogre::Quaternion getOrientation()

Protected Attributes

rviz_common::properties::FloatProperty *yaw_property_
rviz_common::properties::FloatProperty *pitch_property_
rviz_common::properties::VectorProperty *position_property_