pub struct PathBuilder<Unit, const TEXTURED: bool> { /* private fields */ }
Expand description

Builds a Path.

Implementations§

source§

impl<Unit> PathBuilder<Unit, false>
where Unit: Copy,

source

pub fn new(start_at: impl Into<Endpoint<Unit>>) -> Self

Creates a new path with the initial position start_at.

source

pub fn reset(&mut self, start_at: impl Into<Endpoint<Unit>>)

Clears this builder to a state as if it had just been created with new().

source

pub fn line_to(self, end_at: impl Into<Endpoint<Unit>>) -> Self

Create a straight line from the current location to end_at.

source

pub fn quadratic_curve_to( self, control: ControlPoint<Unit>, end_at: impl Into<Endpoint<Unit>> ) -> Self

Create a quadratic curve from the current location to end_at using control as the curve’s control point.

source

pub fn cubic_curve_to( self, control1: ControlPoint<Unit>, control2: ControlPoint<Unit>, end_at: impl Into<Endpoint<Unit>> ) -> Self

Create a cubic curve from the current location to end_at using control1 and control2 as the curve’s control points.

source

pub fn arc( self, center: impl Into<Endpoint<Unit>>, radii: Size<Unit>, sweep: Angle ) -> Self
where Unit: FloatConversion<Float = f32>,

Add a clockwise arc starting at the current location.

The arc will be drawn for an oval of size radii. The amount of rotation the arc will be drawn is controlled by sweep.

source

pub fn arc_counter( self, center: impl Into<Endpoint<Unit>>, radii: Size<Unit>, sweep: Angle ) -> Self
where Unit: FloatConversion<Float = f32>,

Add a counter-clockwise arc starting at the current location.

The arc will be drawn for an oval of size radii. The amount of rotation the arc will be drawn is controlled by sweep.

source§

impl<Unit> PathBuilder<Unit, true>
where Unit: Copy,

source

pub fn new_textured( start_at: impl Into<Endpoint<Unit>>, texture: Point<UPx> ) -> Self

Creates a new path with the initial position start_at.

source

pub fn reset( &mut self, start_at: impl Into<Endpoint<Unit>>, texture: Point<UPx> )

Clears this builder to a state as if it had just been created with new_textured().

source

pub fn line_to( self, end_at: impl Into<Endpoint<Unit>>, texture: Point<UPx> ) -> Self

Create a straight line from the current location to end_at.

source

pub fn quadratic_curve_to( self, control: ControlPoint<Unit>, end_at: impl Into<Endpoint<Unit>>, texture: Point<UPx> ) -> Self

Create a quadratic curve from the current location to end_at using control as the curve’s control point.

source

pub fn cubic_curve_to( self, control1: ControlPoint<Unit>, control2: ControlPoint<Unit>, end_at: impl Into<Endpoint<Unit>>, texture: Point<UPx> ) -> Self

Create a cubic curve from the current location to end_at using control1 and control2 as the curve’s control points.

source

pub fn arc( self, center: Point<Unit>, radii: Size<Unit>, sweep: Angle, texture: impl Into<Endpoint<UPx>> ) -> Self
where Unit: FloatConversion<Float = f32>,

Add a clockwise arc starting at the current location.

The arc will be drawn for an oval of size radii. The amount of rotation the arc will be drawn is controlled by sweep.

source

pub fn arc_counter( self, center: Point<Unit>, radii: Size<Unit>, sweep: Angle, texture: impl Into<Endpoint<UPx>> ) -> Self
where Unit: FloatConversion<Float = f32>,

Add a counter-clockwise arc starting at the current location.

The arc will be drawn for an oval of size radii. The amount of rotation the arc will be drawn is controlled by sweep.

source§

impl<Unit, const TEXTURED: bool> PathBuilder<Unit, TEXTURED>
where Unit: Copy,

source

pub fn build(self) -> Path<Unit, TEXTURED>

Returns the built path.

source

pub fn close(self) -> Path<Unit, TEXTURED>

Closes the path, connecting the current location to the shape’s starting location.

Trait Implementations§

source§

impl<Unit> Default for PathBuilder<Unit, false>
where Unit: Default + Copy,

source§

fn default() -> Self

Returns the “default value” for a type. Read more
source§

impl<Unit, const TEXTURED: bool> From<Path<Unit, TEXTURED>> for PathBuilder<Unit, TEXTURED>
where Unit: Default,

source§

fn from(path: Path<Unit, TEXTURED>) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl<Unit, const TEXTURED: bool> Freeze for PathBuilder<Unit, TEXTURED>
where Unit: Freeze,

§

impl<Unit, const TEXTURED: bool> RefUnwindSafe for PathBuilder<Unit, TEXTURED>
where Unit: RefUnwindSafe,

§

impl<Unit, const TEXTURED: bool> Send for PathBuilder<Unit, TEXTURED>
where Unit: Send,

§

impl<Unit, const TEXTURED: bool> Sync for PathBuilder<Unit, TEXTURED>
where Unit: Sync,

§

impl<Unit, const TEXTURED: bool> Unpin for PathBuilder<Unit, TEXTURED>
where Unit: Unpin,

§

impl<Unit, const TEXTURED: bool> UnwindSafe for PathBuilder<Unit, TEXTURED>
where Unit: UnwindSafe + RefUnwindSafe,

Blanket Implementations§

source§

impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S
where T: Real + Zero + Arithmetics + Clone, Swp: WhitePoint<T>, Dwp: WhitePoint<T>, D: AdaptFrom<S, Swp, Dwp, T>,

source§

fn adapt_into_using<M>(self, method: M) -> D
where M: TransformMatrix<T>,

Convert the source color to the destination color using the specified method.
source§

fn adapt_into(self) -> D

Convert the source color to the destination color using the bradford method by default.
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, C> ArraysFrom<C> for T
where C: IntoArrays<T>,

source§

fn arrays_from(colors: C) -> T

Cast a collection of colors into a collection of arrays.
source§

impl<T, C> ArraysInto<C> for T
where C: FromArrays<T>,

source§

fn arrays_into(self) -> C

Cast this collection of arrays into a collection of colors.
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<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for U
where T: FromCam16Unclamped<WpParam, U>,

§

type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar

The number type that’s used in parameters when converting.
source§

fn cam16_into_unclamped( self, parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar> ) -> T

Converts self into C, using the provided parameters.
§

impl<A> Cast for A

§

fn cast<To>(self) -> To
where To: CastFrom<A>,

Casts self to the To type. This may be a lossy operation.
§

impl<A> CastFrom<A> for A

§

fn from_cast(from: A) -> A

Returns from as Self.
§

impl<A, B> CastInto<A> for B
where A: CastFrom<B>,

§

fn cast_into(self) -> A

Returns self as To.
source§

impl<T, C> ComponentsFrom<C> for T
where C: IntoComponents<T>,

source§

fn components_from(colors: C) -> T

Cast a collection of colors into a collection of color components.
§

impl<T> Downcast<T> for T

§

fn downcast(&self) -> &T

§

impl<T> Downcast for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
§

fn as_any(&self) -> &(dyn Any + 'static)

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s.
§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
§

impl<T> DowncastSync for T
where T: Any + Send + Sync,

§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Send + Sync>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> FromAngle<T> for T

source§

fn from_angle(angle: T) -> T

Performs a conversion from angle.
source§

impl<T, U> FromStimulus<U> for T
where U: IntoStimulus<T>,

source§

fn from_stimulus(other: U) -> T

Converts other into Self, while performing the appropriate scaling, rounding and clamping.
§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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, U> IntoAngle<U> for T
where U: FromAngle<T>,

source§

fn into_angle(self) -> U

Performs a conversion into T.
source§

impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for U
where T: Cam16FromUnclamped<WpParam, U>,

§

type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar

The number type that’s used in parameters when converting.
source§

fn into_cam16_unclamped( self, parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar> ) -> T

Converts self into C, using the provided parameters.
source§

impl<T, U> IntoColor<U> for T
where U: FromColor<T>,

source§

fn into_color(self) -> U

Convert into T with values clamped to the color defined bounds Read more
source§

impl<T, U> IntoColorUnclamped<U> for T
where U: FromColorUnclamped<T>,

source§

fn into_color_unclamped(self) -> U

Convert into T. The resulting color might be invalid in its color space Read more
source§

impl<T> IntoStimulus<T> for T

source§

fn into_stimulus(self) -> T

Converts self into T, while performing the appropriate scaling, rounding and clamping.
source§

impl<T, C> TryComponentsInto<C> for T
where C: TryFromComponents<T>,

§

type Error = <C as TryFromComponents<T>>::Error

The error for when try_into_colors fails to cast.
source§

fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>

Try to cast this collection of color components into a collection of colors. Read more
source§

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

§

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

§

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

impl<T, U> TryIntoColor<U> for T
where U: TryFromColor<T>,

source§

fn try_into_color(self) -> Result<U, OutOfBounds<U>>

Convert into T, returning ok if the color is inside of its defined range, otherwise an OutOfBounds error is returned which contains the unclamped color. Read more
source§

impl<C, U> UintsFrom<C> for U
where C: IntoUints<U>,

source§

fn uints_from(colors: C) -> U

Cast a collection of colors into a collection of unsigned integers.
source§

impl<C, U> UintsInto<C> for U
where C: FromUints<U>,

source§

fn uints_into(self) -> C

Cast this collection of unsigned integers into a collection of colors.
§

impl<T> Upcast<T> for T

§

fn upcast(&self) -> Option<&T>

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

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,