forked from 1b-agent/fieldcraft-upstream
geometry.face.absorb: tiny and sliver faces into a neighbour (#506)
A face merge may keep one of its faces' names (Merge::into, model FaceMerge::into): absorbing a tiny face leaves the neighbour by its own name, so sets on it still select it. Shape::absorbing_neighbour finds the face a tiny one shares the longest edges with. geometry.face.absorb absorbs one face (into a named or the best neighbour) or, from_check, every small and sliver face the last geometry.check marked; check marks now carry the small face they found. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UhhZMBTviDQxZvwnyP89fo
This commit is contained in:
1 parent
ce02d263c7
commit
58174ba168
14 files changed
+283
-27
No files matched your search
@@ -226,6 +226,9 @@ pub struct GeometryMark {
|
||||
/// A short edge's polyline (empty for the other kinds).
|
||||
pub path: Vec<[f64; 3]>,
|
||||
pub at: [f64; 3],
|
||||
/// A small or sliver face, by body and persistent name: what `geometry.face.absorb`
|
||||
/// `from_check` absorbs.
|
||||
pub small: Option<(String, String)>,
|
||||
}
|
||||
|
||||
/// The findings of the last `geometry.check`, while the design it checked is still open.
|
||||
|
||||
Reference in new issue
Block a user