From 8c1b1478cedff1fd9e0f3cf1d21ef7d8e33b48e4 Mon Sep 17 00:00:00 2001
From: CypherNaugh_0x <9931495+CypherNaught-0x@users.noreply.github.com>
Date: Sun, 11 Oct 2026 05:33:50 +0200
Subject: [PATCH] =?UTF-8?q?Joins=20and=20cuts=20of=20round=20pads,=20bosse?=
=?UTF-8?q?s=20and=20holes=20across=20a=20floor=20that=20falls=20a=20degre?=
=?UTF-8?q?e=20or=20two=20no=20longer=20fail:=20the=20B-rep=20results=20we?=
=?UTF-8?q?re=20right,=20but=20the=20plausibility=20check=20meshed=20them?=
=?UTF-8?q?=20without=20refinement,=20and=20where=20the=20shallow=20cut=20?=
=?UTF-8?q?trims=20a=20round=20side=20to=20a=20thin=20band=20the=20plain?=
=?UTF-8?q?=20mesh=20spans=20it=20with=20triangles=20cutting=20through=20t?=
=?UTF-8?q?he=20cylinder,=20so=20the=20check=20saw=20missing=20material=20?=
=?UTF-8?q?(0.8=20to=201.6=20%=20of=20samples=20misclassified),=20rejected?=
=?UTF-8?q?=20the=20result,=20and=20the=20planar=20fallback=20then=20refus?=
=?UTF-8?q?ed=20the=20round=20tool.=20The=20check=20now=20meshes=20the=20o?=
=?UTF-8?q?perands=20and=20the=20result=20with=20refinement=20on=20curved?=
=?UTF-8?q?=20faces=20(as=20measure=20does).=20Test:=20round=5Fpads=5Fcros?=
=?UTF-8?q?sing=5Fa=5Fshallow=5Ffall=20(a=201=C2=B0=20fall=20and=20a=202?=
=?UTF-8?q?=C2=B0=20four-face=20fall=20toward=20a=20drain)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
crates/kernel/src/ops.rs | 9 ++++--
crates/kernel/src/tests.rs | 59 ++++++++++++++++++++++++++++++++++++++
2 files changed, 65 insertions(+), 3 deletions(-)
diff --git a/crates/kernel/src/ops.rs b/crates/kernel/src/ops.rs
index 045f48ba..7b0318a8 100644
--- a/crates/kernel/src/ops.rs
+++ b/crates/kernel/src/ops.rs
@@ -249,9 +249,12 @@ fn boolean_whole(a: &Body, b: &Body, op: BoolOp) -> Result