fix: UCS FACE/OBJECT pick from the interactive prompt; reuse ocs_axes

Follow-up to #1341:
- interactive UCS offers Face / OBject; bare UCS OBJECT starts an entity pick
- one UcsPickCommand serves both FACE and OBJECT
- ucs_from_normal calls the existing arbitrary-axis helper instead of a copy
- prompt catalogue key and en-US text follow the new option list

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
Hakan SevenandClaude Fable 5.1 committed 2026-09-18 18:42:44 +03:00
1 parent 3ba4ab9e7f
commit 9978713acc
7 files changed
+50 -43

No files matched your search

+8 -4
View File
@@ -338,7 +338,7 @@ impl OpenCADStudio {
// surface point, so both entry points share the
// plane construction below.
None => {
let picker = crate::command::UcsFaceCommand;
let picker = crate::command::UcsPickCommand { face: true };
self.command_line.push_info(&picker.prompt());
self.tabs[i].active_cmd = Some(Box::new(picker));
}
@@ -386,9 +386,13 @@ impl OpenCADStudio {
})
.map(acadrust::Handle::new);
match target {
None => self
.command_line
.push_error(crate::t!("Usage: UCS OBJECT <handle>").as_ref()),
// Bare `UCS OBJECT` starts the pick; the click
// comes back through this arm with the handle.
None => {
let picker = crate::command::UcsPickCommand { face: false };
self.command_line.push_info(&picker.prompt());
self.tabs[i].active_cmd = Some(Box::new(picker));
}
Some(handle) => {
let built = self.tabs[i]
.scene
+2 -1
View File
@@ -739,9 +739,10 @@ inventory::submit!(crate::command::CommandRegistration {
"SELSIM",
// Draw a new object of the same type as the selected one. (#239)
"ADDSELECTED",
// Outline of origin planes, open sketch and solid bodies.
"BROWSER",
// Open and close a sketch: a drawing plane, a square-on view and
// snapping, held together until the profile is done.
"BROWSER",
"CREATESKETCH",
"FINISHSKETCH",
"SHEETSET",