split_faces: exact sketch segments, a face map, and misses named
For solvecraft-params' Split Face feature: - Sketch tools are chains of Seg2. A single line splits by its plane and a single arc by its cylinder, exactly (a circular edge on a planar face); longer chains and splines follow the curve. - split_faces_with_map gives the source face of each face of the result. - A listed face the tool misses is an error naming it (split_any keeps the lenient form for Trim). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01AS5Tn3xieewUSg3uxrMVdL
This commit is contained in:
1 parent
998410de56
commit
7027382667
3 files changed
+125
-32
No files matched your search
@@ -463,7 +463,7 @@ pub fn trim(body: &Body, tool: &crate::SplitTool, keep: Vec3) -> Result<Body> {
|
||||
body.require_brep("trim")?;
|
||||
let total = body.solid.face_iter().count();
|
||||
let all: Vec<usize> = (0..total).collect();
|
||||
let split = crate::split_faces(body, &all, tool)?;
|
||||
let (split, _) = crate::splitface::split_any(body, &all, tool)?;
|
||||
let side = crate::splitface::side_of_point(tool, keep)?;
|
||||
guard("trim", || {
|
||||
let mut kept = Vec::new();
|
||||
|
||||
Reference in new issue
Block a user