#include <montecarlo.h>
Public Member Functions | |
Distribution2D (const float *data, int nu, int nv) | |
~Distribution2D () | |
void | SampleContinuous (float u0, float u1, float uv[2], float *pdf) const |
float | Pdf (float u, float v) const |
Private Attributes | |
vector< Distribution1D * > | pConditionalV |
Distribution1D * | pMarginal |
Definition at line 128 of file montecarlo.h.
Distribution2D::Distribution2D | ( | const float * | data, | |
int | nu, | |||
int | nv | |||
) |
Definition at line 350 of file montecarlo.cpp.
References pConditionalV, and pMarginal.
Distribution2D::~Distribution2D | ( | ) |
Definition at line 365 of file montecarlo.cpp.
References pConditionalV, and pMarginal.
float Distribution2D::Pdf | ( | float | u, | |
float | v | |||
) | const [inline] |
Definition at line 140 of file montecarlo.h.
References Clamp(), Distribution1D::count, Float2Int(), Distribution1D::func, Distribution1D::funcInt, pConditionalV, and pMarginal.
Referenced by InfiniteAreaLight::Pdf().
void Distribution2D::SampleContinuous | ( | float | u0, | |
float | u1, | |||
float | uv[2], | |||
float * | ||||
) | const [inline] |
Definition at line 132 of file montecarlo.h.
References pConditionalV, pMarginal, and Distribution1D::SampleContinuous().
Referenced by InfiniteAreaLight::Sample_L().
vector<Distribution1D *> Distribution2D::pConditionalV [private] |
Definition at line 151 of file montecarlo.h.
Referenced by Distribution2D(), Pdf(), SampleContinuous(), and ~Distribution2D().
Distribution1D* Distribution2D::pMarginal [private] |
Definition at line 152 of file montecarlo.h.
Referenced by Distribution2D(), Pdf(), SampleContinuous(), and ~Distribution2D().