ShapeSet Class Reference

#include <light.h>

List of all members.

Public Member Functions

 ShapeSet (const Reference< Shape > &s)
float Area () const
 ~ShapeSet ()
Point Sample (const Point &p, const LightSample &ls, Normal *Ns) const
Point Sample (const LightSample &ls, Normal *Ns) const
float Pdf (const Point &p, const Vector &wi) const
float Pdf (const Point &p) const

Private Attributes

vector< Reference< Shape > > shapes
float sumArea
vector< float > areas
Distribution1DareaDistribution

Detailed Description

Definition at line 134 of file light.h.


Constructor & Destructor Documentation

ShapeSet::ShapeSet ( const Reference< Shape > &  s  ) 

Definition at line 106 of file light.cpp.

References areaDistribution, areas, shapes, sumArea, and Warning().

ShapeSet::~ShapeSet (  ) 

Definition at line 132 of file light.cpp.

References areaDistribution.


Member Function Documentation

float ShapeSet::Area (  )  const [inline]

Definition at line 138 of file light.h.

References sumArea.

Referenced by DiffuseAreaLight::DiffuseAreaLight().

float ShapeSet::Pdf ( const Point p  )  const

Definition at line 167 of file light.cpp.

References areas, Pdf(), shapes, and sumArea.

float ShapeSet::Pdf ( const Point p,
const Vector wi 
) const

Definition at line 159 of file light.cpp.

References areas, shapes, and sumArea.

Referenced by Pdf(), DiffuseAreaLight::Pdf(), and DiffuseAreaLight::Sample_L().

Point ShapeSet::Sample ( const LightSample ls,
Normal Ns 
) const
Point ShapeSet::Sample ( const Point p,
const LightSample ls,
Normal Ns 
) const

Member Data Documentation

Definition at line 149 of file light.h.

Referenced by Sample(), ShapeSet(), and ~ShapeSet().

vector<float> ShapeSet::areas [private]

Definition at line 148 of file light.h.

Referenced by Pdf(), and ShapeSet().

vector<Reference<Shape> > ShapeSet::shapes [private]

Definition at line 146 of file light.h.

Referenced by Pdf(), Sample(), and ShapeSet().

float ShapeSet::sumArea [private]

Definition at line 147 of file light.h.

Referenced by Area(), Pdf(), and ShapeSet().


The documentation for this class was generated from the following files:
Generated on Sat Aug 28 20:00:15 2010 for pbrt by  doxygen 1.6.3