feat(solid history): Ctrl+click picks a composite's solid; show history draws them

Ctrl+click on a composite selects it with the solid under the cursor as
the one its palette and grips edit: the solid whose own surface passes
through the picked point. With its history shown, a composite draws the
edges of the solids its booleans joined, each where it sits.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Hakan SevenandClaude Opus 5.5 committed 2026-10-07 12:51:32 +03:00
1 parent 43bd5aa427
commit 33640e050d
4 files changed
+163 -1

No files matched your search

+11
View File
@@ -904,6 +904,17 @@ pub(crate) fn mesh_click_point<'a>(
mesh_click_result(cursor, meshes, view_rot, eye, bounds).map(|(_, _, point)| point)
}
/// The nearest mesh under the cursor and where the pick ray meets it.
pub(crate) fn mesh_click_handle_point<'a>(
cursor: Point,
meshes: impl Iterator<Item = MeshPickItem<'a>>,
view_rot: Mat4,
eye: glam::DVec3,
bounds: Rectangle,
) -> Option<(Handle, glam::DVec3)> {
mesh_click_result(cursor, meshes, view_rot, eye, bounds).map(|(_, handle, point)| (handle, point))
}
fn mesh_click_result<'a>(
cursor: Point,
meshes: impl Iterator<Item = MeshPickItem<'a>>,