Frapper
1.0a
|
#include <DualScatterMath.h>
Public Member Functions | |
DualScatterMath (const unsigned int tableSize=128) | |
~DualScatterMath () | |
unsigned int | getTablesize () const |
Private Types | |
typedef float(DualScatterMath::* | funcPtr )(float, float) |
Private Member Functions | |
float | GToR (const float grad) |
float | g (float x, float variance) |
float | S (funcPtr f, const float a, const float b, int n, const float c) |
Computes the integral using the Simpson rule. | |
float | M_X (const float alpha, const float beta, const float theta) |
float | SM_X (const float alpha, const float beta, const float a, const float b) |
float | N_R (const float phi, float empty=0) |
float | N_TT (const float phi, const float gamma) |
float | N_TRT (const float phi, const float gamma) |
Ogre::ColourValue | f_R (const float theta, const float I, const float phi, Ogre::ColourValue &colour) |
Ogre::ColourValue | f_TT (const float theta, const float I, const float phi, Ogre::ColourValue &colour) |
Ogre::ColourValue | f_TRT (const float theta, const float I, const float phi, Ogre::ColourValue &colour) |
Ogre::ColourValue | DualScatterMath::f_s (const float theta, const float phi, const float I_R, const float I_TT, const float I_TRT, const float I_G, Ogre::ColourValue &colour_R, Ogre::ColourValue &colour_TT, Ogre::ColourValue &colour_TRT) |
Ogre::ColourValue | alpha_fb (const float phi, const float from, const float to) |
Ogre::ColourValue | beta_fb (const float phi, const float from, const float to) |
Ogre::ColourValue | SX_f_s (const float theta, const float from, const float to) |
Ogre::ColourValue | a_fb (const float theta, const float from, const float to) |
Ogre::ColourValue | A_b (const float theta) |
Ogre::ColourValue | delta_b (const float theta) |
Ogre::ColourValue | sigma_b (const float theta) |
float * | fillN_gR () |
float * | fillN_gTT () |
float * | fillN_gTRT () |
Ogre::ColourValue * | fill_A_b (const float from, const float to) |
Ogre::ColourValue * | fill_delta_b (const float from, const float to) |
Ogre::ColourValue * | fill_sigma_b (const float from, const float to) |
Private Attributes | |
float | m_eta |
float | m_sigma_a |
float | m_a |
Ogre::ColourValue | m_C_R |
Ogre::ColourValue | m_C_TT |
Ogre::ColourValue | m_C_TRT |
float | m_I_R |
float | m_I_TT |
float | m_I_TRT |
float | m_I_G |
float | m_alpha_R |
float | m_alpha_TT |
float | m_alpha_TRT |
float | m_beta_R |
float | m_beta_TT |
float | m_beta_TRT |
float | m_gamma_TT |
float | m_gamma_G |
float | m_k_g |
float | m_w_c |
float | m_dEta |
float | m_dh_M |
Ogre::ColourValue * | m_A_b |
Ogre::ColourValue * | m_delta_b |
Ogre::ColourValue * | m_sigma_b |
float * | m_N_gR |
float * | m_N_gTT |
float * | m_N_gTRT |
unsigned int | m_tableSize |
|
private |
HairRenderNode::DualScatterMath::DualScatterMath | ( | const unsigned int | tableSize = 128 | ) |
HairRenderNode::DualScatterMath::~DualScatterMath | ( | ) |
unsigned int HairRenderNode::DualScatterMath::getTablesize | ( | ) | const |
|
inlineprivate |
|
private |
|
inlineprivate |
Computes the integral using the Simpson rule.
f | The pointer to the function f(x). |
a | The intervall start value |
b | The intervall end value |
f | The pointer to the function f(x, c). |
a | The intervall start value |
b | The intervall end value |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |