Skip to main content

CustomGeomPoint

Enum CustomGeomPoint 

Source
pub enum CustomGeomPoint {
    MoveTo(f64, f64),
    LineTo(f64, f64),
    ArcTo {
        w_r: f64,
        h_r: f64,
        start_angle: f64,
        swing_angle: f64,
    },
    CubicBezTo(f64, f64, f64, f64, f64, f64),
    QuadBezTo(f64, f64, f64, f64),
    Close,
}
Expand description

A single drawing operation in a custom freeform shape path.

Coordinates are fractions of the shape’s bounding box: (0.0, 0.0) = top-left, (1.0, 1.0) = bottom-right.

§Example

use deckmint::types::CustomGeomPoint as CGP;
// Triangle
let pts = vec![
    CGP::MoveTo(0.5, 0.0),   // top-center
    CGP::LineTo(1.0, 1.0),   // bottom-right
    CGP::LineTo(0.0, 1.0),   // bottom-left
    CGP::Close,
];

Variants§

§

MoveTo(f64, f64)

Start of a sub-path at (x, y).

§

LineTo(f64, f64)

Straight line to (x, y).

§

ArcTo

Arc whose ellipse has radii (w_r, h_r) (fractions of shape size), starting at start_angle degrees and sweeping swing_angle degrees clockwise.

Fields

§w_r: f64
§h_r: f64
§start_angle: f64
§swing_angle: f64
§

CubicBezTo(f64, f64, f64, f64, f64, f64)

Cubic Bézier to end via control points cp1 and cp2. Fields: (cp1_x, cp1_y, cp2_x, cp2_y, end_x, end_y)

§

QuadBezTo(f64, f64, f64, f64)

Quadratic Bézier to end via control point cp. Fields: (cp_x, cp_y, end_x, end_y)

§

Close

Close the current sub-path (draws a straight line back to the last MoveTo).

Trait Implementations§

Source§

impl Clone for CustomGeomPoint

Source§

fn clone(&self) -> CustomGeomPoint

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 CustomGeomPoint

Source§

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

Formats the value using the given formatter. Read more

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