Feat: dimension grip editing — all dimension types get stretch grips

Linear/Aligned: first point, second point, definition point, text position
Radius/Diameter: center (angle_vertex), radius point, text position
Angular2Ln/Angular3Pt: vertex, two extension points, arc def point, text
Ordinate: origin, feature location, leader endpoint, text position
Text position grip shared across all types; measurement recalculated after edit.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Hakan Seven 2026-04-03 19:11:21 +03:00
commit 36d51286d4
2 changed files with 140 additions and 3 deletions

View file

@ -94,6 +94,7 @@ impl EntityTypeOps for EntityType {
EntityType::Insert(ins) => Grippable::grips(ins),
EntityType::Leader(leader) => Grippable::grips(leader),
EntityType::MultiLeader(ml) => Grippable::grips(ml),
EntityType::Dimension(dim) => Grippable::grips(dim),
_ => vec![],
}
}
@ -288,6 +289,7 @@ impl EntityTypeOps for EntityType {
EntityType::Insert(ins) => Grippable::apply_grip(ins, grip_id, apply),
EntityType::Leader(leader) => Grippable::apply_grip(leader, grip_id, apply),
EntityType::MultiLeader(ml) => Grippable::apply_grip(ml, grip_id, apply),
EntityType::Dimension(dim) => Grippable::apply_grip(dim, grip_id, apply),
_ => {}
}
}