Blender V2.61 - r43446
Public Member Functions

GenericEmissiveClosure Class Reference

List of all members.

Public Member Functions

 GenericEmissiveClosure ()
void setup ()
size_t memsize () const
const char * name () const
void print_on (std::ostream &out) const
Color3 eval (const Vec3 &Ng, const Vec3 &omega_out) const
void sample (const Vec3 &Ng, float randu, float randv, Vec3 &omega_out, float &pdf) const
float pdf (const Vec3 &Ng, const Vec3 &omega_out) const

Detailed Description

Variable cone emissive closure

This primitive emits in a cone having a configurable penumbra area where the light decays to 0 reaching the outer_angle limit. It can also behave as a lambertian emitter if the provided angles are PI/2, which is the default

Definition at line 50 of file emissive.cpp.


Constructor & Destructor Documentation

GenericEmissiveClosure::GenericEmissiveClosure ( ) [inline]

Definition at line 52 of file emissive.cpp.


Member Function Documentation

Color3 GenericEmissiveClosure::eval ( const Vec3 &  Ng,
const Vec3 &  omega_out 
) const [inline]

Definition at line 64 of file emissive.cpp.

References fabsf.

size_t GenericEmissiveClosure::memsize ( ) const [inline]

Definition at line 56 of file emissive.cpp.

const char* GenericEmissiveClosure::name ( ) const [inline]

Definition at line 58 of file emissive.cpp.

float GenericEmissiveClosure::pdf ( const Vec3 &  Ng,
const Vec3 &  omega_out 
) const [inline]

Return the probability distribution function in the direction omega_out, given the parameters and the light's surface normal. This MUST match the PDF computed by sample().

Definition at line 90 of file emissive.cpp.

void GenericEmissiveClosure::print_on ( std::ostream &  out) const [inline]

Definition at line 60 of file emissive.cpp.

void GenericEmissiveClosure::sample ( const Vec3 &  Ng,
float  randu,
float  randv,
Vec3 &  omega_out,
float &  pdf 
) const [inline]

Definition at line 71 of file emissive.cpp.

References B, cosf, M_PI, make_orthonormals(), sinf, sqrtf, and T.

void GenericEmissiveClosure::setup ( ) [inline]

Definition at line 54 of file emissive.cpp.


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