#include <volume.h>
Public Member Functions | |
virtual | ~VolumeRegion () |
virtual BBox | WorldBound () const =0 |
virtual bool | IntersectP (const Ray &ray, float *t0, float *t1) const =0 |
virtual RGBColor | sigma_a (const Point &, const Vector &) const =0 |
virtual RGBColor | sigma_s (const Point &, const Vector &) const =0 |
virtual RGBColor | Lve (const Point &, const Vector &) const =0 |
virtual float | P (const Point &, const Vector &, const Vector &) const =0 |
virtual RGBColor | sigma_t (const Point &, const Vector &) const |
virtual RGBColor | Tau (const Ray &ray, float step=1.f, float offset=0.5) const =0 |
Definition at line 44 of file volume.h.
virtual lux::VolumeRegion::~VolumeRegion | ( | ) | [inline, virtual] |
virtual bool lux::VolumeRegion::IntersectP | ( | const Ray & | ray, | |
float * | t0, | |||
float * | t1 | |||
) | const [pure virtual] |
Implemented in lux::AggregateVolume, lux::Cloud, lux::ExponentialDensity, lux::HomogeneousVolume, and lux::VolumeGrid.
Referenced by lux::SingleScattering::Li(), lux::EmissionIntegrator::Li(), and lux::DensityRegion::Tau().
Implemented in lux::DensityRegion, lux::AggregateVolume, and lux::HomogeneousVolume.
Referenced by lux::SingleScattering::Li(), and lux::EmissionIntegrator::Li().
virtual float lux::VolumeRegion::P | ( | const Point & | , | |
const Vector & | , | |||
const Vector & | ||||
) | const [pure virtual] |
Implemented in lux::DensityRegion, lux::AggregateVolume, and lux::HomogeneousVolume.
Referenced by lux::SingleScattering::Li().
Implemented in lux::DensityRegion, lux::AggregateVolume, and lux::HomogeneousVolume.
Referenced by sigma_t().
Implemented in lux::DensityRegion, lux::AggregateVolume, and lux::HomogeneousVolume.
Referenced by lux::SingleScattering::Li(), and sigma_t().
Reimplemented in lux::DensityRegion, lux::AggregateVolume, and lux::HomogeneousVolume.
Definition at line 59 of file volume.cpp.
virtual RGBColor lux::VolumeRegion::Tau | ( | const Ray & | ray, | |
float | step = 1.f , |
|||
float | offset = 0.5 | |||
) | const [pure virtual] |
Implemented in lux::DensityRegion, lux::AggregateVolume, and lux::HomogeneousVolume.
Referenced by lux::SingleScattering::Li(), lux::EmissionIntegrator::Li(), lux::SingleScattering::Transmittance(), and lux::EmissionIntegrator::Transmittance().
virtual BBox lux::VolumeRegion::WorldBound | ( | ) | const [pure virtual] |
Implemented in lux::AggregateVolume, lux::Cloud, lux::ExponentialDensity, lux::HomogeneousVolume, and lux::VolumeGrid.
Referenced by lux::Scene::Scene().