17 #ifndef IGNITION_RENDERING_BASE_BASELIGHT_HH_ 18 #define IGNITION_RENDERING_BASE_BASELIGHT_HH_ 35 public:
virtual void SetDiffuseColor(
double _r,
double _g,
double _b,
38 public:
virtual void SetDiffuseColor(
const math::Color &_color) = 0;
40 public:
virtual void SetSpecularColor(
double _r,
double _g,
double _b,
43 public:
virtual void SetSpecularColor(
const math::Color &_color) = 0;
45 public:
virtual void SetAttenuationConstant(
double _value) = 0;
47 public:
virtual void SetAttenuationLinear(
double _value) = 0;
49 public:
virtual void SetAttenuationQuadratic(
double _value) = 0;
51 public:
virtual void SetAttenuationRange(
double _range) = 0;
53 public:
virtual void SetCastShadows(
bool _castShadows) = 0;
55 protected:
virtual void Reset();
67 public:
virtual void SetDirection(
double _x,
double _y,
double _z);
69 public:
virtual void SetDirection(
const math::Vector3d &_dir) = 0;
71 protected:
virtual void Reset();
93 public:
virtual void SetDirection(
double _x,
double _y,
double _z);
95 public:
virtual void SetDirection(
const math::Vector3d &_dir) = 0;
97 public:
virtual void SetInnerAngle(
double _radians);
99 public:
virtual void SetInnerAngle(
const math::Angle &_angle) = 0;
101 public:
virtual void SetOuterAngle(
double _radians);
103 public:
virtual void SetOuterAngle(
const math::Angle &_angle) = 0;
105 public:
virtual void SetFalloff(
double _falloff) = 0;
107 protected:
virtual void Reset();
127 this->SetDiffuseColor(math::Color(_r, _g, _b, _a));
135 this->SetSpecularColor(math::Color(_r, _g, _b, _a));
142 this->SetDiffuseColor(math::Color::White);
143 this->SetSpecularColor(math::Color::White);
144 this->SetAttenuationConstant(1);
145 this->SetAttenuationLinear(0);
146 this->SetAttenuationQuadratic(0);
147 this->SetAttenuationRange(100);
148 this->SetCastShadows(
true);
167 this->SetDirection(math::Vector3d(_x, _y, _z));
175 this->SetDirection(0, 0, -1);
206 this->SetDirection(math::Vector3d(_x, _y, _z));
213 this->SetInnerAngle(math::Angle(_radians));
220 this->SetOuterAngle(math::Angle(_radians));
228 this->SetDirection(0, 0, -1);
229 this->SetInnerAngle(M_PI / 4.5);
230 this->SetOuterAngle(M_PI / 4.0);
231 this->SetFalloff(1.0);
Definition: BaseLight.hh:27
virtual ~BasePointLight()
Definition: BaseLight.hh:186
virtual void Reset()
Definition: BaseLight.hh:225
virtual void SetOuterAngle(double _radians)
Set the outer angle of the spotlight.
Definition: BaseLight.hh:218
Definition: BaseLight.hh:75
BaseSpotLight()
Definition: BaseLight.hh:192
virtual ~BaseLight()
Definition: BaseLight.hh:118
Represents a point light.
Definition: Light.hh:133
virtual void SetDirection(double _x, double _y, double _z)
Set the direction of the light.
Definition: BaseLight.hh:165
BaseLight()
Definition: BaseLight.hh:112
virtual ~BaseDirectionalLight()
Definition: BaseLight.hh:159
Definition: BaseLight.hh:85
virtual void SetDirection(double _x, double _y, double _z)
Set the direction of the light.
Definition: BaseLight.hh:204
virtual ~BaseSpotLight()
Definition: BaseLight.hh:198
Represents a light source in the scene graph.
Definition: Light.hh:29
Represents a spotlight.
Definition: Light.hh:142
Represents a infinite directional light.
Definition: Light.hh:110
BasePointLight()
Definition: BaseLight.hh:180
Definition: BaseLight.hh:59
virtual void SetSpecularColor(double _r, double _g, double _b, double _a=1.0)
Set the specular color.
Definition: BaseLight.hh:132
virtual void SetInnerAngle(double _radians)
Set the inner angle of the spotlight.
Definition: BaseLight.hh:211
BaseDirectionalLight()
Definition: BaseLight.hh:153
virtual void Reset()
Definition: BaseLight.hh:172
Definition: ArrowVisual.hh:22
virtual void SetDiffuseColor(double _r, double _g, double _b, double _a=1.0)
Set the diffuse color.
Definition: BaseLight.hh:124
virtual void Reset()
Definition: BaseLight.hh:140