Table of contents Introduction Tutorial Main classes
Top Previous Up Next

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

Math::VectorPair<3>



Light::Ray




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

Members detail

Ray()

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

Math::Vector3 get_direction(const Sys::Element &e) const

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

double get_intercept_intensity() const

Get ray intensity at interception point..

See also set_intercept_intensity function.

const Math::Vector3 & get_intercept_point() const

Get light ray interception point

double get_len() const

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

Math::Vector3 get_position(const Sys::Element &e) const

Get position relative to given element

bool is_lost() const

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.

void set_intercept(const Sys::Element &e, const Math::Vector3 &point)

Set light ray interception point and element

void set_intercept_intensity(double intercept_intensity)

Set ray intensity at interception point..

See also get_intercept_intensity function.

void set_len(double len)

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.

Valid XHTML 1.0 StrictGenerated by diaxen on Sun Jan 8 00:47:25 2012 using MkDoc

AltStyle によって変換されたページ (->オリジナル) /