Skip to main content

CurveFamily

Enum CurveFamily 

Source
pub enum CurveFamily {
    MaurerRose,
    Lissajous,
    Hypotrochoid,
    Superformula,
    Harmonograph,
}
Expand description

Which parametric curve family a [curve] preset draws; unknown names are rejected at load.

A family is a walk and a fit verdict, not a scene: each variant answers curves::arm, and parametric_curve draws whatever that returns without naming a family itself. n, d and phase are read with a family-specific meaning (the attractor precedent, where a..d mean different things per family).

Variants§

§

MaurerRose

The Maurer rose — sin(n * theta) walked at a fixed angular step.

§

Lissajous

The Lissajous figure — x = sin(n t + phase), y = sin(d t).

§

Hypotrochoid

The spirograph: a circle rolling inside (hypotrochoid) or outside (epitrochoid) a fixed one, traced by a pen at pen rolling radii from its centre. The sign of n picks which — positive rolls inside — so one family name covers both.

§

Superformula

Gielis’ superformula — starfish, flowers, polygons and rounded shells from sym, sharpness, lobe and a d that skews the lobes.

§

Harmonograph

The damped two-pendulum harmonograph — a Lissajous figure whose amplitude dies away by decay along the trace, so it spirals inward rather than closing.

Implementations§

Source§

impl CurveFamily

Source

pub const ALL: [CurveFamily; 5]

Every family, in roster order — the closed set, and the list the schema export renders rather than restating.

Source

pub fn from_name(name: &str) -> Option<Self>

Parse a [curve] family name, or None if unknown.

Source

pub fn as_str(self) -> &'static str

The [curve] family name this parses from — from_name’s inverse.

Trait Implementations§

Source§

impl Clone for CurveFamily

Source§

fn clone(&self) -> CurveFamily

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 CurveFamily

Source§

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

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

impl PartialEq for CurveFamily

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for CurveFamily

Source§

impl Eq for CurveFamily

Source§

impl StructuralPartialEq for CurveFamily

Auto Trait Implementations§

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
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
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> 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 = Infallible

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

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

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

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

§

impl<T> WasmNotSend for T
where T: Send,

§

impl<T> WasmNotSendSync for T
where T: WasmNotSend + WasmNotSync,

§

impl<T> WasmNotSync for T
where T: Sync,