#include <environment.h>
Public Member Functions | |
| EnvironmentCamera (const Transform &world2camStart, const Transform &world2camEnd, float hither, float yon, float sopen, float sclose, int sdist, Film *film) | |
| virtual | ~EnvironmentCamera () |
| virtual float | GenerateRay (const Sample &sample, Ray *) const |
| virtual bool | Sample_W (const TsPack *tspack, const Scene *scene, float u1, float u2, float u3, BSDF **bsdf, float *pdf, SWCSpectrum *We) const |
| virtual bool | Sample_W (const TsPack *tspack, const Scene *scene, const Point &p, const Normal &n, float u1, float u2, float u3, BSDF **bsdf, float *pdf, float *pdfDirect, VisibilityTester *visibility, SWCSpectrum *We) const |
| virtual bool | GetSamplePosition (const Point &p, const Vector &wi, float distance, float *x, float *y) const |
| virtual void | ClampRay (Ray &ray) const |
| virtual bool | IsDelta () const |
| virtual bool | IsLensBased () const |
| virtual BBox | Bounds () const |
| virtual EnvironmentCamera * | Clone () const |
Static Public Member Functions | |
| static Camera * | CreateCamera (const Transform &world2camStart, const Transform &world2camEnd, const ParamSet ¶ms, Film *film) |
Private Attributes | |
| Point | pos |
Definition at line 30 of file environment.h.
| EnvironmentCamera::EnvironmentCamera | ( | const Transform & | world2camStart, | |
| const Transform & | world2camEnd, | |||
| float | hither, | |||
| float | yon, | |||
| float | sopen, | |||
| float | sclose, | |||
| int | sdist, | |||
| Film * | film | |||
| ) |
Definition at line 48 of file environment.cpp.
References lux::Camera::CameraToWorld, and pos.
Referenced by Clone(), and CreateCamera().
| virtual lux::EnvironmentCamera::~EnvironmentCamera | ( | ) | [inline, virtual] |
Definition at line 35 of file environment.h.
| BBox EnvironmentCamera::Bounds | ( | ) | const [virtual] |
Reimplemented from lux::Camera.
Definition at line 102 of file environment.cpp.
References lux::MachineEpsilon::E(), lux::BBox::Expand(), and pos.
| void EnvironmentCamera::ClampRay | ( | Ray & | ray | ) | const [virtual] |
Reimplemented from lux::Camera.
Definition at line 128 of file environment.cpp.
References lux::Camera::ClipHither, lux::Camera::ClipYon, lux::Ray::maxt, and lux::Ray::mint.
| virtual EnvironmentCamera* lux::EnvironmentCamera::Clone | ( | ) | const [inline, virtual] |
Implements lux::Camera.
Definition at line 45 of file environment.h.
References EnvironmentCamera().
| Camera * EnvironmentCamera::CreateCamera | ( | const Transform & | world2camStart, | |
| const Transform & | world2camEnd, | |||
| const ParamSet & | params, | |||
| Film * | film | |||
| ) | [static] |
Definition at line 134 of file environment.cpp.
References EnvironmentCamera(), lux::ParamSet::FindFloat(), lux::ParamSet::FindOneFloat(), lux::ParamSet::FindOneString(), LUX_BADTOKEN, LUX_WARNING, luxError, cimg_library::cimg::max(), memcpy(), cimg_library::cimg::min(), lux::Film::xResolution, and lux::Film::yResolution.
Implements lux::Camera.
Definition at line 54 of file environment.cpp.
References lux::Camera::CameraToWorld, lux::Camera::ClipHither, lux::Camera::ClipYon, lux::Ray::d, lux::Camera::film, lux::Camera::GetTime(), lux::Sample::imageX, lux::Sample::imageY, M_PI, lux::Ray::maxt, lux::Ray::mint, lux::Ray::o, lux::Sample::time, lux::Ray::time, lux::Film::xResolution, and lux::Film::yResolution.
| bool EnvironmentCamera::GetSamplePosition | ( | const Point & | p, | |
| const Vector & | wi, | |||
| float | distance, | |||
| float * | x, | |||
| float * | y | |||
| ) | const [virtual] |
Reimplemented from lux::Camera.
Definition at line 109 of file environment.cpp.
References cimg_library::acos(), Clamp(), lux::Camera::ClipYon, lux::Camera::film, INV_PI, INV_TWOPI, M_PI, cimg_library::cimg::min(), lux::Camera::WorldToCamera, lux::Vector::x, lux::Film::xResolution, lux::Vector::y, lux::Film::yResolution, and lux::Vector::z.
| virtual bool lux::EnvironmentCamera::IsDelta | ( | ) | const [inline, virtual] |
Reimplemented from lux::Camera.
Definition at line 41 of file environment.h.
| virtual bool lux::EnvironmentCamera::IsLensBased | ( | ) | const [inline, virtual] |
Reimplemented from lux::Camera.
Definition at line 42 of file environment.h.
| bool EnvironmentCamera::Sample_W | ( | const TsPack * | tspack, | |
| const Scene * | scene, | |||
| const Point & | p, | |||
| const Normal & | n, | |||
| float | u1, | |||
| float | u2, | |||
| float | u3, | |||
| BSDF ** | bsdf, | |||
| float * | pdf, | |||
| float * | pdfDirect, | |||
| VisibilityTester * | visibility, | |||
| SWCSpectrum * | We | |||
| ) | const [virtual] |
Reimplemented from lux::Camera.
Definition at line 86 of file environment.cpp.
References BSDF_ALLOC, lux::CoordinateSystem(), lux::Normalize(), pos, lux::VisibilityTester::SetSegment(), lux::TsPack::time, and lux::UniformSpherePdf().
| bool EnvironmentCamera::Sample_W | ( | const TsPack * | tspack, | |
| const Scene * | scene, | |||
| float | u1, | |||
| float | u2, | |||
| float | u3, | |||
| BSDF ** | bsdf, | |||
| float * | pdf, | |||
| SWCSpectrum * | We | |||
| ) | const [virtual] |
Reimplemented from lux::Camera.
Definition at line 70 of file environment.cpp.
References BSDF_ALLOC, lux::Camera::CameraToWorld, lux::CoordinateSystem(), lux::Camera::film, M_PI, pos, lux::UniformSpherePdf(), lux::Film::xResolution, and lux::Film::yResolution.
Point lux::EnvironmentCamera::pos [private] |
Definition at line 52 of file environment.h.
Referenced by Bounds(), EnvironmentCamera(), and Sample_W().
1.6.2-20100208