#include <rl_MultilayerSurface.h>
Public Member Functions | |
virtual | ~rl_MultilayerSurface () |
rl_MultilayerSurface (rl_Multilayer &ml, dvm3_Vector &norm) | |
dvm3_Vector const & | normal_vector () const |
void | set_normal (dvm3_Vector const &norm) |
int | reflect (rl_Ray &ray) |
rl_ReflectionCoefPOD const & | reflection_coefs () const |
rl_DielectricLayer const & | layer (int layer_no) const |
std::ostream & | dump_on (std::ostream &os, int layer_no, char const pre[]="", char const pst[]="") const |
Definition at line 51 of file rl_MultilayerSurface.h.
rl_MultilayerSurface::~rl_MultilayerSurface | ( | ) | [virtual] |
Destructor.
Definition at line 35 of file rl_MultilayerSurface.cc.
rl_MultilayerSurface::rl_MultilayerSurface | ( | rl_Multilayer & | ml, | |
dvm3_Vector & | norm | |||
) | [inline] |
Constructor. Constructs multilayer surface information from the provided rl_Multilayer object and normal vector.
ml | the rl_Multilayer object to be used (must already exist) | |
norm | the surface normal dvm3_Vector to be used (must already exist) |
Definition at line 181 of file rl_MultilayerSurface.h.
dvm3_Vector const & rl_MultilayerSurface::normal_vector | ( | ) | const [inline] |
Accessor.
Definition at line 190 of file rl_MultilayerSurface.h.
void rl_MultilayerSurface::set_normal | ( | dvm3_Vector const & | norm | ) | [inline] |
Mutator. Set the surface normal at the ray/surface intercept. Until the full surface intercept apparatus is available, applications need to set the surface normal at the intercept.
norm | the surface normal vector at the ray intercept |
Definition at line 203 of file rl_MultilayerSurface.h.
int rl_MultilayerSurface::reflect | ( | rl_Ray & | ray | ) | [inline] |
Mutator. Reflect ray direction vector at this surface
ray | to be reflected. The ray is assumed to be already at a valid surface intercept point. The ray direction vector and polarization state are updated. |
Definition at line 213 of file rl_MultilayerSurface.h.
References rl_Multilayer::multilayer_reflect_coef(), and rl_Ray::reflect().
rl_ReflectionCoefPOD const & rl_MultilayerSurface::reflection_coefs | ( | ) | const [inline] |
Accessor.
Definition at line 195 of file rl_MultilayerSurface.h.
rl_DielectricLayer const & rl_MultilayerSurface::layer | ( | int | layer_no | ) | const [inline] |
Accessor.
layer_no | layer number for which the information is requested. |
Definition at line 226 of file rl_MultilayerSurface.h.
References rl_Multilayer::layer().
std::ostream & rl_MultilayerSurface::dump_on | ( | std::ostream & | os, | |
int | layer_no, | |||
char const | pre[] = "" , |
|||
char const | pst[] = "" | |||
) | const [inline] |
Dump information about a layer.
os | output stream | |
layer_no | layer number for which the information is requested. | |
pre | optional char* prefix string. | |
pst | optional char* postfix string. |
Definition at line 231 of file rl_MultilayerSurface.h.
References rl_Multilayer::dump_on().