InfiniteAreaLightIS Class Reference

Inheritance diagram for InfiniteAreaLightIS:

Light

List of all members.

Public Member Functions

 InfiniteAreaLightIS (const Transform &light2world, const Spectrum &power, int ns, const string &texmap)
 ~InfiniteAreaLightIS ()
Spectrum Power (const Scene *scene) const
bool IsDeltaLight () const
Spectrum Le (const RayDifferential &r) const
Spectrum Sample_L (const Point &p, float u1, float u2, Vector *wi, 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
Spectrum Sample_L (const Point &P, Vector *w, VisibilityTester *visibility) const

Private Attributes

Spectrum Lbase
MIPMap< Spectrum > * radianceMap
Distribution1DuDistrib
Distribution1D ** vDistribs


Detailed Description

Definition at line 58 of file infinitesample.cpp.


Constructor & Destructor Documentation

InfiniteAreaLightIS::InfiniteAreaLightIS ( const Transform light2world,
const Spectrum power,
int  ns,
const string &  texmap 
)

Definition at line 93 of file infinitesample.cpp.

References Lbase, MIPMap< T >::Lookup(), M_PI, radianceMap, ReadImage(), uDistrib, vDistribs, and Spectrum::y().

Referenced by CreateLight().

InfiniteAreaLightIS::~InfiniteAreaLightIS (  ) 

Definition at line 89 of file infinitesample.cpp.

References radianceMap.


Member Function Documentation

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

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

Implements Light.

Definition at line 72 of file infinitesample.cpp.

Spectrum InfiniteAreaLightIS::Le ( const RayDifferential r  )  const [virtual]

Reimplemented from Light.

Definition at line 139 of file infinitesample.cpp.

References Ray::d, INV_PI, INV_TWOPI, Lbase, MIPMap< T >::Lookup(), Normalize(), radianceMap, SphericalPhi(), SphericalTheta(), and Light::WorldToLight.

Referenced by Sample_L().

Spectrum InfiniteAreaLightIS::Sample_L ( const Point p,
float  u1,
float  u2,
Vector wi,
float *  pdf,
VisibilityTester visibility 
) const [virtual]

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

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

Spectrum InfiniteAreaLightIS::Sample_L ( const Point P,
Vector w,
VisibilityTester visibility 
) const [virtual]

Implements Light.

Definition at line 208 of file infinitesample.cpp.

References RandomFloat(), and Sample_L().


Member Data Documentation

Definition at line 83 of file infinitesample.cpp.

Referenced by InfiniteAreaLightIS(), Le(), Power(), and Sample_L().

Definition at line 84 of file infinitesample.cpp.

Referenced by InfiniteAreaLightIS(), Le(), Power(), Sample_L(), and ~InfiniteAreaLightIS().

Definition at line 85 of file infinitesample.cpp.

Referenced by InfiniteAreaLightIS(), Pdf(), and Sample_L().

Definition at line 85 of file infinitesample.cpp.

Referenced by InfiniteAreaLightIS(), Pdf(), 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