17 #ifndef _GAZEBO_RENDERING_LIGHT_HH_
18 #define _GAZEBO_RENDERING_LIGHT_HH_
51 class GZ_RENDERING_VISIBLE
Light :
52 public boost::enable_shared_from_this<Light>
59 public:
virtual ~
Light();
64 public:
void Load(sdf::ElementPtr _sdf);
71 public:
void LoadFromMsg(ConstLightPtr &_msg);
75 public:
void LoadFromMsg(
const msgs::Light &_msg);
79 public:
void SetName(
const std::string &_name);
88 public: std::string Name()
const;
97 public: std::string Type()
const;
107 public:
void SetPosition(
const ignition::math::Vector3d &_p);
116 public: ignition::math::Vector3d Position()
const;
127 public:
void SetRotation(
const ignition::math::Quaterniond &_q);
136 public: ignition::math::Quaterniond Rotation()
const;
141 public:
virtual bool SetSelected(
const bool _s);
144 public:
void ToggleShowVisual();
148 public:
void ShowVisual(
const bool _s);
157 public:
bool Visible()
const;
161 public:
void SetLightType(
const std::string &_type);
200 public:
void SetDirection(
const ignition::math::Vector3d &_dir);
209 public: ignition::math::Vector3d Direction()
const;
215 public:
void SetAttenuation(
double _constant,
double _linear,
220 public:
void SetSpotInnerAngle(
const double _angle);
224 public:
void SetSpotOuterAngle(
const double _angle);
228 public:
void SetSpotFalloff(
const double _value);
232 public:
void SetRange(
const double _range);
236 public:
void SetCastShadows(
const bool _cast);
240 public:
void FillMsg(msgs::Light &_msg)
const;
244 public:
void UpdateFromMsg(ConstLightPtr &_msg);
256 private:
void CreateVisual();
259 private:
void Update();
263 private:
void UpdateSDFFromMsg(
const msgs::Light &_msg);
267 private: std::unique_ptr<LightPrivate> dataPtr;
The Vector3 class represents the generic vector containing 3 elements.
Definition: Vector3.hh:39
virtual void OnPoseChange()
On pose change callback.
Definition: rendering/Light.hh:253
#define GAZEBO_DEPRECATED(version)
Definition: CommonTypes.hh:48
boost::shared_ptr< Scene > ScenePtr
Definition: RenderTypes.hh:80
A quaternion class.
Definition: Quaternion.hh:42
Defines a color.
Definition: Color.hh:36
A light source.
Definition: rendering/Light.hh:51
boost::shared_ptr< Light > LightPtr
Definition: RenderTypes.hh:84