Fillet rig: the R7 round past a thin wall's inside corner held to its exact volume

fillets/1668-fillet-outer-top-edge-of-thin-wall-r7-past-inside-corner (and the
both-sides R7 case) now grade the volume at rel 1e-6 (0.04 mm^3), not the rig's
1e-3. The closed form is exact: V0 = 104 64 42 - 100 60 40 less the round's
section (1-pi/4) 49 along 104 plus its part over the hollow, the square
[25,30] x [35,40] outside the circle about (25,35), Int_sqrt24^5 (5 - sqrt(49-u^2)) du
= 0.0050679 mm^2 (a 0.0005 grid gives the same to 1e-9), along 100: 38458.896.
SMLib gives 38458.389, 0.507 mm^3 less: exactly that part over the hollow, which is
not material, taken anyway where the round opens its slit. The unit test's bound
was right; the case goes on KNOWN_FAILING with that cause. The both-sides case
passes at the tighter tolerance.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
jyviko
2026-10-30 07:05:04 -04:00
committed by Irakli Kourtis
parent 94938b3b54
commit 191fa98395
3 changed files with 9 additions and 2 deletions
@@ -5,9 +5,12 @@
],
"what": "R7 rounds of the outer top edge and the inside edge of a 2 mm wall in one fillet: the inside round holds the material the outer one runs over, so the wall stays closed",
"source": "analytic",
"method": "as 1668-fillet-both-sides-of-thin-wall at R7: the inside (concave) round adds (1-pi/4) 49 along 100 about (23, 33); the outer one's part over the hollow lies at least 9.7 from (23, 33), inside the added material, so it takes its whole section (1-pi/4) 49 along 104. V = 39552 - (1-pi/4) 49 x 4 = 39509.938040",
"method": "as 1668-fillet-both-sides-of-thin-wall at R7: the inside (concave) round adds (1-pi/4) 49 along 100 about (23, 33); the outer one's part over the hollow lies at least 9.7 from (23, 33), inside the added material, so it takes its whole section (1-pi/4) 49 along 104. V = 39552 - (1-pi/4) 49 x 4 = 39509.938040, exact: the tolerance holds it to 0.04 mm^3",
"body_count": 1,
"volume_mm3": 39509.9380400259,
"tolerance": {
"rel": 1e-06
},
"continuity": {
"order": "g1"
}
@@ -5,9 +5,12 @@
],
"what": "an R7 round of the outer top edge of a 2 mm wall alone: past the sharp inside corner it is cut from the wall as if the hollow were not there, opening a slit along the hollow",
"source": "analytic",
"method": "box 100x60x40 shelled outward 2 mm open at the bottom: 104x64x42 less 100x60x40 = 39552. The round's circle about (y, z) = (25, 35), r 7, takes (1-pi/4) 49 along the edge's 104, less its part over the hollow (y < 30, z < 40), the square [25,30]x[35,40] outside the circle: Int_sqrt24^5 (5 - sqrt(49-u^2)) du = 5(5-sqrt24) - (F(5) - F(sqrt24)), F(t) = (t sqrt(49-t^2) + 49 asin(t/7))/2, = 0.005068, along the hollow's 100 (the end walls x = +-50..52 are solid). V = 38458.895826",
"method": "box 100x60x40 shelled outward 2 mm open at the bottom: 104x64x42 less 100x60x40 = 39552. The round's circle about (y, z) = (25, 35), r 7, takes (1-pi/4) 49 along the edge's 104, less its part over the hollow (y < 30, z < 40), the square [25,30]x[35,40] outside the circle: Int_sqrt24^5 (5 - sqrt(49-u^2)) du = 5(5-sqrt24) - (F(5) - F(sqrt24)), F(t) = (t sqrt(49-t^2) + 49 asin(t/7))/2, = 0.005068, along the hollow's 100 (the end walls x = +-50..52 are solid). V = 38458.895826, exact: the tolerance holds it to 0.04 mm^3",
"body_count": 1,
"volume_mm3": 38458.89582646349,
"tolerance": {
"rel": 1e-06
},
"continuity": {
"order": "g1"
}
+1
View File
@@ -15,6 +15,7 @@
1080-fillet-sloped-basin-1-mm-rim-r4-4-edges not supported yet: a convex round past its face is not yet built by subtraction
1113-chamfer-arc-top-edge-full-wall-height-refused builds the chamfer as tall as the wall where it should be refused as too large
1207-fillet-bar-top-edge-after-boss-arc-round-r0-5 SMLib's check refuses the round: internal coincident control points in a B-spline curve (an internal pole)
1668-fillet-outer-top-edge-of-thin-wall-r7-past-inside-corner a slit along the hollow, 0.507 mm^3 off: 38458.389 is V0 less the round's whole section along 104, so the section's part over the hollow (0.005068 mm^2 along 100), which is not material, is taken anyway
190-fillet-disc-rim-past-its-2mm-wall SMLib status 1001: a convex round past its face is not yet built by subtraction
2852-fillet-outer-round-r30-past-inner-round-refused refused for another reason: SMLib's result is not a closed solid, not too large naming 25.24
2893-chamfer-distance-and-angle-past-the-wall-refused refused for another reason: SMLib SM_ERR_INVALID_INPUT, not a check saying the angle runs past the wall