Trace::Ray class reference
[Core module]
Declaration
#include <Goptical/Trace/Ray>
namespace Goptical {
namespace Trace {
class Ray;
};
};
This class is a member of the Trace namespace.
Inheritance
Description
This class is used to describe a Light::Ray with all tracing and propagation informations attached.
Members
See also the full member list section for this class.
Inherited members
- 36 members inherited from Light::Ray
Functions
- Ray()
- Ray(const Light::Ray &r)
- void add_generated(Ray *r)
- const Sys::Element * get_creator() const
- Math::Vector3 get_direction() const
- Math::Vector3 get_direction(const Sys::Element &e) const
- Ray * get_first_child() const
- Sys::Element & get_intercept_element() const
- double get_intercept_intensity() const
- const Math::Vector3 & get_intercept_point() const
- double get_len() const
- const Material::Base * get_material() const
- Ray * get_next_child() const
- Ray * get_parent() const
- Math::Vector3 get_position() const
- Math::Vector3 get_position(const Sys::Element &e) const
- bool is_lost() const
- void set_creator(const Sys::Element *creator)
- void set_intercept(const Sys::Element &e, const Math::Vector3 &point)
- void set_intercept_intensity(double intercept_intensity)
- void set_len(double len)
- void set_material(const Material::Base *material)
Members detail
This constructor shadows the Ray
constructor defined in the Ray
base class.
Create a propagated light ray
Ray(const Light::Ray &r)
Create a propagated light ray
void add_generated(Ray *r)
Define a new child generated ray
const Sys::Element * get_creator() const
Get element which generated this ray..
See also set_creator function.
Math::Vector3 get_direction() const
Get global direction
Get direction relative to given element
Ray * get_first_child() const
Get first ray generated from this one
Sys::Element & get_intercept_element() const
Get light ray interception element
Get ray intensity at interception point..
See also set_intercept_intensity function.
const Math::Vector3 & get_intercept_point() const
Get light ray interception point
Get light ray length..
See also set_len function.
const Material::Base * get_material() const
Get material ray is propagated in..
See also set_material function.
Ray * get_next_child() const
Get next sibling ray generated by same parent
Ray * get_parent() const
Get ray which generated this one
Math::Vector3 get_position() const
Get global position
Get position relative to given element
Return true if ray is not intercepted
void set_creator(const Sys::Element *creator)
Set element which generated this ray..
See also get_creator function.
Set light ray interception point and element
Set ray intensity at interception point..
See also get_intercept_intensity function.
Set light ray length..
See also get_len function.
void set_material(const Material::Base *material)
Set material ray is propagated in..
See also get_material function.