Type Alias Rotation
pub type Rotation = Rotation2D<f32, UnknownUnit, UnknownUnit>;
geometry
only.Expand description
Alias for euclid::default::Rotation2D<f32>
Aliased Type§
struct Rotation {
pub angle: f32,
}
Fields§
§angle: f32
Angle in radians
Implementations
§impl<T, Src, Dst> Rotation2D<T, Src, Dst>
impl<T, Src, Dst> Rotation2D<T, Src, Dst>
pub fn new(angle: Angle<T>) -> Rotation2D<T, Src, Dst>
pub fn new(angle: Angle<T>) -> Rotation2D<T, Src, Dst>
Creates a rotation from an angle in radians.
pub fn radians(angle: T) -> Rotation2D<T, Src, Dst>
pub fn radians(angle: T) -> Rotation2D<T, Src, Dst>
Creates a rotation from an angle in radians.
pub fn identity() -> Rotation2D<T, Src, Dst>where
T: Zero,
pub fn identity() -> Rotation2D<T, Src, Dst>where
T: Zero,
Creates the identity rotation.
§impl<T, Src, Dst> Rotation2D<T, Src, Dst>
impl<T, Src, Dst> Rotation2D<T, Src, Dst>
pub fn to_transform(&self) -> Transform2D<T, Src, Dst>
pub fn to_transform(&self) -> Transform2D<T, Src, Dst>
Returns the matrix representation of this rotation.
§impl<T, Src, Dst> Rotation2D<T, Src, Dst>where
T: Copy,
impl<T, Src, Dst> Rotation2D<T, Src, Dst>where
T: Copy,
pub fn cast_unit<Src2, Dst2>(&self) -> Rotation2D<T, Src2, Dst2>
pub fn cast_unit<Src2, Dst2>(&self) -> Rotation2D<T, Src2, Dst2>
Cast the unit, preserving the numeric value.
§Example
enum Local {}
enum World {}
enum Local2 {}
enum World2 {}
let to_world: Rotation2D<_, Local, World> = Rotation2D::radians(42);
assert_eq!(to_world.angle, to_world.cast_unit::<Local2, World2>().angle);
pub fn to_untyped(&self) -> Rotation2D<T, UnknownUnit, UnknownUnit>
pub fn to_untyped(&self) -> Rotation2D<T, UnknownUnit, UnknownUnit>
Drop the units, preserving only the numeric value.
§Example
enum Local {}
enum World {}
let to_world: Rotation2D<_, Local, World> = Rotation2D::radians(42);
assert_eq!(to_world.angle, to_world.to_untyped().angle);
pub fn from_untyped(
r: &Rotation2D<T, UnknownUnit, UnknownUnit>,
) -> Rotation2D<T, Src, Dst>
pub fn from_untyped( r: &Rotation2D<T, UnknownUnit, UnknownUnit>, ) -> Rotation2D<T, Src, Dst>
Tag a unitless value with units.
§Example
use euclid::UnknownUnit;
enum Local {}
enum World {}
let rot: Rotation2D<_, UnknownUnit, UnknownUnit> = Rotation2D::radians(42);
assert_eq!(rot.angle, Rotation2D::<_, Local, World>::from_untyped(&rot).angle);
§impl<T, Src, Dst> Rotation2D<T, Src, Dst>where
T: Copy,
impl<T, Src, Dst> Rotation2D<T, Src, Dst>where
T: Copy,
§impl<T, Src, Dst> Rotation2D<T, Src, Dst>where
T: Real,
impl<T, Src, Dst> Rotation2D<T, Src, Dst>where
T: Real,
pub fn to_3d(&self) -> Rotation3D<T, Src, Dst>
pub fn to_3d(&self) -> Rotation3D<T, Src, Dst>
Creates a 3d rotation (around the z axis) from this 2d rotation.
pub fn inverse(&self) -> Rotation2D<T, Dst, Src>
pub fn inverse(&self) -> Rotation2D<T, Dst, Src>
Returns the inverse of this rotation.
pub fn then<NewSrc>(
&self,
other: &Rotation2D<T, NewSrc, Src>,
) -> Rotation2D<T, NewSrc, Dst>
pub fn then<NewSrc>( &self, other: &Rotation2D<T, NewSrc, Src>, ) -> Rotation2D<T, NewSrc, Dst>
Returns a rotation representing the other rotation followed by this rotation.
pub fn transform_point(&self, point: Point2D<T, Src>) -> Point2D<T, Dst>
pub fn transform_point(&self, point: Point2D<T, Src>) -> Point2D<T, Dst>
Returns the given 2d point transformed by this rotation.
The input point must be use the unit Src, and the returned point has the unit Dst.
pub fn transform_vector(&self, vector: Vector2D<T, Src>) -> Vector2D<T, Dst>
pub fn transform_vector(&self, vector: Vector2D<T, Src>) -> Vector2D<T, Dst>
Returns the given 2d vector transformed by this rotation.
The input point must be use the unit Src, and the returned point has the unit Dst.
Trait Implementations
§impl<T, Src, Dst> ApproxEq<T> for Rotation2D<T, Src, Dst>
impl<T, Src, Dst> ApproxEq<T> for Rotation2D<T, Src, Dst>
§fn approx_epsilon() -> T
fn approx_epsilon() -> T
§fn approx_eq_eps(&self, other: &Rotation2D<T, Src, Dst>, eps: &T) -> bool
fn approx_eq_eps(&self, other: &Rotation2D<T, Src, Dst>, eps: &T) -> bool
true
if this object is approximately equal to the other one, using
a provided epsilon value.§fn approx_eq(&self, other: &Self) -> bool
fn approx_eq(&self, other: &Self) -> bool
true
if this object is approximately equal to the other one, using
the approx_epsilon
epsilon value.§impl<T, Src, Dst> Clone for Rotation2D<T, Src, Dst>where
T: Clone,
impl<T, Src, Dst> Clone for Rotation2D<T, Src, Dst>where
T: Clone,
§fn clone(&self) -> Rotation2D<T, Src, Dst>
fn clone(&self) -> Rotation2D<T, Src, Dst>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more