forked from 1b-agent/opencadstudio-upstream
Dimensional constraints: dynamic dimension persistence, lock mark, display variables, DIMCONSTRAINT
The dynamic dimension of a dimensional constraint is now linked in the drawing file (AcDbAssocDependency + AcDbAssocDimDependencyBody on the constraint node), reread on load, hidden by DCHIDE/DYNCONSTRAINTDISPLAY and never plotted; it carries a lock mark before its text. New CONSTRAINTNAMEFORMAT and DYNCONSTRAINTDISPLAY variables and the DIMCONSTRAINT option front end. A transformed entity whose own end points a driving dimension measures keeps only the first constraint point, so a scaled line returns to its dimension value. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
1 parent
72fd3fd35b
commit
971abe64a4
12 files changed
+433
-24
No files matched your search
@@ -2298,6 +2298,10 @@ pub struct Scene {
|
||||
/// CONSTRAINTNAMEFORMAT: what a dynamic dimension's text shows —
|
||||
/// 0 the parameter name, 1 the value, 2 `name=value`.
|
||||
pub constraint_name_format: u8,
|
||||
/// DYNCONSTRAINTDISPLAY: whether dynamic dimensions draw at all.
|
||||
pub dynamic_constraint_display: bool,
|
||||
/// Dynamic dimensions DCHIDE or DYNCONSTRAINTDISPLAY 0 keep off screen.
|
||||
hidden_dynamic_dimensions: HashSet<Handle>,
|
||||
/// Session-only visibility overrides for constraint glyphs.
|
||||
hidden_parametric_constraints: HashSet<(
|
||||
parametric_constraints::ParametricScope,
|
||||
@@ -2629,6 +2633,8 @@ impl Scene {
|
||||
associative_hatch_source_cache: RefCell::new(None),
|
||||
parametric_constraints: Vec::new(),
|
||||
constraint_name_format: 2,
|
||||
dynamic_constraint_display: true,
|
||||
hidden_dynamic_dimensions: HashSet::default(),
|
||||
hidden_parametric_constraints: HashSet::default(),
|
||||
shown_parametric_constraints: HashSet::default(),
|
||||
named_parameters: named_parameters::ParameterTable::new(),
|
||||
@@ -5538,6 +5544,7 @@ impl Scene {
|
||||
self.object_isolation.hides(handle)
|
||||
|| self.preview_hidden.contains(&handle)
|
||||
|| self.command_preview_hidden.contains(&handle)
|
||||
|| self.hidden_dynamic_dimensions.contains(&handle)
|
||||
}
|
||||
|
||||
/// Replace the command-owned source hide set and refresh only handles whose
|
||||
|
||||
Reference in new issue
Block a user