pub struct AngleTurn(pub f32);Expand description
Angle in turns (complete rotations).
See AngleUnits for more details.
§Equality
Equality is determined using about_eq with 0.00001 granularity.
Tuple Fields§
§0: f32Implementations§
Source§impl AngleTurn
impl AngleTurn
Sourcepub fn slerp(self, to: AngleTurn, factor: Factor) -> AngleTurn
pub fn slerp(self, to: AngleTurn, factor: Factor) -> AngleTurn
Spherical linear interpolation.
Always uses the shortest path from self to to.
The lerp linear interpolation always covers the numeric range between angles, so a transition from 358º to 1º
iterates over almost a full counterclockwise turn to reach the final value, slerp simply goes from 358º to 361º modulo
normalized.
Trait Implementations§
Source§impl AddAssign for AngleTurn
impl AddAssign for AngleTurn
Source§fn add_assign(&mut self, rhs: AngleTurn)
fn add_assign(&mut self, rhs: AngleTurn)
Performs the
+= operation. Read moreSource§impl<'de> Deserialize<'de> for AngleTurn
impl<'de> Deserialize<'de> for AngleTurn
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<AngleTurn, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<AngleTurn, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl From<AngleDegree> for AngleTurn
impl From<AngleDegree> for AngleTurn
Source§fn from(deg: AngleDegree) -> AngleTurn
fn from(deg: AngleDegree) -> AngleTurn
Converts to this type from the input type.
Source§impl From<AngleGradian> for AngleTurn
impl From<AngleGradian> for AngleTurn
Source§fn from(grad: AngleGradian) -> AngleTurn
fn from(grad: AngleGradian) -> AngleTurn
Converts to this type from the input type.
Source§impl From<AngleRadian> for AngleTurn
impl From<AngleRadian> for AngleTurn
Source§fn from(rad: AngleRadian) -> AngleTurn
fn from(rad: AngleRadian) -> AngleTurn
Converts to this type from the input type.
Source§impl From<AngleTurn> for AngleDegree
impl From<AngleTurn> for AngleDegree
Source§fn from(turn: AngleTurn) -> AngleDegree
fn from(turn: AngleTurn) -> AngleDegree
Converts to this type from the input type.
Source§impl From<AngleTurn> for AngleGradian
impl From<AngleTurn> for AngleGradian
Source§fn from(turn: AngleTurn) -> AngleGradian
fn from(turn: AngleTurn) -> AngleGradian
Converts to this type from the input type.
Source§impl From<AngleTurn> for AngleRadian
impl From<AngleTurn> for AngleRadian
Source§fn from(turn: AngleTurn) -> AngleRadian
fn from(turn: AngleTurn) -> AngleRadian
Converts to this type from the input type.
Source§impl FromStr for AngleTurn
Parses "##", "## turn", "## turns" and "##.turn()" where ## is a f32.
impl FromStr for AngleTurn
Parses "##", "## turn", "## turns" and "##.turn()" where ## is a f32.
Source§impl IntoVar<AngleDegree> for AngleTurn
impl IntoVar<AngleDegree> for AngleTurn
fn into_var(self) -> Var<AngleDegree>
Source§impl IntoVar<AngleGradian> for AngleTurn
impl IntoVar<AngleGradian> for AngleTurn
fn into_var(self) -> Var<AngleGradian>
Source§impl IntoVar<AngleRadian> for AngleTurn
impl IntoVar<AngleRadian> for AngleTurn
fn into_var(self) -> Var<AngleRadian>
Source§impl Ord for AngleTurn
impl Ord for AngleTurn
Source§impl PartialOrd for AngleTurn
impl PartialOrd for AngleTurn
Source§impl Serialize for AngleTurn
impl Serialize for AngleTurn
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
Source§impl SubAssign for AngleTurn
impl SubAssign for AngleTurn
Source§fn sub_assign(&mut self, rhs: AngleTurn)
fn sub_assign(&mut self, rhs: AngleTurn)
Performs the
-= operation. Read moreSource§impl Transitionable for AngleTurn
impl Transitionable for AngleTurn
impl Copy for AngleTurn
impl Eq for AngleTurn
impl IntoValue<AngleDegree> for AngleTurn
impl IntoValue<AngleGradian> for AngleTurn
impl IntoValue<AngleRadian> for AngleTurn
impl IntoValue<AngleTurn> for AngleDegree
impl IntoValue<AngleTurn> for AngleGradian
impl IntoValue<AngleTurn> for AngleRadian
Auto Trait Implementations§
impl Freeze for AngleTurn
impl RefUnwindSafe for AngleTurn
impl Send for AngleTurn
impl Sync for AngleTurn
impl Unpin for AngleTurn
impl UnwindSafe for AngleTurn
Blanket Implementations§
Source§impl<T> AnyVarValue for T
impl<T> AnyVarValue for T
Source§fn clone_boxed(&self) -> BoxAnyVarValue
fn clone_boxed(&self) -> BoxAnyVarValue
Clone the value.
Source§fn eq_any(&self, other: &(dyn AnyVarValue + 'static)) -> bool
fn eq_any(&self, other: &(dyn AnyVarValue + 'static)) -> bool
Gets if
self and other are equal.Source§fn try_swap(&mut self, other: &mut (dyn AnyVarValue + 'static)) -> bool
fn try_swap(&mut self, other: &mut (dyn AnyVarValue + 'static)) -> bool
Swap value with
other if both are of the same type.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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more