mirror of
https://github.com/bherbruck/solidcraft.git
synced 2026-11-04 11:05:56 +00:00
smlib: the curved primitives' measures, round trips and two sweep volumes run on solidcore (solidcore#1435 landed)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SdcgExNEwfR9CX2RAzp2Pt
This commit is contained in:
@@ -159,11 +159,8 @@ macro_rules! primitive {
|
||||
|
||||
primitive!(box_, "box");
|
||||
primitive!(cylinder, "cylinder");
|
||||
primitive!(sphere, "sphere",
|
||||
volume: ignore = "solidcore#1435: a sphere's volume at 1e-8 is 2e-9 off",
|
||||
round_trip: ignore = "solidcore#1435: the record comes back the same; its volume at 1e-8 is 2e-9 off");
|
||||
primitive!(cone, "cone",
|
||||
round_trip: ignore = "solidcore#1435: the record comes back the same, but its volume at 1e-8 is 1.4e-9 off (the C++ kernel 1.1e-11 on the same arrays); the side face's precise properties do not split at the surface's knots, fork 08d9a14 (solidcore PR #1456)");
|
||||
primitive!(sphere, "sphere");
|
||||
primitive!(cone, "cone");
|
||||
primitive!(frustum, "frustum");
|
||||
primitive!(torus, "torus");
|
||||
|
||||
|
||||
@@ -264,19 +264,11 @@ macro_rules! primitive {
|
||||
}
|
||||
|
||||
primitive!(box_, "box");
|
||||
primitive!(cylinder, "cylinder", area: ignore = "solidcore#1435: face area at 1e-8 is 3.7e-8 off");
|
||||
primitive!(sphere, "sphere",
|
||||
mass: ignore = "solidcore#1435: a sphere's properties at 1e-8 miss 1e-9",
|
||||
area: ignore = "solidcore#1435: face area at 1e-8 is 1.2e-8 off");
|
||||
primitive!(cone, "cone",
|
||||
mass: ignore = "solidcore#1435: cone inertia at 1e-8 is 1.7e-9 off",
|
||||
area: ignore = "solidcore#1435: face area at 1e-8 is 4.2e-8 off");
|
||||
primitive!(frustum, "frustum",
|
||||
mass: ignore = "solidcore#1435: frustum inertia at 1e-8 misses 1e-9",
|
||||
area: ignore = "solidcore#1435: face area at 1e-8 is 3.5e-8 off");
|
||||
primitive!(torus, "torus",
|
||||
mass: ignore = "solidcore#1435: torus inertia at 1e-8 is 1.7e-9 off",
|
||||
area: ignore = "solidcore#1435: face area at 1e-8 is 6.0e-9 off");
|
||||
primitive!(cylinder, "cylinder");
|
||||
primitive!(sphere, "sphere");
|
||||
primitive!(cone, "cone");
|
||||
primitive!(frustum, "frustum");
|
||||
primitive!(torus, "torus");
|
||||
|
||||
/// Until solidcore ports it (solidcore#1419), the check says so instead of guessing.
|
||||
#[test]
|
||||
|
||||
@@ -390,7 +390,7 @@ cases!(
|
||||
revolve_rectangle_full,
|
||||
revolve_rectangle_quarter,
|
||||
sweep_circle_straight,
|
||||
sweep_circle_along_an_arc: ignore = "solidcore#1435: a torus's volume at 1e-8 is 2.2e-9 off; precise properties do not split at the surface's knots, fork 08d9a14 (solidcore#1435)",
|
||||
sweep_circle_along_an_arc,
|
||||
sweep_along_a_bent_path: ignore = "solidcore#1450: no curve sweep keeping the profile at the path's start, fork 2dd71a0 / 5d3939e",
|
||||
loft_two_squares,
|
||||
loft_two_circles,
|
||||
@@ -398,7 +398,7 @@ cases!(
|
||||
sweep_stations_prism,
|
||||
sweep_stations_scaled,
|
||||
screw_sweep_square_thread,
|
||||
screw_sweep_radial_taper [ignore = "solidcore#1435: B-spline walls' volume at 1e-8 is 3.6e-8 off the closed form (C++ 1.1e-8); precise properties do not split at the surface's knots, fork 08d9a14 (solidcore#1435)"],
|
||||
screw_sweep_radial_taper,
|
||||
);
|
||||
|
||||
fn near(a: [f64; 3], b: [f64; 3]) -> bool {
|
||||
|
||||
Reference in New Issue
Block a user