Struct tinyraytracer::blocks::Sphere[][src]

pub struct Sphere {
    pub center: Vec3,
    pub radius: f32,
    pub material: Material,
}

A sphere is a 3-D ball, it has a center point and a radius.

Fields

center: Vec3radius: f32material: Material

Trait Implementations

impl Clone for Sphere[src]

impl Debug for Sphere[src]

impl RayCollision for Sphere[src]

In case of a sphere it’s pretty easy, we need to project the center of the sphere on the ray of light and see if the projection is inside the sphere

impl Copy for Sphere[src]

Auto Trait Implementations

impl RefUnwindSafe for Sphere

impl Send for Sphere

impl Sync for Sphere

impl Unpin for Sphere

impl UnwindSafe for Sphere

Blanket Implementations

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

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

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

impl<T> From<T> for T[src]

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

impl<T> Pointable for T

type Init = T

The type for initializers.

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

type Owned = T

The resulting type after obtaining ownership.

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

type Error = Infallible

The type returned in the event of a conversion error.

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

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

The type returned in the event of a conversion error.