pub trait SetStroke: Sized {
Show 22 methods
// Required method
fn stroke_options_mut(&mut self) -> &mut StrokeOptions;
// Provided methods
fn stroke_opts(self, opts: StrokeOptions) -> Self { ... }
fn start_cap(self, cap: LineCap) -> Self { ... }
fn end_cap(self, cap: LineCap) -> Self { ... }
fn caps(self, cap: LineCap) -> Self { ... }
fn start_cap_butt(self) -> Self { ... }
fn start_cap_square(self) -> Self { ... }
fn start_cap_round(self) -> Self { ... }
fn end_cap_butt(self) -> Self { ... }
fn end_cap_square(self) -> Self { ... }
fn end_cap_round(self) -> Self { ... }
fn caps_butt(self) -> Self { ... }
fn caps_square(self) -> Self { ... }
fn caps_round(self) -> Self { ... }
fn join(self, join: LineJoin) -> Self { ... }
fn join_miter(self) -> Self { ... }
fn join_miter_clip(self) -> Self { ... }
fn join_round(self) -> Self { ... }
fn join_bevel(self) -> Self { ... }
fn stroke_weight(self, stroke_weight: f32) -> Self { ... }
fn miter_limit(self, limit: f32) -> Self { ... }
fn stroke_tolerance(self, tolerance: f32) -> Self { ... }
}
Expand description
Nodes that support stroke tessellation.
This trait allows the Drawing
context to automatically provide an implementation of the
following builder methods for all primitives that provide some stroke tessellation options.
Required Methods§
sourcefn stroke_options_mut(&mut self) -> &mut StrokeOptions
fn stroke_options_mut(&mut self) -> &mut StrokeOptions
Provide a mutable reference to the StrokeOptions
field.
Provided Methods§
sourcefn stroke_opts(self, opts: StrokeOptions) -> Self
fn stroke_opts(self, opts: StrokeOptions) -> Self
Specify the whole set of stroke tessellation options.
sourcefn start_cap_butt(self) -> Self
fn start_cap_butt(self) -> Self
The stroke for each sub-path does not extend beyond its two endpoints. A zero length sub-path will therefore not have any stroke.
sourcefn start_cap_square(self) -> Self
fn start_cap_square(self) -> Self
At the end of each sub-path, the shape representing the stroke will be extended by a rectangle with the same width as the stroke width and whose length is half of the stroke width. If a sub-path has zero length, then the resulting effect is that the stroke for that sub-path consists solely of a square with side length equal to the stroke width, centered at the sub-path’s point.
sourcefn start_cap_round(self) -> Self
fn start_cap_round(self) -> Self
At each end of each sub-path, the shape representing the stroke will be extended by a half circle with a radius equal to the stroke width. If a sub-path has zero length, then the resulting effect is that the stroke for that sub-path consists solely of a full circle centered at the sub-path’s point.
sourcefn end_cap_butt(self) -> Self
fn end_cap_butt(self) -> Self
The stroke for each sub-path does not extend beyond its two endpoints. A zero length sub-path will therefore not have any stroke.
sourcefn end_cap_square(self) -> Self
fn end_cap_square(self) -> Self
At the end of each sub-path, the shape representing the stroke will be extended by a rectangle with the same width as the stroke width and whose length is half of the stroke width. If a sub-path has zero length, then the resulting effect is that the stroke for that sub-path consists solely of a square with side length equal to the stroke width, centered at the sub-path’s point.
sourcefn end_cap_round(self) -> Self
fn end_cap_round(self) -> Self
At each end of each sub-path, the shape representing the stroke will be extended by a half circle with a radius equal to the stroke width. If a sub-path has zero length, then the resulting effect is that the stroke for that sub-path consists solely of a full circle centered at the sub-path’s point.
sourcefn caps_butt(self) -> Self
fn caps_butt(self) -> Self
The stroke for each sub-path does not extend beyond its two endpoints. A zero length sub-path will therefore not have any stroke.
sourcefn caps_square(self) -> Self
fn caps_square(self) -> Self
At the end of each sub-path, the shape representing the stroke will be extended by a rectangle with the same width as the stroke width and whose length is half of the stroke width. If a sub-path has zero length, then the resulting effect is that the stroke for that sub-path consists solely of a square with side length equal to the stroke width, centered at the sub-path’s point.
sourcefn caps_round(self) -> Self
fn caps_round(self) -> Self
At each end of each sub-path, the shape representing the stroke will be extended by a half circle with a radius equal to the stroke width. If a sub-path has zero length, then the resulting effect is that the stroke for that sub-path consists solely of a full circle centered at the sub-path’s point.
sourcefn join(self, join: LineJoin) -> Self
fn join(self, join: LineJoin) -> Self
The way in which lines are joined at the vertices, matching the SVG spec.
Default value is MiterClip
.
sourcefn join_miter(self) -> Self
fn join_miter(self) -> Self
A sharp corner is to be used to join path segments.
sourcefn join_miter_clip(self) -> Self
fn join_miter_clip(self) -> Self
Same as a join_miter
, but if the miter limit is exceeded, the miter is clipped at a miter
length equal to the miter limit value multiplied by the stroke width.
sourcefn join_round(self) -> Self
fn join_round(self) -> Self
A round corner is to be used to join path segments.
sourcefn join_bevel(self) -> Self
fn join_bevel(self) -> Self
A bevelled corner is to be used to join path segments. The bevel shape is a triangle that fills the area between the two stroked segments.
sourcefn stroke_weight(self, stroke_weight: f32) -> Self
fn stroke_weight(self, stroke_weight: f32) -> Self
The total stroke_weight (aka width) of the line.
sourcefn miter_limit(self, limit: f32) -> Self
fn miter_limit(self, limit: f32) -> Self
Describes the limit before miter lines will clip, as described in the SVG spec.
Must be greater than or equal to 1.0
.
sourcefn stroke_tolerance(self, tolerance: f32) -> Self
fn stroke_tolerance(self, tolerance: f32) -> Self
Maximum allowed distance to the path when building an approximation.