#include "pbrt.h"
#include "geometry.h"
#include "shape.h"
#include "mc.h"
#include "volume.h"
Go to the source code of this file.
Functions | |
void | ComputeStep1dCDF (float *f, int nSteps, float *c, float *cdf) |
float | SampleStep1d (float *f, float *cdf, float c, int nSteps, float u, float *pdf) |
void | RejectionSampleDisk (float *x, float *y) |
COREDLL Vector | UniformSampleHemisphere (float u1, float u2) |
COREDLL float | UniformHemispherePdf (float theta, float phi) |
COREDLL Vector | UniformSampleSphere (float u1, float u2) |
COREDLL float | UniformSpherePdf () |
COREDLL void | UniformSampleDisk (float u1, float u2, float *x, float *y) |
COREDLL void | ConcentricSampleDisk (float u1, float u2, float *dx, float *dy) |
COREDLL void | UniformSampleTriangle (float u1, float u2, float *u, float *v) |
COREDLL float | UniformConePdf (float cosThetaMax) |
Vector | UniformSampleCone (float u1, float u2, float costhetamax) |
COREDLL Vector | UniformSampleCone (float u1, float u2, float costhetamax, const Vector &x, const Vector &y, const Vector &z) |
COREDLL Vector | SampleHG (const Vector &w, float g, float u1, float u2) |
COREDLL float | HGPdf (const Vector &w, const Vector &wp, float g) |
COREDLL void ComputeStep1dCDF | ( | float * | f, | |
int | nSteps, | |||
float * | c, | |||
float * | cdf | |||
) |
Definition at line 31 of file mc.cpp.
Referenced by Distribution1D::Distribution1D(), IGIIntegrator::Preprocess(), ExPhotonIntegrator::Preprocess(), and WeightedSampleOneLight().
COREDLL void ConcentricSampleDisk | ( | float | u1, | |
float | u2, | |||
float * | dx, | |||
float * | dy | |||
) |
Definition at line 91 of file mc.cpp.
References M_PI.
Referenced by CosineSampleHemisphere(), PerspectiveCamera::GenerateRay(), OrthoCamera::GenerateRay(), Disk::Sample(), InfiniteAreaLight::Sample_L(), and DistantLight::Sample_L().
void RejectionSampleDisk | ( | float * | x, | |
float * | y | |||
) |
Definition at line 161 of file mc.cpp.
References CoordinateSystem(), M_PI, and SphericalDirection().
COREDLL float SampleStep1d | ( | float * | f, | |
float * | cdf, | |||
float | c, | |||
int | nSteps, | |||
float | u, | |||
float * | ||||
) |
Definition at line 43 of file mc.cpp.
Referenced by IGIIntegrator::Preprocess(), ExPhotonIntegrator::Preprocess(), and WeightedSampleOneLight().
COREDLL float UniformConePdf | ( | float | cosThetaMax | ) |
Definition at line 141 of file mc.cpp.
References M_PI.
Referenced by ExPhotonIntegrator::Li(), Sphere::Pdf(), SpotLight::Sample_L(), and ProjectionLight::Sample_L().
COREDLL float UniformHemispherePdf | ( | float | theta, | |
float | phi | |||
) |
Vector UniformSampleCone | ( | float | u1, | |
float | u2, | |||
float | costhetamax | |||
) |
Definition at line 144 of file mc.cpp.
Referenced by ExPhotonIntegrator::Li(), Sphere::Sample(), SpotLight::Sample_L(), and ProjectionLight::Sample_L().
COREDLL void UniformSampleDisk | ( | float | u1, | |
float | u2, | |||
float * | x, | |||
float * | y | |||
) |
COREDLL Vector UniformSampleHemisphere | ( | float | u1, | |
float | u2 | |||
) |
COREDLL Vector UniformSampleSphere | ( | float | u1, | |
float | u2 | |||
) |
Definition at line 73 of file mc.cpp.
References M_PI.
Referenced by Sphere::Sample(), PointLight::Sample_L(), InfiniteAreaLightIS::Sample_L(), InfiniteAreaLight::Sample_L(), GonioPhotometricLight::Sample_L(), and AreaLight::Sample_L().
COREDLL void UniformSampleTriangle | ( | float | u1, | |
float | u2, | |||
float * | u, | |||
float * | v | |||
) |
COREDLL float UniformSpherePdf | ( | ) |
Definition at line 81 of file mc.cpp.
References M_PI.
Referenced by PointLight::Sample_L(), InfiniteAreaLight::Sample_L(), and GonioPhotometricLight::Sample_L().