#[repr(C)]pub struct Rot2 {
s: f32,
c: f32,
}
Expand description
Represents a rotation in the 2D plane.
A rotation of 𝞃/4 = 90° rotates the X axis to the Y axis.
Normally a Rot2
is normalized (unit-length).
If not, it will also scale vectors.
Fields§
§s: f32
angle.sin()
c: f32
angle.cos()
Implementations§
source§impl Rot2
impl Rot2
sourcepub fn from_angle(angle: f32) -> Self
pub fn from_angle(angle: f32) -> Self
Angle is clockwise in radians. A 𝞃/4 = 90° rotation means rotating the X axis to the Y axis.
pub fn angle(self) -> f32
pub fn length_squared(self) -> f32
pub fn is_finite(self) -> bool
pub fn inverse(self) -> Self
pub fn normalized(self) -> Self
Trait Implementations§
impl Copy for Rot2
impl Pod for Rot2
impl StructuralPartialEq for Rot2
Auto Trait Implementations§
impl Freeze for Rot2
impl RefUnwindSafe for Rot2
impl Send for Rot2
impl Sync for Rot2
impl Unpin for Rot2
impl UnwindSafe for Rot2
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CheckedBitPattern for Twhere
T: AnyBitPattern,
impl<T> CheckedBitPattern for Twhere
T: AnyBitPattern,
source§type Bits = T
type Bits = T
Self
must have the same layout as the specified Bits
except for
the possible invalid bit patterns being checked during
is_valid_bit_pattern
.source§fn is_valid_bit_pattern(_bits: &T) -> bool
fn is_valid_bit_pattern(_bits: &T) -> bool
If this function returns true, then it must be valid to reinterpret
bits
as &Self
.source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)