forked from 1b-agent/opencadstudio-upstream
- refresh_associative_sweeps runs on every edit and scanned the xdata of every entity; it now returns at once when no associative swept surface exists (its application is not registered) and looks at surfaces only. - An arc's end angle was raised by TAU in a loop, which never ends on a huge angle from a damaged file; the sweep is taken with rem_euclid. - The sweep DELOBJ test expected surface sweeps to delete their sources, which #1663 changed on purpose: an associative surface keeps them. - codec c9ffcac (opencadcodec #103) adds an explicit viewport-off bit: the viewport on state is read with is_on() and set with turn_on()/turn_off() everywhere, so a viewport the file marks off shows off and can be turned back on from Properties. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
9519614e91
commit
ff6e2a6613
13 files changed
+42
-29
No files matched your search
@@ -935,14 +935,17 @@ mod delobj_tests {
|
||||
expected,
|
||||
);
|
||||
}
|
||||
assert_eq!(
|
||||
sweep_source_presence(2, crate::command::ExtrudeMode::Surface),
|
||||
(false, false),
|
||||
);
|
||||
assert_eq!(
|
||||
sweep_source_presence(3, crate::command::ExtrudeMode::Surface),
|
||||
(false, true),
|
||||
);
|
||||
// A swept surface is associative by default (SURFACEASSOCIATIVITY 1)
|
||||
// and keeps the profile and path it follows, whatever DELOBJ says;
|
||||
// DELOBJ reaches surfaces only with associativity off, a profile-wide
|
||||
// switch this parallel test leaves alone.
|
||||
assert!(crate::scene::model::sweep_model::surface_associativity());
|
||||
for value in [2, 3] {
|
||||
assert_eq!(
|
||||
sweep_source_presence(value, crate::command::ExtrudeMode::Surface),
|
||||
(true, true),
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user