mirror of
https://github.com/bherbruck/solidcraft.git
synced 2026-11-03 02:25:55 +00:00
Tests: a drafted cube side leaves the bottom and the opposite side Kept, the rest Modified
Drafting a cube's side about its bottom edge (on the neutral plane) tilts the side and moves the edges it shares with the top and the two faces beside it: those four are trimmed differently (Modified); the bottom and the opposite side are untouched (Kept). Truck called all six Modified; SMLib's history called the moved neighbours Kept. Needs the SMLib fix "history: a face whose edges an operation moved is Modified, not Kept" (SMLib branch devgreen-kernel-records, cdaf205) and a pin bump. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -280,7 +280,10 @@ fn draft_tilts_faces() {
|
||||
let side = Vec3::new(40.0, 15.0, 10.0);
|
||||
let r = crate::draft(&b, &[side], &Plane::XY, Vec3::Z, 5f64.to_radians()).unwrap();
|
||||
let h = verified(&r, &b, Reach { made: 0.0, moved: 2.0 });
|
||||
assert_eq!(changes(h), [0, 6, 0, 0, 0]);
|
||||
// The side tilts about its bottom edge (on the neutral plane z = 0); the top and the two
|
||||
// faces beside it lose a wedge along their moved edges. The bottom and the opposite side
|
||||
// are untouched.
|
||||
assert_eq!(changes(h), [2, 4, 0, 0, 0]);
|
||||
assert_eq!(with(h, &[face(face_at(&b, side))]).len(), 1);
|
||||
// Walls of a body that is not convex.
|
||||
let l = ell();
|
||||
|
||||
Reference in New Issue
Block a user