rcrt::Photon Class Reference

#include <Photon.h>

Collaboration diagram for rcrt::Photon:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 Photon (const float &w=1)
 Photon (const RGBColor &pow, const Vec3D &dir, const Point3D &pos, const int &b=0, const float &weight=1)
virtual ~Photon ()
void setWeight (const float &w)
const float & getWeight () const
void setPos (const Point3D &pos)
const Point3DgetPos () const
void setPower (const RGBColor &pow)
const RGBColorgetPower () const
void scalePower (const RGBColor &fac)
void scalePower (const float &fac)
void setDir (const Vec3D &vec)
const Vec3DgetDir () const
void addBounce ()
const int & getBounces ()
void setBounces (const int &i)

Private Attributes

RGBColor power
Vec3D direction
Point3D position
float weight
int bounces


Detailed Description

Definition at line 20 of file Photon.h.


Constructor & Destructor Documentation

rcrt::Photon::Photon ( const float &  w = 1  ) 

Definition at line 6 of file Photon.cpp.

rcrt::Photon::Photon ( const RGBColor pow,
const Vec3D dir,
const Point3D pos,
const int &  b = 0,
const float &  weight = 1 
)

Definition at line 10 of file Photon.cpp.

rcrt::Photon::~Photon (  )  [virtual]

Definition at line 15 of file Photon.cpp.


Member Function Documentation

void rcrt::Photon::setWeight ( const float &  w  )  [inline]

Definition at line 34 of file Photon.h.

References weight.

Referenced by rcrt::PhotonMap::generate().

const float& rcrt::Photon::getWeight (  )  const [inline]

Definition at line 39 of file Photon.h.

References weight.

Referenced by rcrt::PhotonMap::getRadiance().

void rcrt::Photon::setPos ( const Point3D pos  )  [inline]

Definition at line 44 of file Photon.h.

References position.

Referenced by rcrt::PointLight::emitPhoton(), rcrt::AreaLight::emitPhoton(), rcrt::WoodMaterial::scatterPhoton(), rcrt::MirrorMaterial::scatterPhoton(), rcrt::ImageMaterial::scatterPhoton(), rcrt::DielectricMaterial::scatterPhoton(), and rcrt::BSDFMaterial::scatterPhoton().

const Point3D& rcrt::Photon::getPos (  )  const [inline]

Definition at line 49 of file Photon.h.

References position.

Referenced by rcrt::PhotonMap::generateJob(), rcrt::PKDNode::getKNearest(), rcrt::PKDNode::PKDNode(), and rcrt::PhotonKDTree::splitPlaneCompare().

void rcrt::Photon::setPower ( const RGBColor pow  )  [inline]

Definition at line 54 of file Photon.h.

References power.

Referenced by rcrt::PointLight::emitPhoton(), rcrt::AreaLight::emitPhoton(), rcrt::PhotonMap::generateJob(), and rcrt::DebugMaterial::scatterPhoton().

const RGBColor& rcrt::Photon::getPower (  )  const [inline]

Definition at line 59 of file Photon.h.

References power.

Referenced by rcrt::PhotonMap::generate(), rcrt::PhotonMap::generateJob(), rcrt::PhotonMap::getRadiance(), and rcrt::BSDFMaterial::scatterPhoton().

void rcrt::Photon::scalePower ( const RGBColor fac  )  [inline]

Definition at line 64 of file Photon.h.

References power.

Referenced by rcrt::WoodMaterial::scatterPhoton(), rcrt::MirrorMaterial::scatterPhoton(), rcrt::ImageMaterial::scatterPhoton(), rcrt::DielectricMaterial::scatterPhoton(), and rcrt::BSDFMaterial::scatterPhoton().

void rcrt::Photon::scalePower ( const float &  fac  )  [inline]

Definition at line 69 of file Photon.h.

References power.

void rcrt::Photon::setDir ( const Vec3D vec  )  [inline]

Definition at line 74 of file Photon.h.

References direction.

Referenced by rcrt::PointLight::emitPhoton(), rcrt::AreaLight::emitPhoton(), rcrt::PhotonMap::generateJob(), rcrt::WoodMaterial::scatterPhoton(), rcrt::MirrorMaterial::scatterPhoton(), rcrt::ImageMaterial::scatterPhoton(), rcrt::DielectricMaterial::scatterPhoton(), and rcrt::BSDFMaterial::scatterPhoton().

const Vec3D& rcrt::Photon::getDir (  )  const [inline]

Definition at line 79 of file Photon.h.

References direction.

Referenced by rcrt::AreaLight::emitPhoton(), rcrt::PhotonMap::generateJob(), rcrt::PhotonMap::getRadiance(), rcrt::MirrorMaterial::scatterPhoton(), rcrt::DielectricMaterial::scatterPhoton(), and rcrt::BSDFMaterial::scatterPhoton().

void rcrt::Photon::addBounce (  )  [inline]

Definition at line 84 of file Photon.h.

References bounces.

Referenced by rcrt::PhotonMap::generateJob().

const int& rcrt::Photon::getBounces (  )  [inline]

Definition at line 89 of file Photon.h.

References bounces.

Referenced by rcrt::PhotonMap::generateJob().

void rcrt::Photon::setBounces ( const int &  i  )  [inline]

Definition at line 94 of file Photon.h.

References bounces.


Member Data Documentation

RGBColor rcrt::Photon::power [private]

Definition at line 23 of file Photon.h.

Referenced by getPower(), scalePower(), and setPower().

Vec3D rcrt::Photon::direction [private]

Definition at line 24 of file Photon.h.

Referenced by getDir(), and setDir().

Point3D rcrt::Photon::position [private]

Definition at line 25 of file Photon.h.

Referenced by getPos(), and setPos().

float rcrt::Photon::weight [private]

Definition at line 26 of file Photon.h.

Referenced by getWeight(), and setWeight().

int rcrt::Photon::bounces [private]

Definition at line 27 of file Photon.h.

Referenced by addBounce(), getBounces(), and setBounces().


The documentation for this class was generated from the following files:
Generated on Thu Jan 31 19:32:22 2008 for RenderingCompetitionRayTracer by  doxygen 1.5.3