feat(measure): add radius and angle tools with dynamic measurement overlay

(cherry picked from commit aac44906a3)
This commit is contained in:
turbuczn authored and Hakan Seven committed 2026-10-15 00:22:41 +03:00
1 parent 843cbcd607
commit 3c55e6d7e1
42 files changed
+1624 -53

No files matched your search

+4
View File
@@ -1163,6 +1163,7 @@ impl OpenCADStudio {
fn handle_cancel(&mut self, cancel: CmdResult) {
let i = self.active_tab;
self.tabs[i].measurement.clear();
let space_changed = matches!(cancel, CmdResult::CancelForSpaceChange);
self.tabs[i].scene.clear_preview_wire();
if !space_changed && self.tabs[i].suspended_cmd.is_some() {
@@ -1304,6 +1305,7 @@ impl OpenCADStudio {
}
fn handle_measurement(&mut self, msg: String) {
self.remember_measurement(&msg);
let i = self.active_tab;
self.tabs[i].active_cmd = None;
self.tabs[i].snap_result = None;
@@ -1315,6 +1317,7 @@ impl OpenCADStudio {
}
fn handle_report_measurement(&mut self, msg: String) {
self.remember_measurement(&msg);
let i = self.active_tab;
self.tabs[i].snap_result = None;
self.tabs[i].scene.clear_preview_wire();
@@ -1336,6 +1339,7 @@ impl OpenCADStudio {
}
fn handle_report_measurement_and_deselect(&mut self, msg: String) {
self.remember_measurement(&msg);
let i = self.active_tab;
self.tabs[i].snap_result = None;
self.tabs[i].scene.deselect_all();