[][src]Struct pbrt::core::geometry::Ray

pub struct Ray {
    pub o: Point3f,
    pub d: Vector3f,
    pub t_max: Float,
    pub time: Float,
    pub medium: Option<Arc<dyn Medium + Send + Sync>>,
    pub differential: Option<RayDifferential>,
}

Fields

o: Point3f

origin

d: Vector3f

direction

t_max: Float

limits the ray to a segment along its infinite extent

time: Float

used for animations

medium: Option<Arc<dyn Medium + Send + Sync>>differential: Option<RayDifferential>

in C++: 'class RayDifferential : public Ray'

Methods

impl Ray[src]

pub fn position(&self, t: Float) -> Point3f[src]

pub fn scale_differentials(&mut self, s: Float)[src]

Trait Implementations

impl Clone for Ray[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl Default for Ray[src]

Auto Trait Implementations

impl Send for Ray

impl Sync for Ray

Blanket Implementations

impl<T> From for T[src]

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> SetParameter for T[src]

fn set<T>(&mut self, value: T) -> <T as Parameter<Self>>::Result where
    T: Parameter<Self>, 
[src]

Sets value as a parameter of self.