40 releases (7 stable)

1.0.6 Oct 23, 2024
1.0.5 May 15, 2024
1.0.4 Jul 15, 2023
1.0.3 Dec 7, 2022
0.3.2 Sep 22, 2016

#489 in Graphics APIs

Download history 25786/week @ 2024-08-19 27322/week @ 2024-08-26 28125/week @ 2024-09-02 27301/week @ 2024-09-09 28331/week @ 2024-09-16 30072/week @ 2024-09-23 31649/week @ 2024-09-30 26695/week @ 2024-10-07 31883/week @ 2024-10-14 34891/week @ 2024-10-21 36416/week @ 2024-10-28 37992/week @ 2024-11-04 24843/week @ 2024-11-11 25495/week @ 2024-11-18 26415/week @ 2024-11-25 24356/week @ 2024-12-02

102,580 downloads per month
Used in 342 crates (31 directly)

MIT/Apache

485KB
12K SLoC

lyon::path

Path data structures and tools for vector graphics.

crates.io documentation

lyon_path can be used as a standalone crate or as part of lyon via the lyon::path module.


lib.rs:

Data structures and traits to work with paths (vector graphics).

To build and consume paths, see the builder and iterator modules.

This crate is reexported in lyon.

Examples

use lyon_path::Path;
use lyon_path::math::{point};
use lyon_path::builder::*;

// Create a builder object to build the path.
let mut builder = Path::builder();

// Build a simple path.
let mut builder = Path::builder();
builder.begin(point(0.0, 0.0));
builder.line_to(point(1.0, 2.0));
builder.line_to(point(2.0, 0.0));
builder.line_to(point(1.0, 1.0));
builder.close();

// Generate the actual path object.
let path = builder.build();

for event in &path {
    println!("{:?}", event);
}

lyon_path traits reexported here for convenience. f32 version of the lyon_geom types used everywhere. Most other lyon crates reexport them.

Dependencies

~1.5MB
~27K SLoC