ui: draw size controls in the viewport, pick their faces (#435)

Faces and bodies under a size control are tinted, a box drawn as its
edges and a sphere as a translucent ball, each labelled with its name
and size. The Local Size form takes the selected faces.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UhhZMBTviDQxZvwnyP89fo
This commit is contained in:
jyvikoandClaude Opus 5.5 authored and Irakli Kourtis committed 2026-10-16 17:08:27 -04:00
1 parent b62be1ada6
commit 030799dfc8
4 files changed
+73 -4

No files matched your search

+2 -1
View File
@@ -1153,6 +1153,7 @@ impl ModelApp {
datums.union(scene::datum_preview(&mut s, d, &self.display.1.bounds, &t));
}
scene::seeds(&mut s, &self.session.model, &self.pick.names, &self.display.1, &t);
scene::sizes(&mut s, &self.session.model, &self.pick.names, &self.display.1, &t);
}
self.scene = (Some(key), s, datums);
}
@@ -1822,7 +1823,7 @@ impl ModelApp {
selection::Target::ExtrudeFaces => selection::with_extrude_faces(&params, &self.pick.selection)
.ok_or("no face is selected: pick the source face, then the target surface (Select: Faces)")?,
selection::Target::Faces => {
selection::with_faces(&params, &self.pick.selection).ok_or("no face is selected: pick the faces to relax (Select: Faces)")?
selection::with_faces(&params, &self.pick.selection).ok_or("no face is selected: pick the faces (Select: Faces)")?
}
selection::Target::Bodies => {
let bodies = selection::bodies(&self.pick.selection).ok_or("no geometry is selected: pick cells with Select: Bodies")?;