pub struct Stroke {
pub width: f32,
pub paint: Paint,
pub line_cap: LineCap,
pub line_join: LineJoin,
pub miter_limit: f32,
pub dash: Option<DashPattern>,
pub opacity: f32,
}Expand description
Stroke properties for geometry outlines.
Fields§
§width: f32Stroke width in logical pixels
paint: PaintPaint for the stroke color/gradient
line_cap: LineCapLine cap style
line_join: LineJoinLine join style
miter_limit: f32Miter limit for miter joins
dash: Option<DashPattern>Optional dash pattern
opacity: f32Opacity multiplier (0.0 to 1.0)
Implementations§
Source§impl Stroke
impl Stroke
Sourcepub fn from_paint(paint: Paint, width: f32) -> Self
pub fn from_paint(paint: Paint, width: f32) -> Self
Create a stroke from a paint.
Sourcepub fn with_line_cap(self, cap: LineCap) -> Self
pub fn with_line_cap(self, cap: LineCap) -> Self
Set the line cap style.
Sourcepub fn with_line_join(self, join: LineJoin) -> Self
pub fn with_line_join(self, join: LineJoin) -> Self
Set the line join style.
Sourcepub fn with_miter_limit(self, limit: f32) -> Self
pub fn with_miter_limit(self, limit: f32) -> Self
Set the miter limit.
Sourcepub fn with_dash(self, pattern: DashPattern) -> Self
pub fn with_dash(self, pattern: DashPattern) -> Self
Set a dash pattern.
Sourcepub fn with_opacity(self, opacity: f32) -> Self
pub fn with_opacity(self, opacity: f32) -> Self
Set the opacity.
Sourcepub fn effective_color(&self) -> Option<Color>
pub fn effective_color(&self) -> Option<Color>
Get the effective color (for solid strokes).
Sourcepub fn is_visible(&self) -> bool
pub fn is_visible(&self) -> bool
Check if the stroke is visible.
Trait Implementations§
impl StructuralPartialEq for Stroke
Auto Trait Implementations§
impl Freeze for Stroke
impl RefUnwindSafe for Stroke
impl Send for Stroke
impl Sync for Stroke
impl Unpin for Stroke
impl UnwindSafe for Stroke
Blanket Implementations§
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,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn 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.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
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.Source§fn as_any(&self) -> &(dyn Any + 'static)
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.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
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.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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