17 #ifndef _GAZEBO_USERCAMERA_HH_
18 #define _GAZEBO_USERCAMERA_HH_
30 class UserCameraPrivate;
51 public:
void Load(sdf::ElementPtr _sdf);
60 public:
virtual void Update();
63 public:
virtual void PostRender();
70 public:
virtual void SetWorldPose(
const math::Pose &_pose);
78 public:
void HandleKeyPressEvent(
const std::string &_key);
82 public:
void HandleKeyReleaseEvent(
const std::string &_key);
86 public:
void SetViewController(
const std::string &_type);
91 public:
void SetViewController(
const std::string &_type,
96 public: std::string GetViewControllerTypeString();
101 public:
void Resize(
unsigned int _w,
unsigned int _h);
108 public:
void SetViewportDimensions(
float _x,
float _y,
113 public:
float GetAvgFPS()
const;
117 public:
unsigned int GetTriangleCount()
const;
121 public:
void MoveToVisual(
VisualPtr _visual);
124 public:
virtual bool MoveToPosition(
const math::Pose &_pose,
129 public:
void MoveToVisual(
const std::string &_visualName);
135 public:
virtual void SetRenderTarget(Ogre::RenderTarget *_target);
142 public:
void EnableViewController(
bool _value)
const;
161 public:
virtual unsigned int GetImageWidth()
const;
164 public:
virtual unsigned int GetImageHeight()
const;
168 public:
bool IsCameraSetInWorldFile();
172 public:
void SetUseSDFPose(
bool _value);
178 public:
void SetJoyTwistControl(
bool _value);
184 public:
void SetJoyPoseControl(
bool _value);
197 protected:
virtual bool AttachToVisualImpl(
VisualPtr _visual,
198 bool _inheritOrientation,
double _minDist = 0,
199 double _maxDist = 0);
202 protected:
virtual void AnimationComplete();
209 protected:
virtual bool TrackVisualImpl(
VisualPtr _visual);
213 private:
void ToggleShowVisual();
218 private:
void ShowVisual(
bool _show);
222 private:
void OnMoveToVisualComplete();
228 private:
void OnJoyTwist(ConstJoystickPtr &_msg);
234 private:
void OnJoyPose(ConstPosePtr &_msg);
Basic camera sensor.
Definition: Camera.hh:78
Generic description of a mouse event.
Definition: MouseEvent.hh:32
Encapsulates a position and rotation in three space.
Definition: Pose.hh:40
The Vector3 class represents the generic vector containing 3 elements.
Definition: Vector3.hh:43
Private data for the UserCamera class.
Definition: UserCameraPrivate.hh:26
Generic integer x, y vector.
Definition: Vector2i.hh:39
A camera used for user visualization of a scene.
Definition: UserCamera.hh:39
boost::shared_ptr< Scene > ScenePtr
Definition: RenderTypes.hh:74
GAZEBO_VISIBLE void Init(google::protobuf::Message &_message, const std::string &_id="")
Initialize a message.
boost::shared_ptr< Visual > VisualPtr
Definition: RenderTypes.hh:102
#define GAZEBO_VISIBLE
Use to represent "symbol visible" if supported.
Definition: system.hh:48