17 #ifndef IGNITION_RENDERING_LIGHT_HH_ 18 #define IGNITION_RENDERING_LIGHT_HH_ 20 #include "ignition/math/Color.hh" 29 class IGNITION_RENDERING_VISIBLE
Light :
37 public:
virtual math::Color DiffuseColor()
const = 0;
44 public:
virtual void SetDiffuseColor(
double _r,
double _g,
double _b,
49 public:
virtual void SetDiffuseColor(
const math::Color &_color) = 0;
53 public:
virtual math::Color SpecularColor()
const = 0;
60 public:
virtual void SetSpecularColor(
double _r,
double _g,
double _b,
65 public:
virtual void SetSpecularColor(
const math::Color &_color) = 0;
69 public:
virtual double AttenuationConstant()
const = 0;
73 public:
virtual void SetAttenuationConstant(
double _value) = 0;
77 public:
virtual double AttenuationLinear()
const = 0;
81 public:
virtual void SetAttenuationLinear(
double _value) = 0;
85 public:
virtual double AttenuationQuadratic()
const = 0;
89 public:
virtual void SetAttenuationQuadratic(
double _value) = 0;
93 public:
virtual double AttenuationRange()
const = 0;
97 public:
virtual void SetAttenuationRange(
double _range) = 0;
101 public:
virtual bool CastShadows()
const = 0;
105 public:
virtual void SetCastShadows(
bool _castShadows) = 0;
118 public:
virtual math::Vector3d Direction()
const = 0;
124 public:
virtual void SetDirection(
double _x,
double _y,
double _z) = 0;
128 public:
virtual void SetDirection(
const math::Vector3d &_dir) = 0;
150 public:
virtual math::Vector3d Direction()
const = 0;
156 public:
virtual void SetDirection(
double _x,
double _y,
double _z) = 0;
160 public:
virtual void SetDirection(
const math::Vector3d &_dir) = 0;
164 public:
virtual math::Angle InnerAngle()
const = 0;
168 public:
virtual void SetInnerAngle(
double _radians) = 0;
172 public:
virtual void SetInnerAngle(
const math::Angle &_angle) = 0;
176 public:
virtual math::Angle OuterAngle()
const = 0;
180 public:
virtual void SetOuterAngle(
double _radians) = 0;
184 public:
virtual void SetOuterAngle(
const math::Angle &_angle) = 0;
188 public:
virtual double Falloff()
const = 0;
192 public:
virtual void SetFalloff(
double _falloff) = 0;
virtual ~Light()
Deconstructor.
Definition: Light.hh:33
virtual ~PointLight()
Deconstructor.
Definition: Light.hh:137
Represents a single posable node in the scene graph.
Definition: Node.hh:34
virtual ~SpotLight()
Deconstructor.
Definition: Light.hh:146
Represents a point light.
Definition: Light.hh:133
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
Definition: ArrowVisual.hh:22
virtual ~DirectionalLight()
Deconstructor.
Definition: Light.hh:114