[][src]Struct pbrt::core::transform::Transform

pub struct Transform {
    pub m: Matrix4x4,
    pub m_inv: Matrix4x4,
}

Fields

m: Matrix4x4m_inv: Matrix4x4

Implementations

impl Transform[src]

pub fn new(
    t00: Float,
    t01: Float,
    t02: Float,
    t03: Float,
    t10: Float,
    t11: Float,
    t12: Float,
    t13: Float,
    t20: Float,
    t21: Float,
    t22: Float,
    t23: Float,
    t30: Float,
    t31: Float,
    t32: Float,
    t33: Float
) -> Self
[src]

pub fn inverse(t: &Transform) -> Transform[src]

pub fn is_identity(&self) -> bool[src]

pub fn swaps_handedness(&self) -> bool[src]

pub fn translate(delta: &Vector3f) -> Transform[src]

pub fn scale(x: Float, y: Float, z: Float) -> Transform[src]

pub fn rotate_x(theta: Float) -> Transform[src]

pub fn rotate_y(theta: Float) -> Transform[src]

pub fn rotate_z(theta: Float) -> Transform[src]

pub fn rotate(theta: Float, axis: &Vector3f) -> Transform[src]

pub fn look_at(pos: &Point3f, look: &Point3f, up: &Vector3f) -> Transform[src]

pub fn orthographic(z_near: Float, z_far: Float) -> Transform[src]

pub fn perspective(fov: Float, n: Float, f: Float) -> Transform[src]

pub fn transform_point(&self, p: &Point3f) -> Point3f[src]

pub fn transform_vector(&self, v: &Vector3f) -> Vector3f[src]

pub fn transform_normal(&self, n: &Normal3f) -> Normal3f[src]

pub fn transform_ray(&self, r: &Ray) -> Ray[src]

pub fn transform_bounds(&self, b: &Bounds3f) -> Bounds3f[src]

pub fn transform_point_with_error(
    &self,
    p: &Point3f,
    p_error: &mut Vector3f
) -> Point3f
[src]

pub fn transform_point_with_abs_error(
    &self,
    pt: &Point3f,
    pt_error: &Vector3f,
    abs_error: &mut Vector3f
) -> Point3f
[src]

pub fn transform_vector_with_error(
    &self,
    v: &Vector3f,
    abs_error: &mut Vector3f
) -> Vector3f
[src]

pub fn transform_ray_with_error(
    &self,
    r: &Ray,
    o_error: &mut Vector3f,
    d_error: &mut Vector3f
) -> Ray
[src]

pub fn transform_surface_interaction(&self, si: &mut SurfaceInteraction<'_>)[src]

Trait Implementations

impl Clone for Transform[src]

impl Copy for Transform[src]

impl Debug for Transform[src]

impl Default for Transform[src]

impl Mul<Transform> for Transform[src]

type Output = Transform

The resulting type after applying the * operator.

impl PartialEq<Transform> for Transform[src]

Auto Trait Implementations

impl RefUnwindSafe for Transform

impl Send for Transform

impl Sync for Transform

impl Unpin for Transform

impl UnwindSafe for Transform

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> 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.