#include "pbrt.h"
#include "geometry.h"
Go to the source code of this file.
Classes | |
class | Sampler |
struct | Sample |
class | Filter |
Functions | |
COREDLL void | StratifiedSample1D (float *samples, int nsamples, bool jitter=true) |
COREDLL void | StratifiedSample2D (float *samples, int nx, int ny, bool jitter=true) |
COREDLL void | Shuffle (float *samp, int count, int dims) |
COREDLL void | LatinHypercube (float *samples, int nSamples, int nDim) |
double | RadicalInverse (int n, int base) |
double | FoldedRadicalInverse (int n, int base) |
float | VanDerCorput (u_int n, u_int scramble=0) |
float | Sobol2 (u_int n, u_int scramble=0) |
float | LarcherPillichshammer2 (u_int n, u_int scramble=0) |
void | Sample02 (u_int n, u_int scramble[2], float sample[2]) |
void | LDShuffleScrambled1D (int nSamples, int nPixel, float *samples) |
void | LDShuffleScrambled2D (int nSamples, int nPixel, float *samples) |
double FoldedRadicalInverse | ( | int | n, | |
int | base | |||
) | [inline] |
Definition at line 95 of file sampling.h.
Definition at line 152 of file sampling.h.
COREDLL void LatinHypercube | ( | float * | samples, | |
int | nSamples, | |||
int | nDim | |||
) |
Definition at line 98 of file sampling.cpp.
References RandomFloat(), and RandomUInt().
Referenced by StratifiedSampler::GetNextSample(), SingleScattering::Li(), and BxDF::rho().
void LDShuffleScrambled1D | ( | int | nSamples, | |
int | nPixel, | |||
float * | samples | |||
) | [inline] |
Definition at line 157 of file sampling.h.
References RandomUInt(), Shuffle(), and VanDerCorput().
Referenced by LDSampler::GetNextSample(), BestCandidateSampler::GetNextSample(), and IGIIntegrator::Preprocess().
void LDShuffleScrambled2D | ( | int | nSamples, | |
int | nPixel, | |||
float * | samples | |||
) | [inline] |
Definition at line 166 of file sampling.h.
References RandomUInt(), Sample02(), and Shuffle().
Referenced by LDSampler::GetNextSample(), BestCandidateSampler::GetNextSample(), and IGIIntegrator::Preprocess().
double RadicalInverse | ( | int | n, | |
int | base | |||
) | [inline] |
Definition at line 83 of file sampling.h.
Referenced by PhotonIntegrator::Preprocess(), and ExPhotonIntegrator::Preprocess().
Definition at line 132 of file sampling.h.
References Sobol2(), and VanDerCorput().
Referenced by IrradianceCache::IndirectLo(), and LDShuffleScrambled2D().
COREDLL void Shuffle | ( | float * | samp, | |
int | count, | |||
int | dims | |||
) |
Definition at line 91 of file sampling.cpp.
References RandomUInt().
Referenced by StratifiedSampler::GetNextSample(), LDShuffleScrambled1D(), LDShuffleScrambled2D(), and StratifiedSampler::StratifiedSampler().
COREDLL void StratifiedSample1D | ( | float * | samples, | |
int | nsamples, | |||
bool | jitter = true | |||
) |
Definition at line 72 of file sampling.cpp.
References RandomFloat().
Referenced by StratifiedSampler::GetNextSample(), BestCandidateSampler::GetNextSample(), and StratifiedSampler::StratifiedSampler().
COREDLL void StratifiedSample2D | ( | float * | samples, | |
int | nx, | |||
int | ny, | |||
bool | jitter = true | |||
) |
Definition at line 80 of file sampling.cpp.
References RandomFloat().
Referenced by Checkerboard3D< T >::Evaluate(), Checkerboard2D< T >::Evaluate(), StratifiedSampler::GetNextSample(), BestCandidateSampler::GetNextSample(), and StratifiedSampler::StratifiedSampler().