Kernel rig: the inspect area, what reruns it, and the analyses that only draw

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
jyviko
2026-10-29 17:10:20 -04:00
committed by Irakli Kourtis
parent 1acbf1e9c0
commit 33e3b6379f
3 changed files with 52 additions and 0 deletions
+6
View File
@@ -0,0 +1,6 @@
# The inspect cases that fail today, one a line: `<case> <why it fails today>`. Sorted. A run
# with --known-failing fails on a case that fails and is not listed here, and on a listed case
# that passes: a fix removes its line in the same pull request.
# Baseline: rig-cases-construction-inspect 45f69c0e5 with SMLib 60b1c6a, aarch64 Linux.
cov-center-of-mass-box-and-cylinder inspect.center_of_mass measures each body's display mesh (b.mesh().measure()), not its exact faces: the cylinder's volume is its chords' 784.13, not 250 pi = 785.40 (1.6e-3 short)
cov-compare-taller-box inspect.compare integrates a region's volume along sampling lines: the 40 x 30 x 5 slab only B has comes out 5976.49, not 6000 (0.4% short)
+20
View File
@@ -0,0 +1,20 @@
# Source files whose change must rerun the inspect area: one git pathspec glob a line.
# The commands: center of mass, minimum radius, curvature comb and isocurve; continuity and the
# draw-only analyses; interference (registered in joints.rs), clearance and compare.
crates/engine/src/cmd/sketch_inspect.rs
crates/engine/src/cmd/surface_analysis.rs
crates/engine/src/cmd/interference.rs
crates/engine/src/cmd/joints.rs
crates/engine/src/cmd/clearance.rs
crates/engine/src/cmd/compare.rs
crates/engine/src/cmd/inspect.rs
# What they measure with: the comparison of two surfaces, a face's isocurves, seam continuity,
# body distance and mass properties.
crates/geom/src/compare.rs
crates/doc/src/eval.rs
crates/kernel/src/iso.rs
crates/kernel/src/continuity.rs
crates/kernel/src/continuity_order.rs
crates/kernel/src/distance.rs
crates/kernel/src/measure.rs
tests/kernel-cases/inspect/**
+26
View File
@@ -0,0 +1,26 @@
[
{
"source": "inspect.accessibility",
"why": "draws only: shades the faces a tool from one direction can reach; returns the analysis it set, no numbers"
},
{
"source": "inspect.curvature_map",
"why": "draws only: shades the faces by curvature; returns the analysis it set (its radius), no measurement"
},
{
"source": "inspect.draft",
"why": "draws only: shades the faces by draft against the pull direction; returns the pull and angle it was given, no face's draft angle"
},
{
"source": "inspect.environment_map",
"why": "draws only: a reflection shading; returns the analysis it set"
},
{
"source": "inspect.section",
"why": "draws only: shows the cut on a plane; returns the plane it was given (origin, normal, axis, at), no section area or outline"
},
{
"source": "inspect.zebra",
"why": "draws only: zebra stripes; returns the analysis it set (its stripe count)"
}
]