lux::InfiniteAreaLightIS Class Reference

#include <infinitesample.h>

Inheritance diagram for lux::InfiniteAreaLightIS:
[legend]
Collaboration diagram for lux::InfiniteAreaLightIS:
[legend]

List of all members.

Public Member Functions

 InfiniteAreaLightIS (const Transform &light2world, const RGBColor &power, int ns, const string &texmap)
virtual ~InfiniteAreaLightIS ()
virtual SWCSpectrum Power (const TsPack *tspack, const Scene *scene) const
virtual bool IsDeltaLight () const
virtual bool IsEnvironmental () const
virtual SWCSpectrum Le (const TsPack *tspack, const RayDifferential &r) const
virtual SWCSpectrum Sample_L (const TsPack *tspack, const Point &p, float u1, float u2, float u3, Vector *wi, float *pdf, VisibilityTester *visibility) const
virtual SWCSpectrum Sample_L (const TsPack *tspack, const Scene *scene, float u1, float u2, float u3, float u4, Ray *ray, float *pdf) const
virtual float Pdf (const Point &, const Vector &) const
virtual float Pdf (const Point &p, const Normal &n, const Point &po, const Normal &ns) const

Static Public Member Functions

static LightCreateLight (const Transform &light2world, const ParamSet &paramSet, const TextureParams &tp)

Private Attributes

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

Detailed Description

Definition at line 34 of file infinitesample.h.


Constructor & Destructor Documentation

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

Definition at line 39 of file infinitesample.cpp.

References M_PI, cimg_library::cimg::max(), lux::ReadImage(), and cimg_library::sin().

Referenced by CreateLight().

InfiniteAreaLightIS::~InfiniteAreaLightIS (  )  [virtual]

Definition at line 35 of file infinitesample.cpp.

References radianceMap.


Member Function Documentation

Light * InfiniteAreaLightIS::CreateLight ( const Transform light2world,
const ParamSet paramSet,
const TextureParams tp 
) [static]
virtual bool lux::InfiniteAreaLightIS::IsDeltaLight (  )  const [inline, virtual]

Implements lux::Light.

Definition at line 48 of file infinitesample.h.

virtual bool lux::InfiniteAreaLightIS::IsEnvironmental (  )  const [inline, virtual]

Implements lux::Light.

Definition at line 49 of file infinitesample.h.

SWCSpectrum InfiniteAreaLightIS::Le ( const TsPack tspack,
const RayDifferential r 
) const [virtual]
float InfiniteAreaLightIS::Pdf ( const Point p,
const Normal n,
const Point po,
const Normal ns 
) const [virtual]
float InfiniteAreaLightIS::Pdf ( const Point ,
const Vector w 
) const [virtual]
virtual SWCSpectrum lux::InfiniteAreaLightIS::Power ( const TsPack tspack,
const Scene scene 
) const [inline, virtual]
SWCSpectrum InfiniteAreaLightIS::Sample_L ( const TsPack tspack,
const Scene scene,
float  u1,
float  u2,
float  u3,
float  u4,
Ray ray,
float *  pdf 
) const [virtual]
SWCSpectrum InfiniteAreaLightIS::Sample_L ( const TsPack tspack,
const Point p,
float  u1,
float  u2,
float  u3,
Vector wi,
float *  pdf,
VisibilityTester visibility 
) const [virtual]

Member Data Documentation

Definition at line 64 of file infinitesample.h.

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

Definition at line 65 of file infinitesample.h.

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

Definition at line 66 of file infinitesample.h.

Referenced by Pdf(), and Sample_L().

Definition at line 66 of file infinitesample.h.

Referenced by Pdf(), and Sample_L().


The documentation for this class was generated from the following files:
Generated by  doxygen 1.6.2-20100208