PointLight Class Reference

Inheritance diagram for PointLight:

Light

List of all members.

Public Member Functions

 PointLight (const Transform &light2world, const Spectrum &intensity)
Spectrum Sample_L (const Point &p, Vector *wi, VisibilityTester *vis) const
Spectrum Power (const Scene *) const
bool IsDeltaLight () const
Spectrum Sample_L (const Point &P, float u1, float u2, Vector *wo, float *pdf, VisibilityTester *visibility) const
Spectrum Sample_L (const Scene *scene, float u1, float u2, float u3, float u4, Ray *ray, float *pdf) const
float Pdf (const Point &, const Vector &) const

Private Attributes

Point lightPos
Spectrum Intensity


Detailed Description

Definition at line 29 of file point.cpp.


Constructor & Destructor Documentation

PointLight::PointLight ( const Transform light2world,
const Spectrum intensity 
)

Definition at line 49 of file point.cpp.

References Intensity, lightPos, and Light::LightToWorld.

Referenced by CreateLight().


Member Function Documentation

Spectrum PointLight::Sample_L ( const Point p,
Vector wi,
VisibilityTester vis 
) const [virtual]

Implements Light.

Definition at line 55 of file point.cpp.

References DistanceSquared(), Intensity, lightPos, Normalize(), and VisibilityTester::SetSegment().

Referenced by Sample_L().

Spectrum PointLight::Power ( const Scene  )  const [inline, virtual]

Implements Light.

Definition at line 34 of file point.cpp.

References Intensity, and M_PI.

bool PointLight::IsDeltaLight (  )  const [inline, virtual]

Implements Light.

Definition at line 37 of file point.cpp.

Spectrum PointLight::Sample_L ( const Point P,
float  u1,
float  u2,
Vector wo,
float *  pdf,
VisibilityTester visibility 
) const [virtual]

Implements Light.

Definition at line 61 of file point.cpp.

References Sample_L().

Spectrum PointLight::Sample_L ( const Scene scene,
float  u1,
float  u2,
float  u3,
float  u4,
Ray ray,
float *  pdf 
) const [virtual]

Implements Light.

Definition at line 70 of file point.cpp.

References Ray::d, Intensity, lightPos, Ray::o, UniformSampleSphere(), and UniformSpherePdf().

float PointLight::Pdf ( const Point ,
const Vector  
) const [virtual]

Implements Light.

Definition at line 67 of file point.cpp.


Member Data Documentation

Definition at line 45 of file point.cpp.

Referenced by PointLight(), and Sample_L().

Definition at line 46 of file point.cpp.

Referenced by PointLight(), Power(), and Sample_L().


The documentation for this class was generated from the following file:

Generated on Mon Jul 20 17:31:55 2009 for pbrt by  doxygen 1.5.6