feat(grips): add dynamic input and precision snapping

This commit is contained in:
gianlucafiore committed 2026-08-10 13:26:35 -03:00
1 parent 60f5bca0d4
commit 86d7226df6
6 files changed
+216 -44

No files matched your search

+8
View File
@@ -545,6 +545,13 @@ pub(super) struct OpenCADStudio {
grip_originals: Vec<(acadrust::Handle, acadrust::EntityType)>,
/// Document dirty state before the live grip mutation began.
grip_dirty_before: Option<bool>,
/// Frozen wire geometry of the entities being grip-edited.
///
/// The live entities are hidden from the resident hit-test set while their
/// grip preview is active. Keep their pre-drag geometry here so OSNAP,
/// Extension and OTRACK can still reference the entity's own vertices and
/// segments without snapping against the geometry being deformed.
grip_snap_wires: Vec<crate::scene::model::wire_model::WireModel>,
/// Drag-start snapshot of the dragged entity's SDF glyph quads. A whole-
/// entity text move slides these each frame (translating the already-shaped
/// glyphs) instead of re-tessellating the run every cursor move (issue #316).
@@ -3109,6 +3116,7 @@ impl OpenCADStudio {
hover_dwell: None,
grip_originals: Vec::new(),
grip_dirty_before: None,
grip_snap_wires: Vec::new(),
grip_text_verts: Vec::new(),
grip_text_slide: false,
qselect: None,