Feat: JOIN command — merge collinear Lines or co-circular Arcs

Selection-gathering mode: select objects, press Enter to apply.
- Lines: checks collinearity + no-gap, merges into single line span
- Arcs: checks same center/radius + contiguous angles, merges to Arc or Circle
- Uses CmdResult::JoinEntities; geometry computed in cmd_result from document

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Hakan SevenandClaude Sonnet 4.6 committed 2026-04-02 23:41:53 +03:00
1 parent 4b8ae08a19
commit 641cc2d70b
5 files changed
+246 -2

No files matched your search

+2
View File
@@ -97,6 +97,8 @@ pub enum CmdResult {
Measurement(String),
/// Break `handle` at points `p1` and `p2`; replace with computed fragments.
BreakEntity { handle: Handle, p1: Vec3, p2: Vec3 },
/// Attempt to join the given entities into fewer merged entities.
JoinEntities(Vec<Handle>),
}
// ── Trait ─────────────────────────────────────────────────────────────────