fix(kernel): preserve intentional Split Face lines in contact joins (#782)

Intentional Split Face lines survive a join with partial planar contact, so the far face stays in two pieces. Follow-up to #704 / #674.
This commit is contained in:
selune authored and GitHub committed 2026-10-13 12:46:34 -04:00
1 parent beca7eb126
commit 293d660d6c
6 files changed
+120 -1

No files matched your search

+8
View File
@@ -97,6 +97,14 @@ fixes below (sound face pushes, no panics in the boolean's final assembly).
### Fixed
- Back-to-back contact joins preserve intentional Split Face boundaries, including on
faces away from the contact. The glue pass retains their lines during healing and in
the resulting body for subsequent operations. Partial circular-contact regressions
cover offsets, rotation, operand order, volume, area and history; the seed-16 pattern
also runs in the ordinary engine suite with analytic volume and area checks.
Imprinting visits a shared analytic support only once: the two side faces of a
cylinder must not recut the same outline into redundant arcs.
- **Shell corners where a curved face meets another at an angle** (the biggest cause, 215 of
the 363 failed designs before). Moving a vertex took one linear step, exact only for planes;
a cylinder meeting a plane at an angle (a shallow arc side) landed off the moved surface.