lux::ExponentialDensity Class Reference

#include <exponential.h>

Inheritance diagram for lux::ExponentialDensity:

lux::DensityRegion lux::VolumeRegion

List of all members.

Public Member Functions

 ExponentialDensity (const Spectrum &sa, const Spectrum &ss, float gg, const Spectrum &emit, const BBox &e, const Transform &v2w, float aa, float bb, const Vector &up)
BBox WorldBound () const
bool IntersectP (const Ray &r, float *t0, float *t1) const
float Density (const Point &Pobj) const

Static Public Member Functions

static VolumeRegionCreateVolumeRegion (const Transform &volume2world, const ParamSet &params)

Private Attributes

BBox extent
float a
float b
Vector upDir


Detailed Description

Definition at line 30 of file exponential.h.


Constructor & Destructor Documentation

lux::ExponentialDensity::ExponentialDensity ( const Spectrum sa,
const Spectrum ss,
float  gg,
const Spectrum emit,
const BBox e,
const Transform v2w,
float  aa,
float  bb,
const Vector up 
) [inline]

Definition at line 33 of file exponential.h.

References lux::Normalize(), and upDir.

Referenced by CreateVolumeRegion().


Member Function Documentation

VolumeRegion * ExponentialDensity::CreateVolumeRegion ( const Transform volume2world,
const ParamSet params 
) [static]

float lux::ExponentialDensity::Density ( const Point Pobj  )  const [inline, virtual]

Implements lux::DensityRegion.

Definition at line 46 of file exponential.h.

References a, b, lux::Dot(), extent, lux::BBox::Inside(), lux::BBox::pMin, and upDir.

bool lux::ExponentialDensity::IntersectP ( const Ray r,
float *  t0,
float *  t1 
) const [inline, virtual]

Implements lux::VolumeRegion.

Definition at line 42 of file exponential.h.

References extent, lux::BBox::IntersectP(), and lux::DensityRegion::WorldToVolume.

BBox lux::ExponentialDensity::WorldBound (  )  const [inline, virtual]


Member Data Documentation

float lux::ExponentialDensity::a [private]

Definition at line 56 of file exponential.h.

Referenced by CreateVolumeRegion(), and Density().

float lux::ExponentialDensity::b [private]

Definition at line 56 of file exponential.h.

Referenced by CreateVolumeRegion(), and Density().

Definition at line 55 of file exponential.h.

Referenced by Density(), IntersectP(), and WorldBound().

Definition at line 57 of file exponential.h.

Referenced by Density(), and ExponentialDensity().


The documentation for this class was generated from the following files:

Generated on Mon May 18 07:16:20 2009 for lux by  doxygen 1.5.8