Repository navigation
Releases
Releases · KarpelesLab/polyclip
v0.0.6
Added
- add Prepared geometries for repeated DRC queries
Fixed
- avoid usize overflow when choosing sweep bands on 32-bit targets
Other
- Prepared is Send + Sync and shareable across threads
- compact grid and bucket sort when simplifying polygon sets
- sort validation keys by buckets of x
- rebuild the ZoneFill result tree by moving unchanged rings
- triangulate with bucket sorts and a narrow exact in-circle test
- clip open paths cluster by cluster
- describe parallelism within a boolean cluster, update circles numbers
- keep small inputs off the parallel grid build; run single pieces inline
- group grid cell lists by cell range instead of sorting; faster parallel concat
- keep edge copies in the sweep status for cache-friendly searches
- build the uniform noding grid's cell lists and leaves in parallel
- replace sweep status edges in place, parallelize remaining large maps
- parallel noding, merge and sweep within one boolean cluster
- check fast offset paths against the reference pipeline
- pass simple raw offset curves through, build raw curves in parallel
v0.0.5
Other
- make the one-piece boolean switch thread-local
- check clustered booleans against the one-piece computation
- compute booleans cluster by cluster, lone simple rings directly
- skip normalizing canonical input in offsets; fused opening/closing
- add cadlab GND_In1 zone fill corpus with benchmark
v0.0.4
Added
- incremental zone refill engine
- arc-preserving booleans on curved shapes
Other
- index polygon sets when testing component containment
- mention incremental ZoneFill
- benchmark incremental zone refill
- mention curved_boolean in README and crate overview
- Merge branch 'worktree-agent-aa4656f3741b6d483'
v0.0.3
Fixed
- simplify_polygons no longer depends on polygon order or ring start
- triangulate polygons sharing part of an edge
- exact contour orientation for curved shapes; arc direction from the ring in arcs_from_tags
- range-check every vertex (holes included) in infallible queries
Other
- un-ignore second adversarial review regressions
- handle many edges meeting at one vertex without quadratic pair tests
- second adversarial review
v0.0.2
Added
- arcs_from_tags rebuilds arcs from tagged boolean/offset output
Fixed
- contains() on paths ignores the path's own self-crossings
- Minkowski convex shortcut no longer accepts self-intersecting stars
- keep Nearest arc approximations within tolerance; accept nearly flat arcs
- nest rings by sweep when rings touch at vertices
- never overflow on out-of-range query input; exact centroid and trapezoid areas
Other
- operations overview and provenance helper in crate docs
- list known limitations
- refresh benchmark numbers
- remove remaining quadratic and memory cliffs
- adversarial regression tests
- bucket the arrangement sort by x before sorting buckets
- bound the candidate window in exact distance search
- update zone fill and offset timings
- move arcs_from_tags above the test module
- compute ring nesting from regions tracked during the main sweep
v0.0.1
Added
- optional rayon feature for internal parallelism
- arc/circle approximation with side selection and polygon/path offsetting
- exact queries (locate, intersects, contains, area, centroid) and validity checks
- snap-rounding noder, plane sweep and boolean operations
Fixed
- reject i64::MIN in opening/closing, range-check shapes and single-vertex paths
Other
- refresh performance table, document rayon and verification; test Send + Sync
- trim concave offset joins at the edge intersection when safe
- satisfy clippy type_complexity in leaf precompute
- end-to-end PCB-like zone fill pipeline
- lazy, leaf-local snap rounding and assembly without re-sorting
- adaptive spatial index for noding and blocked sweep status
- Merge branch 'worktree-agent-a9b88d6dabd25a4db'
- run the Clipper2 differential tests on push and pull requests
- add differential tests against Clipper2 in a standalone oracle crate
- check that the benchmarks compile
- add criterion benchmarks for the spec workloads
- run the fuzz targets weekly and on demand
- add cargo-fuzz targets for every public operation
- hash-based ring linking, split noder phases, float pre-filters for pixel tests
- grid-based noder, single sweep-order sort, float-filtered crossing rounding
- add CI, crates.io, docs.rs and license badges
v0.0.0
chore: Release package polyclip version 0.0.0