lux::ExponentialDensity Class Reference

#include <exponential.h>

Inheritance diagram for lux::ExponentialDensity:
[legend]
Collaboration diagram for lux::ExponentialDensity:
[legend]

List of all members.

Public Member Functions

 ExponentialDensity (const RGBColor &sa, const RGBColor &ss, float gg, const RGBColor &emit, const BBox &e, const Transform &v2w, float aa, float bb, const Vector &up)
virtual ~ExponentialDensity ()
virtual BBox WorldBound () const
virtual bool IntersectP (const Ray &r, float *t0, float *t1) const
virtual 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 RGBColor sa,
const RGBColor ss,
float  gg,
const RGBColor 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().

virtual lux::ExponentialDensity::~ExponentialDensity (  )  [inline, virtual]

Definition at line 41 of file exponential.h.


Member Function Documentation

VolumeRegion * ExponentialDensity::CreateVolumeRegion ( const Transform volume2world,
const ParamSet params 
) [static]
virtual float lux::ExponentialDensity::Density ( const Point Pobj  )  const [inline, virtual]

Implements lux::DensityRegion.

Definition at line 47 of file exponential.h.

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

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

Implements lux::VolumeRegion.

Definition at line 43 of file exponential.h.

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

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

Member Data Documentation

float lux::ExponentialDensity::a [private]

Definition at line 57 of file exponential.h.

Referenced by CreateVolumeRegion(), and Density().

float lux::ExponentialDensity::b [private]

Definition at line 57 of file exponential.h.

Referenced by CreateVolumeRegion(), and Density().

Definition at line 56 of file exponential.h.

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

Definition at line 58 of file exponential.h.

Referenced by Density(), and ExponentialDensity().


The documentation for this class was generated from the following files:
Generated by  doxygen 1.6.2-20100208