Skip to main content

Dash

Struct Dash 

Source
pub struct Dash {
    pub intervals: Vec<f32>,
    pub phase: f32,
}
Expand description

A dash pattern: alternating drawn and skipped lengths, and where to start.

Fields§

§intervals: Vec<f32>

Alternating drawn and skipped lengths, starting with a drawn one.

In the same space the path is in, so a pattern travels through the canvas transform with the geometry rather than staying fixed on screen.

§phase: f32

How far into the pattern the path starts.

Wrapped into one period, so any value is meaningful and an animation can simply keep adding to it.

Implementations§

Source§

impl Dash

Source

pub fn new(intervals: Vec<f32>, phase: f32) -> Self

Source

pub fn is_usable(&self) -> bool

Whether this pattern describes something that can be walked.

A pattern of nothing, of negative lengths, or of lengths that sum to zero has no period to advance through, and walking one would not terminate. Such a pattern is treated as no pattern at all: the path is drawn whole, which is the one behavior that cannot surprise anybody who got here by computing an interval that came out zero.

Trait Implementations§

Source§

impl Clone for Dash

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Dash

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for Dash

Source§

fn eq(&self, other: &Self) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for Dash

Auto Trait Implementations§

§

impl Freeze for Dash

§

impl RefUnwindSafe for Dash

§

impl Send for Dash

§

impl Sync for Dash

§

impl Unpin for Dash

§

impl UnsafeUnpin for Dash

§

impl UnwindSafe for Dash

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
where F: FnOnce(&Self) -> bool,

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
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.