#include <sampling.h>
Classes | |
| class | Contribution |
Public Member Functions | |
| Sample (SurfaceIntegrator *surf, VolumeIntegrator *vol, const Scene *scene) | |
| u_int | Add1D (u_int num) |
| u_int | Add2D (u_int num) |
| u_int | AddxD (vector< u_int > &structure, u_int num) |
| void | AddContribution (float x, float y, const XYZColor &c, float a, int b=0, int g=0) const |
| void | AddContribution (float x, float y, const XYZColor &c, float a, float v, int b=0, int g=0) const |
| ~Sample () | |
Public Attributes | |
| Sampler * | sampler |
| SamplingType | sampling |
| float | imageX |
| float | imageY |
| float | lensU |
| float | lensV |
| float | time |
| float | wavelengths |
| float | singleWavelength |
| int | stamp |
| vector< u_int > | n1D |
| vector< u_int > | n2D |
| vector< u_int > | nxD |
| vector< u_int > | dxD |
| vector< vector< u_int > > | sxD |
| float ** | oneD |
| float ** | twoD |
| float ** | xD |
| int ** | timexD |
| vector< Contribution > | contributions |
Definition at line 43 of file sampling.h.
| Sample::Sample | ( | SurfaceIntegrator * | surf, | |
| VolumeIntegrator * | vol, | |||
| const Scene * | scene | |||
| ) |
Definition at line 67 of file sampling.cpp.
References lux::AllocAligned(), dxD, n1D, n2D, nxD, oneD, lux::Integrator::RequestSamples(), sampler, stamp, timexD, twoD, and xD.
| lux::Sample::~Sample | ( | ) | [inline] |
Definition at line 74 of file sampling.h.
References lux::FreeAligned(), oneD, and timexD.
Definition at line 49 of file sampling.h.
References n1D.
Referenced by lux::SingleScattering::RequestSamples(), lux::PhotonIntegrator::RequestSamples(), lux::MLTPathIntegrator::RequestSamples(), lux::IrradianceCache::RequestSamples(), lux::IGIIntegrator::RequestSamples(), lux::EmissionIntegrator::RequestSamples(), and lux::BidirIntegrator::RequestSamples().
Definition at line 53 of file sampling.h.
References n2D.
Referenced by lux::PhotonIntegrator::RequestSamples(), lux::MLTPathIntegrator::RequestSamples(), lux::IrradianceCache::RequestSamples(), lux::IGIIntegrator::RequestSamples(), and lux::BidirIntegrator::RequestSamples().
| void lux::Sample::AddContribution | ( | float | x, | |
| float | y, | |||
| const XYZColor & | c, | |||
| float | a, | |||
| float | v, | |||
| int | b = 0, |
|||
| int | g = 0 | |||
| ) | const [inline] |
Definition at line 70 of file sampling.h.
References contributions, and blender::g.
| void lux::Sample::AddContribution | ( | float | x, | |
| float | y, | |||
| const XYZColor & | c, | |||
| float | a, | |||
| int | b = 0, |
|||
| int | g = 0 | |||
| ) | const [inline] |
Definition at line 66 of file sampling.h.
References contributions, and blender::g.
Referenced by lux::MetropolisSampler::AddSample(), lux::ERPTSampler::AddSample(), lux::Path2Integrator::Li(), lux::PathIntegrator::Li(), lux::ParticleTracingIntegrator::Li(), lux::ExPhotonIntegrator::Li(), lux::DirectLighting::Li(), and lux::BidirIntegrator::Li().
Definition at line 57 of file sampling.h.
Referenced by lux::Path2Integrator::RequestSamples(), lux::PathIntegrator::RequestSamples(), lux::ParticleTracingIntegrator::RequestSamples(), lux::ExPhotonIntegrator::RequestSamples(), lux::DirectLighting::RequestSamples(), and lux::BidirIntegrator::RequestSamples().
vector<Contribution> lux::Sample::contributions [mutable] |
Definition at line 114 of file sampling.h.
Referenced by AddContribution(), lux::Sampler::AddSample(), lux::MetropolisSampler::AddSample(), lux::ERPTSampler::AddSample(), and lux::Sampler::SampleBegin().
| vector<u_int> lux::Sample::dxD |
Definition at line 110 of file sampling.h.
Referenced by AddxD(), lux::Sampler::GetLazyValues(), lux::RandomSampler::GetLazyValues(), lux::MetropolisSampler::GetLazyValues(), lux::LDSampler::GetLazyValues(), lux::HaltonSampler::GetLazyValues(), lux::ERPTSampler::GetLazyValues(), lux::LDSampler::GetNextSample(), lux::HaltonSampler::GetNextSample(), initERPT(), initMetropolis(), and Sample().
| float lux::Sample::imageX |
Definition at line 104 of file sampling.h.
Referenced by lux::MetropolisSampler::AddSample(), lux::ERPTSampler::AddSample(), lux::RealisticCamera::GenerateRay(), lux::PerspectiveCamera::GenerateRay(), lux::OrthoCamera::GenerateRay(), lux::EnvironmentCamera::GenerateRay(), lux::EnvironmentCamera::GenerateSample(), lux::ProjectiveCamera::GenerateSample(), lux::RandomSampler::GetNextSample(), lux::MetropolisSampler::GetNextSample(), lux::Metropolis::GetNextSample(), lux::LDSampler::GetNextSample(), lux::HaltonSampler::GetNextSample(), lux::ERPTSampler::GetNextSample(), lux::Path2Integrator::Li(), lux::PathIntegrator::Li(), lux::ParticleTracingIntegrator::Li(), lux::ExPhotonIntegrator::Li(), lux::DirectLighting::Li(), lux::BidirIntegrator::Li(), and lux::RenderThread::render().
| float lux::Sample::imageY |
Definition at line 104 of file sampling.h.
Referenced by lux::MetropolisSampler::AddSample(), lux::ERPTSampler::AddSample(), lux::RealisticCamera::GenerateRay(), lux::PerspectiveCamera::GenerateRay(), lux::OrthoCamera::GenerateRay(), lux::EnvironmentCamera::GenerateRay(), lux::EnvironmentCamera::GenerateSample(), lux::ProjectiveCamera::GenerateSample(), lux::RandomSampler::GetNextSample(), lux::MetropolisSampler::GetNextSample(), lux::Metropolis::GetNextSample(), lux::LDSampler::GetNextSample(), lux::HaltonSampler::GetNextSample(), lux::ERPTSampler::GetNextSample(), lux::Path2Integrator::Li(), lux::PathIntegrator::Li(), lux::ParticleTracingIntegrator::Li(), lux::ExPhotonIntegrator::Li(), lux::DirectLighting::Li(), lux::BidirIntegrator::Li(), and lux::RenderThread::render().
| float lux::Sample::lensU |
Definition at line 105 of file sampling.h.
Referenced by lux::MetropolisSampler::AddSample(), lux::ERPTSampler::AddSample(), lux::RealisticCamera::GenerateRay(), lux::PerspectiveCamera::GenerateRay(), lux::OrthoCamera::GenerateRay(), lux::RandomSampler::GetNextSample(), lux::MetropolisSampler::GetNextSample(), lux::Metropolis::GetNextSample(), lux::LDSampler::GetNextSample(), lux::HaltonSampler::GetNextSample(), lux::ERPTSampler::GetNextSample(), lux::Path2Integrator::Li(), and lux::ParticleTracingIntegrator::Li().
| float lux::Sample::lensV |
Definition at line 105 of file sampling.h.
Referenced by lux::MetropolisSampler::AddSample(), lux::ERPTSampler::AddSample(), lux::RealisticCamera::GenerateRay(), lux::PerspectiveCamera::GenerateRay(), lux::OrthoCamera::GenerateRay(), lux::RandomSampler::GetNextSample(), lux::MetropolisSampler::GetNextSample(), lux::Metropolis::GetNextSample(), lux::LDSampler::GetNextSample(), lux::HaltonSampler::GetNextSample(), lux::ERPTSampler::GetNextSample(), lux::Path2Integrator::Li(), and lux::ParticleTracingIntegrator::Li().
| vector<u_int> lux::Sample::n1D |
Definition at line 110 of file sampling.h.
Referenced by Add1D(), lux::RandomSampler::GetNextSample(), lux::LDSampler::GetNextSample(), lux::HaltonSampler::GetNextSample(), initERPT(), initMetropolis(), and Sample().
| vector<u_int> lux::Sample::n2D |
Definition at line 110 of file sampling.h.
Referenced by Add2D(), lux::RandomSampler::GetNextSample(), lux::LDSampler::GetNextSample(), lux::HaltonSampler::GetNextSample(), initERPT(), initMetropolis(), and Sample().
| vector<u_int> lux::Sample::nxD |
Definition at line 110 of file sampling.h.
Referenced by AddxD(), lux::LDSampler::GetLazyValues(), lux::HaltonSampler::GetLazyValues(), lux::LDSampler::GetNextSample(), lux::HaltonSampler::GetNextSample(), initERPT(), initMetropolis(), and Sample().
| float** lux::Sample::oneD |
Definition at line 112 of file sampling.h.
Referenced by lux::MetropolisSampler::AddSample(), lux::ERPTSampler::AddSample(), lux::BidirIntegrator::generatePath(), lux::RandomSampler::GetNextSample(), lux::MetropolisSampler::GetNextSample(), lux::LDSampler::GetNextSample(), lux::HaltonSampler::GetNextSample(), lux::ERPTSampler::GetNextSample(), lux::SingleScattering::Li(), lux::PhotonIntegrator::Li(), lux::MLTPathIntegrator::Li(), lux::IGIIntegrator::Li(), lux::EmissionIntegrator::Li(), lux::BidirIntegrator::Li(), Sample(), lux::SingleScattering::Transmittance(), lux::EmissionIntegrator::Transmittance(), and ~Sample().
Definition at line 101 of file sampling.h.
Referenced by generateLightPath(), lux::BidirIntegrator::generatePath(), lux::RandomSampler::GetNextSample(), lux::MetropolisSampler::GetNextSample(), lux::LDSampler::GetNextSample(), lux::HaltonSampler::GetNextSample(), lux::ERPTSampler::GetNextSample(), lux::Path2Integrator::Li(), lux::PathIntegrator::Li(), lux::ParticleTracingIntegrator::Li(), lux::ExPhotonIntegrator::Li(), lux::DirectLighting::Li(), lux::BidirIntegrator::Li(), lux::ExPhotonIntegrator::LiInternal(), lux::DirectLighting::LiInternal(), and Sample().
Definition at line 102 of file sampling.h.
Definition at line 107 of file sampling.h.
Referenced by lux::MetropolisSampler::AddSample(), lux::ERPTSampler::AddSample(), lux::RandomSampler::GetNextSample(), lux::MetropolisSampler::GetNextSample(), lux::LDSampler::GetNextSample(), lux::HaltonSampler::GetNextSample(), lux::ERPTSampler::GetNextSample(), and lux::RenderThread::render().
int lux::Sample::stamp [mutable] |
Definition at line 109 of file sampling.h.
Referenced by lux::MetropolisSampler::AddSample(), lux::ERPTSampler::AddSample(), lux::MetropolisSampler::GetLazyValues(), lux::ERPTSampler::GetLazyValues(), lux::MetropolisSampler::GetNextSample(), lux::ERPTSampler::GetNextSample(), and Sample().
| vector<vector<u_int> > lux::Sample::sxD |
Definition at line 111 of file sampling.h.
Referenced by AddxD(), lux::LDSampler::GetLazyValues(), lux::HaltonSampler::GetLazyValues(), lux::LDSampler::GetNextSample(), and lux::HaltonSampler::GetNextSample().
| float lux::Sample::time |
Definition at line 106 of file sampling.h.
Referenced by lux::MetropolisSampler::AddSample(), lux::ERPTSampler::AddSample(), lux::RealisticCamera::GenerateRay(), lux::PerspectiveCamera::GenerateRay(), lux::OrthoCamera::GenerateRay(), lux::EnvironmentCamera::GenerateRay(), lux::RandomSampler::GetNextSample(), lux::MetropolisSampler::GetNextSample(), lux::Metropolis::GetNextSample(), lux::LDSampler::GetNextSample(), lux::HaltonSampler::GetNextSample(), and lux::ERPTSampler::GetNextSample().
| int** lux::Sample::timexD |
Definition at line 113 of file sampling.h.
Referenced by lux::MetropolisSampler::AddSample(), lux::ERPTSampler::AddSample(), lux::MetropolisSampler::GetLazyValues(), lux::ERPTSampler::GetLazyValues(), lux::MetropolisSampler::GetNextSample(), lux::ERPTSampler::GetNextSample(), Sample(), and ~Sample().
| float ** lux::Sample::twoD |
Definition at line 112 of file sampling.h.
Referenced by lux::BidirIntegrator::generatePath(), lux::RandomSampler::GetNextSample(), lux::LDSampler::GetNextSample(), lux::HaltonSampler::GetNextSample(), lux::PhotonIntegrator::Li(), lux::MLTPathIntegrator::Li(), lux::BidirIntegrator::Li(), and Sample().
| float lux::Sample::wavelengths |
Definition at line 107 of file sampling.h.
Referenced by lux::MetropolisSampler::AddSample(), lux::ERPTSampler::AddSample(), lux::RandomSampler::GetNextSample(), lux::MetropolisSampler::GetNextSample(), lux::LDSampler::GetNextSample(), lux::HaltonSampler::GetNextSample(), lux::ERPTSampler::GetNextSample(), and lux::RenderThread::render().
| float ** lux::Sample::xD |
Definition at line 112 of file sampling.h.
Referenced by lux::Sampler::GetLazyValues(), lux::RandomSampler::GetLazyValues(), lux::MetropolisSampler::GetLazyValues(), lux::LDSampler::GetLazyValues(), lux::HaltonSampler::GetLazyValues(), lux::ERPTSampler::GetLazyValues(), and Sample().
1.6.1