Join keeps its tool exact where the tool ends in the part's faces (#1244)
This commit is contained in:
1 parent
861ab027b6
commit
2cab09f65b
7 files changed
+151
-17
No files matched your search
@@ -2420,6 +2420,21 @@ fn lip_after_boss() {
|
||||
}
|
||||
}
|
||||
|
||||
/// A lip on a rim with a face elsewhere in line with the pick: a notch under the floor whose
|
||||
/// wall lies in the plane y = 25 through the picked point. The pick is the rim's, the face the
|
||||
/// point lies on, not the first face whose plane runs through it.
|
||||
#[test]
|
||||
fn lip_on_a_rim_in_line_with_another_face() {
|
||||
let mut s = Session::default();
|
||||
run(&mut s, "solid.box", json!({"length": 80, "width": 50, "height": 30}));
|
||||
run(&mut s, "solid.shell", json!({"faces": [[40, 25, 30]], "thickness": 2}));
|
||||
run(&mut s, "solid.box", json!({"length": 20, "width": 10, "height": 1, "corner": [30, 25, 0], "operation": "cut", "targets": ["Body1"]}));
|
||||
let v0 = volume(&mut s);
|
||||
run(&mut s, "plastic.lip", json!({"face": [1, 25, 30], "width": 1, "height": 2}));
|
||||
// The band inside the rim, 1 wide and 2 high: (78 × 48 − 76 × 46) × 2.
|
||||
assert!(rel(volume(&mut s) - v0, 496.0) < 1e-6, "{}", volume(&mut s) - v0);
|
||||
}
|
||||
|
||||
/// A drilled hole as deep as the plate: the drill point breaks through the bottom.
|
||||
#[test]
|
||||
fn hole_as_deep_as_the_plate() {
|
||||
|
||||
Reference in new issue
Block a user