PathVertex Class Reference
A Path is composed of zero or more PathVertex vertices stored in a PathVertexList. Each PathVertex stores the underlying SurfacePoint, representing a single point on a surface (and all relevant associated metadata, eg, UV coords, normal, BSDF, etc.). In addition to storing the underlying SurfacePoint, each PathVertex also stores a set of carefully chosen, local values which facilitate efficient computation of the unweighted, bidirectional contributions of all possible combinations of light and eye subpaths. Specifically, 'alphaL' and 'alphaE' store the cumulative light and eye contributions respectively, with respect to this vertex' index within its parent Path. More...
#include <PathVertex.h>

Public Member Functions | |
Constructors | |
| PathVertex (SurfacePoint *pt_, const Vector3 &wi_, real_t GL_, real_t GE_, const SpectralSampleSet &alphaL_, const SpectralSampleSet &alphaE_, real_t pL_=1, real_t pE_=1) | |
| Initializes a PathVertex. | |
| PathVertex (SurfacePoint *pt_, real_t pL_, real_t pE_) | |
| PathVertex (const PathVertex ©) | |
| PathVertex () | |
Public Attributes | |
Fast-access public data | |
| SurfacePointPtr | pt |
| BSDF * | bsdf |
| real_t | GL |
| real_t | GE |
| Vector3 | wi |
| SpectralSampleSet | alphaL |
| SpectralSampleSet | alphaE |
| SpectralSampleSet | fs |
| real_t | pdfL |
| real_t | pdfE |
| real_t | pL |
| real_t | pE |
| Event | event |
Detailed Description
A Path is composed of zero or more PathVertex vertices stored in a PathVertexList. Each PathVertex stores the underlying SurfacePoint, representing a single point on a surface (and all relevant associated metadata, eg, UV coords, normal, BSDF, etc.). In addition to storing the underlying SurfacePoint, each PathVertex also stores a set of carefully chosen, local values which facilitate efficient computation of the unweighted, bidirectional contributions of all possible combinations of light and eye subpaths. Specifically, 'alphaL' and 'alphaE' store the cumulative light and eye contributions respectively, with respect to this vertex' index within its parent Path.
- Date:
- Fall 2008
- Note:
- Density with respect to projected solid angle is density with respect to ordinary solid angle divided by cos(theta) where theta is the angle between wo and the surface normal at v (PathVertex::pdfL and PathVertex::pdfE are both probability densities with respect to projected solid angle)
- See also:
- section 10.2 (pgs 302-305) of Veach's thesis for more details
Definition at line 38 of file PathVertex.h.
Constructor & Destructor Documentation
| PathVertex::PathVertex | ( | SurfacePoint * | pt_, | |
| const Vector3 & | wi_, | |||
| real_t | GL_, | |||
| real_t | GE_, | |||
| const SpectralSampleSet & | alphaL_, | |||
| const SpectralSampleSet & | alphaE_, | |||
| real_t | pL_ = 1, |
|||
| real_t | pE_ = 1 | |||
| ) | [inline] |
Initializes a PathVertex.
- Note:
- if alphaL_ is specified, vertex is assumed to be sampled starting from an emitter
if alphaE_ is specified, vertex is assumed to be sampled starting from a sensor (camera)
this means that one of alphaL_ or alphaE_ will be disregarded
Definition at line 102 of file PathVertex.h.
| PathVertex::PathVertex | ( | SurfacePoint * | pt_, | |
| real_t | pL_, | |||
| real_t | pE_ | |||
| ) |
Definition at line 31 of file PathVertex.cpp.
| PathVertex::PathVertex | ( | const PathVertex & | copy | ) | [inline] |
Definition at line 115 of file PathVertex.h.
| PathVertex::PathVertex | ( | ) | [inline] |
Definition at line 122 of file PathVertex.h.
Member Data Documentation
Definition at line 42 of file PathVertex.h.
Definition at line 46 of file PathVertex.h.
Definition at line 49 of file PathVertex.h.
Definition at line 51 of file PathVertex.h.
Definition at line 53 of file PathVertex.h.
Definition at line 57 of file PathVertex.h.
Definition at line 58 of file PathVertex.h.
Definition at line 64 of file PathVertex.h.
Definition at line 69 of file PathVertex.h.
Definition at line 74 of file PathVertex.h.
Definition at line 77 of file PathVertex.h.
Definition at line 78 of file PathVertex.h.
Definition at line 85 of file PathVertex.h.
The documentation for this class was generated from the following files:
Generated on 28 Feb 2009 for Milton by
1.5.6