mirror of
https://github.com/GraphiteEditor/Graphite.git
synced 2025-12-23 10:11:54 +00:00
* Improve perf of path bool lib * Use swap remove * Use outer/inner bounding box for inclusion testing * Reuse allocations for hit testing * Use direct root finding for inclusion testing * Reuse bounding box * Use faster hash and specify capacities * Use hashmap based approach for find vertices * Unroll find_vertecies loop and use 32 bit positions * Tune initial vec capacities * Remove unused bounding boxes * Use smallvec for storing outgoing edges * Improve allocations for compute_minor * Use approximate bounding box for edge finding * Transition aabb to use glam vecs * Make find vertecies use 64 bit again this is slower but less likely to cause issues * Improve intersection candidate finding * Remove loop check in bit vec iter * Special case cubic line intersections * Optimize grid rounding and add debug output * Remove file write * Remove faulty line intersection * Fix grid rounding * Improve robustness and cleanaup code * Make elided lifetime explicit * Fix tests * Fix a boolean ops crash * Add comment --------- Co-authored-by: Keavon Chambers <keavon@keavon.com>
50 lines
836 B
TOML
50 lines
836 B
TOML
[package]
|
|
name = "path-bool"
|
|
version = "0.1.0"
|
|
rust-version = "1.85"
|
|
authors = ["Graphite Authors <contact@graphite.rs>", "Adam Platkevič"]
|
|
edition = "2024"
|
|
keywords = [
|
|
"bezier",
|
|
"curve",
|
|
"boolean",
|
|
"path",
|
|
"geometry",
|
|
"computational geometry",
|
|
"vector graphics",
|
|
"2d",
|
|
"graphics",
|
|
]
|
|
categories = ["graphics", "mathematics"]
|
|
license = "MIT OR Apache-2.0"
|
|
|
|
[features]
|
|
logging = ["parsing"]
|
|
parsing = []
|
|
default = ["parsing"]
|
|
|
|
[dependencies]
|
|
glam = "0.29.0"
|
|
regex = "1.10.6"
|
|
slotmap = "1.0.7"
|
|
lyon_geom = "1.0"
|
|
roots = "0.0.8"
|
|
rustc-hash = "2.0.0"
|
|
smallvec = "1.13.2"
|
|
|
|
[dev-dependencies]
|
|
glob = "0.3"
|
|
svg = "0.18"
|
|
resvg = "0.44"
|
|
image = "0.25"
|
|
|
|
# Required dependencies
|
|
criterion = { workspace = true }
|
|
|
|
# Benchmarks
|
|
[[bench]]
|
|
name = "painted_dreams"
|
|
harness = false
|
|
[[bench]]
|
|
name = "path_segment_intersection"
|
|
harness = false
|