src/rcrt/lights/DirLight.h

Go to the documentation of this file.
00001 #ifndef DIRLIGHT_H_
00002 #define DIRLIGHT_H_
00003 
00004 #include "Light.h"
00005 #include "../math/rcrtmath.h"
00006 
00007 namespace rcrt
00008 {
00009 
00010 class DirLight : public rcrt::Light
00011 {
00012 private:
00013         Vec3D direction;
00014         
00015 public:
00016         DirLight(const RGBColor& p, const Vec3D& dir);
00017         virtual ~DirLight();
00018         
00019         const Vec3D& getDirection() const;
00020         virtual LightSample illuminate(const Point3D& p, const Vec3D& no) const;
00021         virtual void illuminate(const Point3D& p, const Vec3D& no, std::vector<LightSample>& samples,
00022                         const int& noSamples, Scene* s) const;
00023         virtual RGBColor getEmitted(const Vec3D& dir, const Point3D& pos) const;
00024         
00025         virtual void emitPhoton(Photon* photon) const;
00026         
00027 };
00028 
00029 }
00030 
00031 #endif /*DIRLIGHT_H_*/

Generated on Thu Jan 31 19:26:19 2008 for RenderingCompetitionRayTracer by  doxygen 1.5.3