Replace the Boolean Operations node's algorithm with the Linesweeper library (#2670)

* Attempt one-shot n-ary ops

* Make it not crash

* Try to remove more path_bool

* Add quantization

* Update to latest

* Nits

* Code review

---------

Co-authored-by: Keavon Chambers <keavon@keavon.com>
This commit is contained in:
jneem
2026-03-11 00:00:49 -05:00
committed by GitHub
parent 095c2a6d47
commit 58aae4f87b
5 changed files with 165 additions and 259 deletions

19
Cargo.lock generated
View File

@@ -202,6 +202,9 @@ name = "arrayvec"
version = "0.7.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50"
dependencies = [
"serde",
]
[[package]]
name = "as-raw-xcb-connection"
@@ -3391,6 +3394,19 @@ version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d4a5ff6bcca6c4867b1c4fd4ef63e4db7436ef363e0ad7531d1558856bae64f4"
[[package]]
name = "linesweeper"
version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8421b276e96af0ace5f3d8d2d165d0dea07fe764d2fe94ec06bb1acaf8a1e759"
dependencies = [
"arrayvec",
"kurbo",
"polycool",
"rustc-hash 2.1.1",
"smallvec",
]
[[package]]
name = "linux-raw-sys"
version = "0.9.4"
@@ -4289,10 +4305,11 @@ dependencies = [
"dyn-any",
"glam",
"graphic-types",
"linesweeper",
"log",
"node-macro",
"path-bool",
"serde",
"smallvec",
"tsify",
"vector-types",
"wasm-bindgen",