#include <goniometric.h>
Public Member Functions | |
| GonioPhotometricLight (const Transform &light2world, const Spectrum &, const string &texname) | |
| SWCSpectrum | Sample_L (const Point &p, Vector *wi, VisibilityTester *vis) const |
| ~GonioPhotometricLight () | |
| bool | IsDeltaLight () const |
| Spectrum | Scale (const Vector &w) const |
| SWCSpectrum | Power (const Scene *) const |
| SWCSpectrum | Sample_L (const Point &P, float u1, float u2, float u3, Vector *wo, float *pdf, VisibilityTester *visibility) const |
| SWCSpectrum | Sample_L (const Scene *scene, float u1, float u2, float u3, float u4, Ray *ray, float *pdf) const |
| float | Pdf (const Point &, const Vector &) const |
Static Public Member Functions | |
| static Light * | CreateLight (const Transform &light2world, const ParamSet ¶mSet) |
Private Attributes | |
| Point | lightPos |
| Spectrum | Intensity |
| MIPMap< Spectrum > * | mipmap |
Definition at line 34 of file goniometric.h.
| GonioPhotometricLight::GonioPhotometricLight | ( | const Transform & | light2world, | |
| const Spectrum & | intensity, | |||
| const string & | texname | |||
| ) |
Definition at line 40 of file goniometric.cpp.
References Intensity, lightPos, lux::Light::LightToWorld, mipmap, and lux::ReadImage().
Referenced by CreateLight().
| lux::GonioPhotometricLight::~GonioPhotometricLight | ( | ) | [inline] |
Definition at line 40 of file goniometric.h.
References mipmap.
| Light * GonioPhotometricLight::CreateLight | ( | const Transform & | light2world, | |
| const ParamSet & | paramSet | |||
| ) | [static] |
Definition at line 72 of file goniometric.cpp.
References lux::ParamSet::FindOneSpectrum(), lux::ParamSet::FindOneString(), and GonioPhotometricLight().
| bool lux::GonioPhotometricLight::IsDeltaLight | ( | ) | const [inline, virtual] |
Implements lux::Light.
Definition at line 41 of file goniometric.h.
Implements lux::Light.
Definition at line 69 of file goniometric.cpp.
| SWCSpectrum lux::GonioPhotometricLight::Power | ( | const Scene * | ) | const [inline, virtual] |
Implements lux::Light.
Definition at line 50 of file goniometric.h.
References Intensity, lux::MIPMap< T >::Lookup(), M_PI, and mipmap.
| SWCSpectrum GonioPhotometricLight::Sample_L | ( | const Scene * | scene, | |
| float | u1, | |||
| float | u2, | |||
| float | u3, | |||
| float | u4, | |||
| Ray * | ray, | |||
| float * | ||||
| ) | const [virtual] |
Implements lux::Light.
Definition at line 62 of file goniometric.cpp.
References lux::Ray::d, Intensity, lightPos, lux::Ray::o, Scale(), lux::UniformSampleSphere(), and lux::UniformSpherePdf().
| SWCSpectrum GonioPhotometricLight::Sample_L | ( | const Point & | P, | |
| float | u1, | |||
| float | u2, | |||
| float | u3, | |||
| Vector * | wo, | |||
| float * | pdf, | |||
| VisibilityTester * | visibility | |||
| ) | const [virtual] |
Implements lux::Light.
Definition at line 54 of file goniometric.cpp.
References lux::DistanceSquared(), Intensity, lightPos, lux::Normalize(), Scale(), and lux::VisibilityTester::SetSegment().
| SWCSpectrum GonioPhotometricLight::Sample_L | ( | const Point & | p, | |
| Vector * | wi, | |||
| VisibilityTester * | vis | |||
| ) | const [virtual] |
Implements lux::Light.
Definition at line 34 of file goniometric.cpp.
References lux::DistanceSquared(), Intensity, lightPos, lux::Normalize(), Scale(), and lux::VisibilityTester::SetSegment().
Definition at line 42 of file goniometric.h.
References INV_PI, INV_TWOPI, lux::MIPMap< T >::Lookup(), mipmap, lux::Normalize(), lux::SphericalPhi(), lux::SphericalTheta(), cimg_library::cimg::swap(), lux::Light::WorldToLight, lux::Vector::y, and lux::Vector::z.
Referenced by Sample_L().
Definition at line 65 of file goniometric.h.
Referenced by GonioPhotometricLight(), Power(), and Sample_L().
Point lux::GonioPhotometricLight::lightPos [private] |
Definition at line 64 of file goniometric.h.
Referenced by GonioPhotometricLight(), and Sample_L().
MIPMap<Spectrum>* lux::GonioPhotometricLight::mipmap [private] |
Definition at line 66 of file goniometric.h.
Referenced by GonioPhotometricLight(), Power(), Scale(), and ~GonioPhotometricLight().
1.6.1