#include <volume.h>
Public Member Functions | |
AggregateVolume (const vector< VolumeRegion * > &r) | |
~AggregateVolume () | |
BBox | WorldBound () const |
bool | IntersectP (const Ray &ray, float *t0, float *t1) const |
Spectrum | sigma_a (const Point &, const Vector &) const |
Spectrum | sigma_s (const Point &, const Vector &) const |
Spectrum | Lve (const Point &, const Vector &) const |
float | p (const Point &, const Vector &, const Vector &) const |
Spectrum | sigma_t (const Point &, const Vector &) const |
Spectrum | Tau (const Ray &ray, float, float) const |
Private Attributes | |
vector< VolumeRegion * > | regions |
BBox | bound |
Definition at line 92 of file volume.h.
lux::AggregateVolume::AggregateVolume | ( | const vector< VolumeRegion * > & | r | ) |
Definition at line 71 of file volume.cpp.
References bound, regions, lux::Union(), and WorldBound().
lux::AggregateVolume::~AggregateVolume | ( | ) |
bool lux::AggregateVolume::IntersectP | ( | const Ray & | ray, | |
float * | t0, | |||
float * | t1 | |||
) | const [virtual] |
Implements lux::VolumeRegion.
Definition at line 119 of file volume.cpp.
References INFINITY, cimg_library::max(), cimg_library::min(), and regions.
Reimplemented from lux::VolumeRegion.
Definition at line 107 of file volume.cpp.
References regions.
BBox lux::AggregateVolume::WorldBound | ( | ) | const [virtual] |
Implements lux::VolumeRegion.
Definition at line 136 of file volume.cpp.
References bound.
Referenced by AggregateVolume().
BBox lux::AggregateVolume::bound [private] |
vector<VolumeRegion *> lux::AggregateVolume::regions [private] |
Definition at line 107 of file volume.h.
Referenced by AggregateVolume(), IntersectP(), Lve(), p(), sigma_a(), sigma_s(), sigma_t(), Tau(), and ~AggregateVolume().