pub struct Path { /* private fields */ }
Expand description

A Bezier path.

Can be created via PathBuilder. Where PathBuilder can be created from the Path using clear to reuse the allocation.

Path is immutable and uses compact storage, where segment types and numbers are stored separately. Use can access path segments via Path::verbs and Path::points, or via Path::segments

Guarantees

  • Has a valid, precomputed bounds.
  • All points are finite.
  • Has at least two segments.
  • Each contour starts with a MoveTo.
  • No duplicated Move.
  • No duplicated Close.
  • Zero-length contours are allowed.

Implementations

Converts the current path into a dashed one.

resolution_scale can be obtained via compute_resolution_scale.

Returns the number of segments in the path.

Checks if path is empty.

Returns the bounds of the path’s points.

The value is already calculated.

Returns an internal vector of verbs.

Returns an internal vector of points.

Returns a transformed in-place path.

Some points may become NaN/inf therefore this method can fail.

Returns an iterator over path’s segments.

Clears the path and returns a PathBuilder that will reuse an allocated memory.

Returns a stoked path.

resolution_scale can be obtained via compute_resolution_scale.

If you plan stroking multiple paths, you can try using PathStroker which will preserve temporary allocations required during stroking. This might improve performance a bit.

Trait Implementations

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
This method tests for self and other values to be equal, and is used by ==. Read more
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.