30 #ifndef RVIZ_FPS_VIEW_CONTROLLER_H 31 #define RVIZ_FPS_VIEW_CONTROLLER_H 33 #include <OgreVector3.h> 34 #include <OgreQuaternion.h> 56 void pitch(
float angle );
57 void move(
float x,
float y,
float z );
61 virtual void lookAt(
const Ogre::Vector3& point );
72 virtual void update(
float dt,
float ros_dt);
75 virtual void onTargetFrameChanged(
const Ogre::Vector3& old_reference_position,
const Ogre::Quaternion& old_reference_orientation);
90 #endif // RVIZ_VIEW_CONTROLLER_H Ogre::Quaternion getOrientation()
Return a Quaternion based on the yaw and pitch properties.
virtual void onInitialize()
Do subclass-specific initialization. Called by ViewController::initialize after context_, target_scene_node_, and camera_ are set. This version calls updateTargetSceneNode().
FloatProperty * pitch_property_
The camera's pitch (rotation around the x-axis), in radians.
Base class of ViewControllers which have a "Target Frame" which is a TF frame whose position they tra...
A first-person camera, controlled by yaw, pitch, and position.
virtual ~FPSViewController()
virtual void lookAt(const Ogre::Vector3 &point)
This should be implemented in each subclass to aim the camera at the given point in space (relative t...
VectorProperty * position_property_
Property specialized to enforce floating point max/min.
TFSIMD_FORCE_INLINE const tfScalar & y() const
virtual void handleMouseEvent(ViewportMouseEvent &evt)
virtual void onTargetFrameChanged(const Ogre::Vector3 &old_reference_position, const Ogre::Quaternion &old_reference_orientation)
Override to implement the change in properties which nullifies the change in target frame...
TFSIMD_FORCE_INLINE tfScalar angle(const Quaternion &q1, const Quaternion &q2)
void move(float x, float y, float z)
void setPropertiesFromCamera(Ogre::Camera *source_camera)
virtual void mimic(ViewController *source_view)
Configure the settings of this view controller to give, as much as possible, a similar view as that g...
TFSIMD_FORCE_INLINE const tfScalar & x() const
TFSIMD_FORCE_INLINE const tfScalar & z() const
virtual void update(float dt, float ros_dt)
Called at 30Hz by ViewManager::update() while this view is active. Override with code that needs to r...
FloatProperty * yaw_property_
The camera's yaw (rotation around the y-axis), in radians.