9 #include "imstkColor.h" 10 #include "imstkEntity.h" 11 #include "imstkMath.h" 28 ~
Light()
override =
default;
35 const Vec3d& getFocalPoint()
const {
return m_focalPoint; }
41 bool isOn()
const {
return m_switchState; }
71 void setIntensity(
const double intensity) { m_intensity = intensity; }
84 const Vec3d& getAttenuationValues()
const {
return m_attenuation; }
88 double m_intensity = 1.0;
90 bool m_switchState =
true;
91 Vec3d m_focalPoint = Vec3d::Zero();
double getIntensity() const
Get the light intensity.
void setColor(const Color &c)
Set the light color.
void setAttenuationValues(const double a, const double b, const double c)
Sets the attenuation values. Quadratic, linear, and constant c (ax^2+bx+c) (a,b,c) = {0...
const Color & getColor() const
Get the light color.
void setIntensity(const double intensity)
Set the light intensity. This value is unbounded.
void switchOff()
Switch the light Off.
void switchOn()
Switch the light On.
Vec3d m_attenuation
c, b, a (ax^2+bx+c)
Top-level class for entities. Entities contain a collection of components which define how to be used...
static Color White
Various commonly used colors.
void setFocalPoint(const Vec3d &p)
Get/Set the light focal point.
bool isOn() const
Get the status (On/off) of the light.
Abstract base class for lights.