Trait truck_geometry::base::cgmath::Transform
source · pub trait Transform<P>: Sized + Onewhere
P: EuclideanSpace,{
// Required methods
fn look_at(eye: P, center: P, up: <P as EuclideanSpace>::Diff) -> Self;
fn look_at_rh(eye: P, center: P, up: <P as EuclideanSpace>::Diff) -> Self;
fn look_at_lh(eye: P, center: P, up: <P as EuclideanSpace>::Diff) -> Self;
fn transform_vector(
&self,
vec: <P as EuclideanSpace>::Diff,
) -> <P as EuclideanSpace>::Diff;
fn transform_point(&self, point: P) -> P;
fn concat(&self, other: &Self) -> Self;
fn inverse_transform(&self) -> Option<Self>;
// Provided methods
fn inverse_transform_vector(
&self,
vec: <P as EuclideanSpace>::Diff,
) -> Option<<P as EuclideanSpace>::Diff> { ... }
fn concat_self(&mut self, other: &Self) { ... }
}
Expand description
A trait representing an affine transformation that can be applied to points or vectors. An affine transformation is one which
Required Methods§
sourcefn look_at(eye: P, center: P, up: <P as EuclideanSpace>::Diff) -> Self
👎Deprecated: Use look_at_rh or look_at_lh
fn look_at(eye: P, center: P, up: <P as EuclideanSpace>::Diff) -> Self
Create a transformation that rotates a vector to look at center
from
eye
, using up
for orientation.
sourcefn look_at_rh(eye: P, center: P, up: <P as EuclideanSpace>::Diff) -> Self
fn look_at_rh(eye: P, center: P, up: <P as EuclideanSpace>::Diff) -> Self
Create a transformation that rotates a vector to look at center
from
eye
, using up
for orientation.
sourcefn look_at_lh(eye: P, center: P, up: <P as EuclideanSpace>::Diff) -> Self
fn look_at_lh(eye: P, center: P, up: <P as EuclideanSpace>::Diff) -> Self
Create a transformation that rotates a vector to look at center
from
eye
, using up
for orientation.
sourcefn transform_vector(
&self,
vec: <P as EuclideanSpace>::Diff,
) -> <P as EuclideanSpace>::Diff
fn transform_vector( &self, vec: <P as EuclideanSpace>::Diff, ) -> <P as EuclideanSpace>::Diff
Transform a vector using this transform.
sourcefn transform_point(&self, point: P) -> P
fn transform_point(&self, point: P) -> P
Transform a point using this transform.
sourcefn concat(&self, other: &Self) -> Self
fn concat(&self, other: &Self) -> Self
Combine this transform with another, yielding a new transformation which has the effects of both.
sourcefn inverse_transform(&self) -> Option<Self>
fn inverse_transform(&self) -> Option<Self>
Create a transform that “un-does” this one.
Provided Methods§
sourcefn inverse_transform_vector(
&self,
vec: <P as EuclideanSpace>::Diff,
) -> Option<<P as EuclideanSpace>::Diff>
fn inverse_transform_vector( &self, vec: <P as EuclideanSpace>::Diff, ) -> Option<<P as EuclideanSpace>::Diff>
Inverse transform a vector using this transform
sourcefn concat_self(&mut self, other: &Self)
fn concat_self(&mut self, other: &Self)
Combine this transform with another, in-place.
Object Safety§
This trait is not object safe.