From 12f180a3dea0a3be68820f8e83af039471924c64 Mon Sep 17 00:00:00 2001 From: Eryn Wells Date: Sun, 20 Jul 2014 16:51:20 -0700 Subject: [PATCH] Light implements its own origin --- src/light.cc | 17 ++++++++++++++++- src/light.h | 11 ++++++++--- 2 files changed, 24 insertions(+), 4 deletions(-) diff --git a/src/light.cc b/src/light.cc index 6347917..9cdd977 100644 --- a/src/light.cc +++ b/src/light.cc @@ -93,5 +93,20 @@ PointLight::PointLight(const Vector3 &o, const Color &c, const float &i) : AmbientLight(c, i), - Object(o) + mOrigin(o) { } + + +const Vector3& +PointLight::GetOrigin() + const +{ + return mOrigin; +} + + +void +PointLight::SetOrigin(const Vector3& origin) +{ + mOrigin = origin; +} diff --git a/src/light.h b/src/light.h index 236c593..0749a0a 100644 --- a/src/light.h +++ b/src/light.h @@ -9,7 +9,6 @@ #define __LIGHT_H__ #include "basics.h" -#include "object.h" class AmbientLight @@ -35,14 +34,20 @@ private: class PointLight - : public AmbientLight, - public Object + : public AmbientLight { public: PointLight(); + PointLight(const Vector3 &o); PointLight(const Vector3 &o, const Color &c); PointLight(const Vector3 &o, const Color &c, const float &i); + + const Vector3& GetOrigin() const; + void SetOrigin(const Vector3& origin); + +private: + Vector3 mOrigin; }; #endif