lux::WardIsotropic Class Reference

#include <wardisotropic.h>

Inheritance diagram for lux::WardIsotropic:

lux::MicrofacetDistribution

List of all members.

Public Member Functions

 WardIsotropic (float rms)
float D (const Vector &wh) const
virtual void Sample_f (const Vector &wi, Vector *sampled_f, float u1, float u2, float *pdf) const
virtual float Pdf (const Vector &wi, const Vector &wo) const

Private Attributes

float r


Detailed Description

Definition at line 35 of file wardisotropic.h.


Constructor & Destructor Documentation

WardIsotropic::WardIsotropic ( float  rms  ) 

Definition at line 35 of file wardisotropic.cpp.

References r.


Member Function Documentation

float WardIsotropic::D ( const Vector wh  )  const [virtual]

Implements lux::MicrofacetDistribution.

Definition at line 39 of file wardisotropic.cpp.

References cimg_library::acos(), lux::CosTheta(), cimg_library::exp(), M_PI, r, and cimg_library::tan().

Referenced by Pdf(), and Sample_f().

float WardIsotropic::Pdf ( const Vector wi,
const Vector wo 
) const [virtual]

Implements lux::MicrofacetDistribution.

Definition at line 73 of file wardisotropic.cpp.

References D(), lux::Dot(), and lux::Normalize().

void WardIsotropic::Sample_f ( const Vector wi,
Vector sampled_f,
float  u1,
float  u2,
float *  pdf 
) const [virtual]


Member Data Documentation

float lux::WardIsotropic::r [private]

Definition at line 47 of file wardisotropic.h.

Referenced by D(), Sample_f(), and WardIsotropic().


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

Generated on Fri Jul 24 11:52:03 2009 for lux by  doxygen 1.5.9