Mitsuba Renderer  0.5.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
mitsuba::MediumSamplingRecord Struct Reference

Data record for sampling a point on the in-scattering integral of the RTE. More...

#include <mitsuba/render/medium.h>

Public Member Functions

 MediumSamplingRecord ()
 
const PhaseFunctiongetPhaseFunction () const
 Return a pointer to the phase function. More...
 
std::string toString () const
 Return a string representation. More...
 

Public Attributes

Float t
 Traveled distance. More...
 
Point p
 Location of the scattering interaction. More...
 
Float time
 Time value associated with the medium scattering event. More...
 
Vector orientation
 Local particle orientation at p. More...
 
Spectrum transmittance
 Specifies the transmittance along the segment [mint, t]. More...
 
Spectrum sigmaA
 The medium's absorption coefficient at p. More...
 
Spectrum sigmaS
 The medium's scattering coefficient at p. More...
 
Float pdfSuccess
 Records the probability density of sampling a medium interaction at p. More...
 
Float pdfSuccessRev
 Records the probability density of sampling a medium interaction in the reverse direction. More...
 
Float pdfFailure
 
const Mediummedium
 Pointer to the associated medium. More...
 

Detailed Description

Data record for sampling a point on the in-scattering integral of the RTE.

See Also
Medium::sampleDistance()

Constructor & Destructor Documentation

mitsuba::MediumSamplingRecord::MediumSamplingRecord ( )
inline

Member Function Documentation

const PhaseFunction * MediumSamplingRecord::getPhaseFunction ( ) const
inline

Return a pointer to the phase function.

std::string mitsuba::MediumSamplingRecord::toString ( ) const

Return a string representation.

Member Data Documentation

const Medium* mitsuba::MediumSamplingRecord::medium

Pointer to the associated medium.

Vector mitsuba::MediumSamplingRecord::orientation

Local particle orientation at p.

Point mitsuba::MediumSamplingRecord::p

Location of the scattering interaction.

Float mitsuba::MediumSamplingRecord::pdfFailure

When the Medium::sampleDistance() is successful, this function returns the probability of not having generated a medium interaction until t. Otherwise, it records the probability of not generating any interactions in the whole interval [mint, maxt]. This probability is assumed to be symmetric with respect to sampling from the other direction, which is why there is no pdfFailureRev field.

Float mitsuba::MediumSamplingRecord::pdfSuccess

Records the probability density of sampling a medium interaction at p.

Float mitsuba::MediumSamplingRecord::pdfSuccessRev

Records the probability density of sampling a medium interaction in the reverse direction.

This is essentially the density of obtained by calling sampleDistance, but starting at p and stopping at ray.o. These probabilities are important for bidirectional methods.

Spectrum mitsuba::MediumSamplingRecord::sigmaA

The medium's absorption coefficient at p.

Spectrum mitsuba::MediumSamplingRecord::sigmaS

The medium's scattering coefficient at p.

Float mitsuba::MediumSamplingRecord::t

Traveled distance.

Float mitsuba::MediumSamplingRecord::time

Time value associated with the medium scattering event.

Spectrum mitsuba::MediumSamplingRecord::transmittance

Specifies the transmittance along the segment [mint, t].

When sampling a distance fails, this contains the transmittance along the whole ray segment [mint, maxDist].


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