17 #ifndef GAZEBO_RENDERING_ORBITVIEWCONTROLLER_HH_
18 #define GAZEBO_RENDERING_ORBITVIEWCONTROLLER_HH_
22 #include <ignition/math/Vector3.hh>
45 const std::string &_name =
"OrbitViewController");
51 public:
virtual void Init();
54 public:
virtual void Init(
const ignition::math::Vector3d &_focalPoint,
55 const double _yaw = 0,
const double _pitch = 0);
58 public:
virtual void Update();
66 public:
static std::string GetTypeString();
70 public:
void SetDistance(
float _d);
74 public:
void SetFocalPoint(
const ignition::math::Vector3d &_fp);
78 public: ignition::math::Vector3d FocalPoint()
const;
81 public:
void HandleKeyReleaseEvent(
const std::string &_key);
84 public:
virtual void HandleKeyPressEvent(
const std::string &_key);
86 public:
double Pitch()
const;
88 public:
double Yaw()
const;
92 protected:
void TranslateLocal(
const ignition::math::Vector3d &_vec);
96 protected:
void TranslateGlobal(
const ignition::math::Vector3d &_vec);
100 protected:
void Zoom(
float _amount);
105 protected:
double NormalizeYaw(
double _v);
110 protected:
double NormalizePitch(
double _v);
113 protected:
void UpdateRefVisual();
118 protected:
void Orbit(
double _dy,
double _dp);
133 protected: std::string
key;
Generic description of a mouse event.
Definition: MouseEvent.hh:35
boost::shared_ptr< UserCamera > UserCameraPtr
Definition: RenderTypes.hh:94
float distance
Distance to the focal point.
Definition: OrbitViewController.hh:127
VisualPtr refVisual
A reference visual.
Definition: OrbitViewController.hh:130
Orbit view controller.
Definition: OrbitViewController.hh:37
float yaw
Yaw value.
Definition: OrbitViewController.hh:121
ignition::math::Vector3d focalPoint
The focal point.
Definition: OrbitViewController.hh:140
float pitch
Pitch value.
Definition: OrbitViewController.hh:124
std::shared_ptr< Visual > VisualPtr
Definition: RenderTypes.hh:114
bool init
A flag used to inidicate that the view controller has just been initialized.
Definition: OrbitViewController.hh:137
GAZEBO_VISIBLE void Init(google::protobuf::Message &_message, const std::string &_id="")
Initialize a message.
std::string key
Key that is currently pressed.
Definition: OrbitViewController.hh:133
Base class for view controllers.
Definition: ViewController.hh:41