fix(dyn-input): correct Y coordinate, label by prompt type — #27

DYN overlay artık ekran-yukarı için world Y'yi (w.y) gösteriyor; eskiden
w.z kullanıldığı için Z-up sahnede top/3D görünümde Y hep 0 görünüyordu
(#27).

Ayrıca overlay etiketi aktif komutun o anki sorusuna göre biçimleniyor:
yeni DynField (Point / Distance / Angle) trait metodu eklendi. CIRCLE
yarıçap adımında 'd=...', ROTATE açı adımında '<...°', diğer nokta
adımlarında koordinat / polar (d + açı) gösteriliyor.

Co-Authored-By: Claude Opus 4.7 <[email protected]>
This commit is contained in:
Hakan SevenandClaude Opus 4.7 committed 2026-05-27 13:41:54 +03:00
1 parent 874226bd43
commit 1fc73ba8b0
4 files changed
+72 -11

No files matched your search

+7 -1
View File
@@ -11,7 +11,7 @@
use acadrust::types::Vector3;
use acadrust::{Circle, EntityType};
use crate::command::{CadCommand, CmdResult, TangentObject};
use crate::command::{CadCommand, CmdResult, DynField, TangentObject};
use crate::modules::home::defaults;
use crate::modules::IconKind;
use crate::scene::wire_model::WireModel;
@@ -183,6 +183,12 @@ impl CadCommand for CircleCommand {
}
None
}
fn dyn_field(&self) -> DynField {
match self.step {
StepCR::Center => DynField::Point,
StepCR::Radius(_) => DynField::Distance,
}
}
}
// ── Command: Center, Diameter ──────────────────────────────────────────────
+8 -1
View File
@@ -9,7 +9,7 @@
use acadrust::Handle;
use glam::Vec3;
use crate::command::{CadCommand, CmdResult, EntityTransform};
use crate::command::{CadCommand, CmdResult, DynField, EntityTransform};
use crate::modules::home::defaults;
use crate::modules::{IconKind, ModuleEvent, ToolDef};
use crate::scene::wire_model::WireModel;
@@ -187,4 +187,11 @@ impl CadCommand for RotateCommand {
));
out
}
fn dyn_field(&self) -> DynField {
match self.step {
Step::Angle { .. } => DynField::Angle,
_ => DynField::Point,
}
}
}