Fermat
Classes | Public Types | Public Methods | Public Members | List of all members
cugar::MJSampler Struct Reference

Detailed description

Multi-Jittered Sampler

#include <multijitter.h>

Classes

struct  Sample
 

Public Types

enum  Ordering { kXY, kRandom }
 

Public Methods

 MJSampler (const uint32 seed=0)
 
template<typename T >
void sample (const uint32 samples_x, const uint32 samples_y, Vector< T, 2 > *samples, Ordering ordering=kRandom)
 
template<typename T >
void sample (const uint32 samples_x, const uint32 samples_y, Vector< T, 3 > *samples)
 
template<typename T >
void sample (const uint32 samples_x, const uint32 samples_y, Vector< T, 4 > *samples, Ordering ordering=kRandom)
 

Public Members

std::vector< Samplem_sample_xy
 
Random m_random
 

Constructor & Destructor Documentation

◆ MJSampler()

cugar::MJSampler::MJSampler ( const uint32  seed = 0)
inline

constructor

Member Function Documentation

◆ sample() [1/3]

template<typename T >
void cugar::MJSampler::sample ( const uint32  samples_x,
const uint32  samples_y,
Vector< T, 2 > *  samples,
Ordering  ordering = kRandom 
)

get a set of 2d stratified samples

◆ sample() [2/3]

template<typename T >
void cugar::MJSampler::sample ( const uint32  samples_x,
const uint32  samples_y,
Vector< T, 3 > *  samples 
)

get a set of 3d stratified samples the first 2 dimensions are multi-jittered, the third one is selected with latin hypercube sampliing wrt the first 2.

◆ sample() [3/3]

template<typename T >
void cugar::MJSampler::sample ( const uint32  samples_x,
const uint32  samples_y,
Vector< T, 4 > *  samples,
Ordering  ordering = kRandom 
)

get a set of 4d stratified samples


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