mirror of
https://github.com/bherbruck/solidcraft.git
synced 2026-11-04 02:55:54 +00:00
Fillet rig: the sloped basin's rim loops with their mitred corners' exact volumes
The owner ruled on 2026-10-30 that rounds meeting at a concave corner beside an unpicked sharp edge are mitred, which fixes the basin loops' re-entrant corners. Each loop case now grades its exact volume (rel 1e-6): each blend takes Int width(z) length(z) dz, its section's width from its wall to its arc or chamfer line (the front one clipped at the slab's face where it runs past the rim), its length between its neighbours' walls extended; each corner of two picked edges adds the overlap of their section prisms in the quadrant beyond both walls, Int width_1(z) width_2(z) dz (r^3 (5/3 - pi/2) for vertical walls, as every-pocket-rim-edges-r2). One edge alone reproduces the single-edge closed forms to 3e-7 of the removal. The equal-slope chamfer loop 0.5 passes; the others stay on KNOWN_FAILING with the causes they had (SMLib status 1001, the surface-of-revolution check, rounds past the rim not built by subtraction). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
+7
-3
@@ -2,10 +2,11 @@
|
||||
"sources": [
|
||||
"tangency-labs/solidcraft#1080"
|
||||
],
|
||||
"what": "all four top rim edges of a basin whose walls all slope 10 over 20, its front rim 1 mm wide, chamfered 0.5",
|
||||
"source": "invariants",
|
||||
"method": "slab 100 x 60 x 30 less the loft from the rectangle (20, 1)-(80, 50) at z = 30 to (30, 11)-(70, 40) at z = 10 (planar walls, a prismatoid: 20/6 (A_top + A_bottom + 4 A_mid)): V0 = 140333.333333. the rim's corners are re-entrant (the pocket's corners), where the blends of two sides meet; with sloped walls of different slopes that meeting has no closed form here. Nothing may leave the slab: the box is the slab's, which keeps its outside faces whole.",
|
||||
"what": "all four top rim edges of a basin whose walls all slope 10 over 20, its front rim 1 mm wide, chamfered 0.5, mitred at the rim's corners",
|
||||
"source": "analytic",
|
||||
"method": "slab 100 x 60 x 30 less the loft from the rectangle (20, 1)-(80, 50) at z = 30 to (30, 11)-(70, 40) at z = 10 (planar walls, a prismatoid: 20/6 (A_top + A_bottom + 4 A_mid)): V0 = 140333.333333. Each blend's section at height z spans from its wall to its arc (or chamfer line), inside its rim; its edge runs between its neighbours' walls (the sloped end walls extended), so it takes Int width(z) length(z) dz. At a re-entrant corner of two picked edges the blends meet in a mitre (the owner's ruling of 2026-10-30): each runs on past the corner and the quadrant beyond both walls loses what both take, Int width_1(z) width_2(z) dz. Removed 24.455545. V = 140308.877788",
|
||||
"body_count": 1,
|
||||
"volume_mm3": 140308.87778784672,
|
||||
"bbox": {
|
||||
"min": [
|
||||
0,
|
||||
@@ -17,5 +18,8 @@
|
||||
60,
|
||||
30
|
||||
]
|
||||
},
|
||||
"tolerance": {
|
||||
"rel": 1e-06
|
||||
}
|
||||
}
|
||||
|
||||
+7
-3
@@ -2,10 +2,11 @@
|
||||
"sources": [
|
||||
"tangency-labs/solidcraft#1080"
|
||||
],
|
||||
"what": "all four top rim edges of a basin whose walls all slope 10 over 20, its front rim 1 mm wide, rounded R 0.5",
|
||||
"source": "invariants",
|
||||
"method": "slab 100 x 60 x 30 less the loft from the rectangle (20, 1)-(80, 50) at z = 30 to (30, 11)-(70, 40) at z = 10 (planar walls, a prismatoid: 20/6 (A_top + A_bottom + 4 A_mid)): V0 = 140333.333333. the rim's corners are re-entrant (the pocket's corners), where the blends of two sides meet; with sloped walls of different slopes that meeting has no closed form here. Nothing may leave the slab: the box is the slab's, which keeps its outside faces whole.",
|
||||
"what": "all four top rim edges of a basin whose walls all slope 10 over 20, its front rim 1 mm wide, rounded R 0.5, mitred at the rim's corners",
|
||||
"source": "analytic",
|
||||
"method": "slab 100 x 60 x 30 less the loft from the rectangle (20, 1)-(80, 50) at z = 30 to (30, 11)-(70, 40) at z = 10 (planar walls, a prismatoid: 20/6 (A_top + A_bottom + 4 A_mid)): V0 = 140333.333333. Each blend's section at height z spans from its wall to its arc (or chamfer line), inside its rim; its edge runs between its neighbours' walls (the sloped end walls extended), so it takes Int width(z) length(z) dz. At a re-entrant corner of two picked edges the blends meet in a mitre (the owner's ruling of 2026-10-30): each runs on past the corner and the quadrant beyond both walls loses what both take, Int width_1(z) width_2(z) dz. Removed 3.517697. V = 140329.815636",
|
||||
"body_count": 1,
|
||||
"volume_mm3": 140329.8156362336,
|
||||
"bbox": {
|
||||
"min": [
|
||||
0,
|
||||
@@ -18,6 +19,9 @@
|
||||
30
|
||||
]
|
||||
},
|
||||
"tolerance": {
|
||||
"rel": 1e-06
|
||||
},
|
||||
"continuity": {
|
||||
"order": "g1"
|
||||
}
|
||||
|
||||
+7
-3
@@ -2,10 +2,11 @@
|
||||
"sources": [
|
||||
"tangency-labs/solidcraft#1080"
|
||||
],
|
||||
"what": "all four top rim edges of a basin whose walls all slope 10 over 20, its front rim 1 mm wide, rounded R 4: past the rim the front round runs over the slab's front face and is cut from the slab",
|
||||
"source": "invariants",
|
||||
"method": "slab 100 x 60 x 30 less the loft from the rectangle (20, 1)-(80, 50) at z = 30 to (30, 11)-(70, 40) at z = 10 (planar walls, a prismatoid: 20/6 (A_top + A_bottom + 4 A_mid)): V0 = 140333.333333. the rim's corners are re-entrant (the pocket's corners), where the blends of two sides meet; with sloped walls of different slopes that meeting has no closed form here. Nothing may leave the slab: the box is the slab's, which keeps its outside faces whole.",
|
||||
"what": "all four top rim edges of a basin whose walls all slope 10 over 20, its front rim 1 mm wide, rounded R 4, mitred at the rim's corners: past the rim the front round runs over the slab's front face and is cut from the slab",
|
||||
"source": "analytic",
|
||||
"method": "slab 100 x 60 x 30 less the loft from the rectangle (20, 1)-(80, 50) at z = 30 to (30, 11)-(70, 40) at z = 10 (planar walls, a prismatoid: 20/6 (A_top + A_bottom + 4 A_mid)): V0 = 140333.333333. Each blend's section at height z spans from its wall to its arc (or chamfer line), the front one not past y = 0, the slab's face; its edge runs between its neighbours' walls (the sloped end walls extended), so it takes Int width(z) length(z) dz. At a re-entrant corner of two picked edges the blends meet in a mitre (the owner's ruling of 2026-10-30): each runs on past the corner and the quadrant beyond both walls loses what both take, Int width_1(z) width_2(z) dz. Removed 218.598188. V = 140114.735145",
|
||||
"body_count": 1,
|
||||
"volume_mm3": 140114.73514508773,
|
||||
"bbox": {
|
||||
"min": [
|
||||
0,
|
||||
@@ -18,6 +19,9 @@
|
||||
30
|
||||
]
|
||||
},
|
||||
"tolerance": {
|
||||
"rel": 1e-06
|
||||
},
|
||||
"continuity": {
|
||||
"order": "g1"
|
||||
}
|
||||
|
||||
+7
-3
@@ -2,10 +2,11 @@
|
||||
"sources": [
|
||||
"tangency-labs/solidcraft#1080"
|
||||
],
|
||||
"what": "all four of the top rim edges of a sloped basin with a 0.5 mm front rim rounded R4: past the thin rim the rounds run over the slab's front face and are cut from the slab",
|
||||
"source": "invariants",
|
||||
"method": "slab 100 x 60 x 30 less the loft from the rectangle (20, 0.5)-(80, 50) at z = 30 to (30, 20)-(70, 40) at z = 10 (planar walls, a prismatoid: 20/6 (A_top + A_bottom + 4 A_mid)): V0 = 144266.666667. the rim's corners are re-entrant (the pocket's corners), where the blends of two sides meet; with sloped walls of different slopes that meeting has no closed form here. Nothing may leave the slab: the box is the slab's, which keeps its outside faces whole.",
|
||||
"what": "all four of the top rim edges of a sloped basin with a 0.5 mm front rim rounded R4, mitred at the rim's corners: past the thin rim the front round runs over the slab's front face and is cut from the slab",
|
||||
"source": "analytic",
|
||||
"method": "slab 100 x 60 x 30 less the loft from the rectangle (20, 0.5)-(80, 50) at z = 30 to (30, 20)-(70, 40) at z = 10 (planar walls, a prismatoid: 20/6 (A_top + A_bottom + 4 A_mid)): V0 = 144266.666667. Each blend's section at height z spans from its wall to its arc (or chamfer line), the front one not past y = 0, the slab's face; its edge runs between its neighbours' walls (the sloped end walls extended), so it takes Int width(z) length(z) dz. At a re-entrant corner of two picked edges the blends meet in a mitre (the owner's ruling of 2026-10-30): each runs on past the corner and the quadrant beyond both walls loses what both take, Int width_1(z) width_2(z) dz. Removed 182.348561. V = 144084.318105",
|
||||
"body_count": 1,
|
||||
"volume_mm3": 144084.31810540144,
|
||||
"bbox": {
|
||||
"min": [
|
||||
0,
|
||||
@@ -18,6 +19,9 @@
|
||||
30
|
||||
]
|
||||
},
|
||||
"tolerance": {
|
||||
"rel": 1e-06
|
||||
},
|
||||
"continuity": {
|
||||
"order": "g1"
|
||||
}
|
||||
|
||||
+7
-3
@@ -2,10 +2,11 @@
|
||||
"sources": [
|
||||
"tangency-labs/solidcraft#1080"
|
||||
],
|
||||
"what": "all four of the top rim edges of a sloped basin with a 1 mm front rim rounded R0.5",
|
||||
"source": "invariants",
|
||||
"method": "slab 100 x 60 x 30 less the loft from the rectangle (20, 1)-(80, 50) at z = 30 to (30, 20)-(70, 40) at z = 10 (planar walls, a prismatoid: 20/6 (A_top + A_bottom + 4 A_mid)): V0 = 144533.333333. the rim's corners are re-entrant (the pocket's corners), where the blends of two sides meet; with sloped walls of different slopes that meeting has no closed form here. Nothing may leave the slab: the box is the slab's, which keeps its outside faces whole.",
|
||||
"what": "all four of the top rim edges of a sloped basin with a 1 mm front rim rounded R0.5, mitred at the rim's corners",
|
||||
"source": "analytic",
|
||||
"method": "slab 100 x 60 x 30 less the loft from the rectangle (20, 1)-(80, 50) at z = 30 to (30, 20)-(70, 40) at z = 10 (planar walls, a prismatoid: 20/6 (A_top + A_bottom + 4 A_mid)): V0 = 144533.333333. Each blend's section at height z spans from its wall to its arc (or chamfer line), inside its rim; its edge runs between its neighbours' walls (the sloped end walls extended), so it takes Int width(z) length(z) dz. At a re-entrant corner of two picked edges the blends meet in a mitre (the owner's ruling of 2026-10-30): each runs on past the corner and the quadrant beyond both walls loses what both take, Int width_1(z) width_2(z) dz. Removed 2.905424. V = 144530.427909",
|
||||
"body_count": 1,
|
||||
"volume_mm3": 144530.42790890092,
|
||||
"bbox": {
|
||||
"min": [
|
||||
0,
|
||||
@@ -18,6 +19,9 @@
|
||||
30
|
||||
]
|
||||
},
|
||||
"tolerance": {
|
||||
"rel": 1e-06
|
||||
},
|
||||
"continuity": {
|
||||
"order": "g1"
|
||||
}
|
||||
|
||||
+7
-3
@@ -2,10 +2,11 @@
|
||||
"sources": [
|
||||
"tangency-labs/solidcraft#1080"
|
||||
],
|
||||
"what": "two of the top rim edges of a sloped basin with a 1 mm front rim rounded R4: past the thin rim the rounds run over the slab's front face and are cut from the slab",
|
||||
"source": "invariants",
|
||||
"method": "slab 100 x 60 x 30 less the loft from the rectangle (20, 1)-(80, 50) at z = 30 to (30, 20)-(70, 40) at z = 10 (planar walls, a prismatoid: 20/6 (A_top + A_bottom + 4 A_mid)): V0 = 144533.333333. the rim's corners are re-entrant (the pocket's corners), where the blends of two sides meet; with sloped walls of different slopes that meeting has no closed form here. Nothing may leave the slab: the box is the slab's, which keeps its outside faces whole.",
|
||||
"what": "the front and right of the top rim edges of a sloped basin with a 1 mm front rim rounded R4, mitred at the rim's corners: past the thin rim the front round runs over the slab's front face and is cut from the slab",
|
||||
"source": "analytic",
|
||||
"method": "slab 100 x 60 x 30 less the loft from the rectangle (20, 1)-(80, 50) at z = 30 to (30, 20)-(70, 40) at z = 10 (planar walls, a prismatoid: 20/6 (A_top + A_bottom + 4 A_mid)): V0 = 144533.333333. Each blend's section at height z spans from its wall to its arc (or chamfer line), the front one not past y = 0, the slab's face; its edge runs between its neighbours' walls (the sloped end walls extended), so it takes Int width(z) length(z) dz. At a re-entrant corner of two picked edges the blends meet in a mitre (the owner's ruling of 2026-10-30): each runs on past the corner and the quadrant beyond both walls loses what both take, Int width_1(z) width_2(z) dz. Removed 72.136985. V = 144461.196348",
|
||||
"body_count": 1,
|
||||
"volume_mm3": 144461.19634789118,
|
||||
"bbox": {
|
||||
"min": [
|
||||
0,
|
||||
@@ -18,6 +19,9 @@
|
||||
30
|
||||
]
|
||||
},
|
||||
"tolerance": {
|
||||
"rel": 1e-06
|
||||
},
|
||||
"continuity": {
|
||||
"order": "g1"
|
||||
}
|
||||
|
||||
+7
-3
@@ -2,10 +2,11 @@
|
||||
"sources": [
|
||||
"tangency-labs/solidcraft#1080"
|
||||
],
|
||||
"what": "all four of the top rim edges of a sloped basin with a 1 mm front rim rounded R4: past the thin rim the rounds run over the slab's front face and are cut from the slab",
|
||||
"source": "invariants",
|
||||
"method": "slab 100 x 60 x 30 less the loft from the rectangle (20, 1)-(80, 50) at z = 30 to (30, 20)-(70, 40) at z = 10 (planar walls, a prismatoid: 20/6 (A_top + A_bottom + 4 A_mid)): V0 = 144533.333333. the rim's corners are re-entrant (the pocket's corners), where the blends of two sides meet; with sloped walls of different slopes that meeting has no closed form here. Nothing may leave the slab: the box is the slab's, which keeps its outside faces whole.",
|
||||
"what": "all four of the top rim edges of a sloped basin with a 1 mm front rim rounded R4, mitred at the rim's corners: past the thin rim the front round runs over the slab's front face and is cut from the slab",
|
||||
"source": "analytic",
|
||||
"method": "slab 100 x 60 x 30 less the loft from the rectangle (20, 1)-(80, 50) at z = 30 to (30, 20)-(70, 40) at z = 10 (planar walls, a prismatoid: 20/6 (A_top + A_bottom + 4 A_mid)): V0 = 144533.333333. Each blend's section at height z spans from its wall to its arc (or chamfer line), the front one not past y = 0, the slab's face; its edge runs between its neighbours' walls (the sloped end walls extended), so it takes Int width(z) length(z) dz. At a re-entrant corner of two picked edges the blends meet in a mitre (the owner's ruling of 2026-10-30): each runs on past the corner and the quadrant beyond both walls loses what both take, Int width_1(z) width_2(z) dz. Removed 186.007516. V = 144347.325818",
|
||||
"body_count": 1,
|
||||
"volume_mm3": 144347.32581768231,
|
||||
"bbox": {
|
||||
"min": [
|
||||
0,
|
||||
@@ -18,6 +19,9 @@
|
||||
30
|
||||
]
|
||||
},
|
||||
"tolerance": {
|
||||
"rel": 1e-06
|
||||
},
|
||||
"continuity": {
|
||||
"order": "g1"
|
||||
}
|
||||
|
||||
+7
-3
@@ -2,10 +2,11 @@
|
||||
"sources": [
|
||||
"tangency-labs/solidcraft#5835"
|
||||
],
|
||||
"what": "all four of the top rim edges of a sloped basin whose walls slope unequally, its front rim 1 mm wide, chamfered 0.5: the chamfers meet at the rim's corners",
|
||||
"source": "invariants",
|
||||
"method": "slab 100 x 60 x 30 less the loft from the rectangle (20, 1)-(80, 50) at z = 30 to (30, 20)-(70, 40) at z = 10 (planar walls, a prismatoid: 20/6 (A_top + A_bottom + 4 A_mid)): V0 = 144533.333333. the rim's corners are re-entrant (the pocket's corners), where the blends of two sides meet; with sloped walls of different slopes that meeting has no closed form here. Nothing may leave the slab: the box is the slab's, which keeps its outside faces whole.",
|
||||
"what": "all four of the top rim edges of a sloped basin whose walls slope unequally, its front rim 1 mm wide, chamfered 0.5: the chamfers meet in mitres at the rim's corners",
|
||||
"source": "analytic",
|
||||
"method": "slab 100 x 60 x 30 less the loft from the rectangle (20, 1)-(80, 50) at z = 30 to (30, 20)-(70, 40) at z = 10 (planar walls, a prismatoid: 20/6 (A_top + A_bottom + 4 A_mid)): V0 = 144533.333333. Each blend's section at height z spans from its wall to its arc (or chamfer line), inside its rim; its edge runs between its neighbours' walls (the sloped end walls extended), so it takes Int width(z) length(z) dz. At a re-entrant corner of two picked edges the blends meet in a mitre (the owner's ruling of 2026-10-30): each runs on past the corner and the quadrant beyond both walls loses what both take, Int width_1(z) width_2(z) dz. Removed 23.167157. V = 144510.166177",
|
||||
"body_count": 1,
|
||||
"volume_mm3": 144510.1661766051,
|
||||
"bbox": {
|
||||
"min": [
|
||||
0,
|
||||
@@ -17,5 +18,8 @@
|
||||
60,
|
||||
30
|
||||
]
|
||||
},
|
||||
"tolerance": {
|
||||
"rel": 1e-06
|
||||
}
|
||||
}
|
||||
|
||||
+7
-3
@@ -2,10 +2,11 @@
|
||||
"sources": [
|
||||
"tangency-labs/solidcraft#5835"
|
||||
],
|
||||
"what": "two of the top rim edges of a sloped basin whose walls slope unequally, its front rim 4 mm wide, chamfered 2: the chamfers meet at the rim's corners",
|
||||
"source": "invariants",
|
||||
"method": "slab 100 x 60 x 30 less the loft from the rectangle (20, 4)-(80, 50) at z = 30 to (30, 20)-(70, 40) at z = 10 (planar walls, a prismatoid: 20/6 (A_top + A_bottom + 4 A_mid)): V0 = 146133.333333. the rim's corners are re-entrant (the pocket's corners), where the blends of two sides meet; with sloped walls of different slopes that meeting has no closed form here. Nothing may leave the slab: the box is the slab's, which keeps its outside faces whole.",
|
||||
"what": "the front and right of the top rim edges of a sloped basin whose walls slope unequally, its front rim 4 mm wide, chamfered 2: the chamfers meet in mitres at the rim's corners",
|
||||
"source": "analytic",
|
||||
"method": "slab 100 x 60 x 30 less the loft from the rectangle (20, 4)-(80, 50) at z = 30 to (30, 20)-(70, 40) at z = 10 (planar walls, a prismatoid: 20/6 (A_top + A_bottom + 4 A_mid)): V0 = 146133.333333. Each blend's section at height z spans from its wall to its arc (or chamfer line), inside its rim; its edge runs between its neighbours' walls (the sloped end walls extended), so it takes Int width(z) length(z) dz. At a re-entrant corner of two picked edges the blends meet in a mitre (the owner's ruling of 2026-10-30): each runs on past the corner and the quadrant beyond both walls loses what both take, Int width_1(z) width_2(z) dz. Removed 176.006388. V = 145957.326945",
|
||||
"body_count": 1,
|
||||
"volume_mm3": 145957.3269449097,
|
||||
"bbox": {
|
||||
"min": [
|
||||
0,
|
||||
@@ -17,5 +18,8 @@
|
||||
60,
|
||||
30
|
||||
]
|
||||
},
|
||||
"tolerance": {
|
||||
"rel": 1e-06
|
||||
}
|
||||
}
|
||||
|
||||
+7
-3
@@ -2,10 +2,11 @@
|
||||
"sources": [
|
||||
"tangency-labs/solidcraft#5835"
|
||||
],
|
||||
"what": "all four of the top rim edges of a sloped basin whose walls slope unequally, its front rim 4 mm wide, chamfered 2: the chamfers meet at the rim's corners",
|
||||
"source": "invariants",
|
||||
"method": "slab 100 x 60 x 30 less the loft from the rectangle (20, 4)-(80, 50) at z = 30 to (30, 20)-(70, 40) at z = 10 (planar walls, a prismatoid: 20/6 (A_top + A_bottom + 4 A_mid)): V0 = 146133.333333. the rim's corners are re-entrant (the pocket's corners), where the blends of two sides meet; with sloped walls of different slopes that meeting has no closed form here. Nothing may leave the slab: the box is the slab's, which keeps its outside faces whole.",
|
||||
"what": "all four of the top rim edges of a sloped basin whose walls slope unequally, its front rim 4 mm wide, chamfered 2: the chamfers meet in mitres at the rim's corners",
|
||||
"source": "analytic",
|
||||
"method": "slab 100 x 60 x 30 less the loft from the rectangle (20, 4)-(80, 50) at z = 30 to (30, 20)-(70, 40) at z = 10 (planar walls, a prismatoid: 20/6 (A_top + A_bottom + 4 A_mid)): V0 = 146133.333333. Each blend's section at height z spans from its wall to its arc (or chamfer line), inside its rim; its edge runs between its neighbours' walls (the sloped end walls extended), so it takes Int width(z) length(z) dz. At a re-entrant corner of two picked edges the blends meet in a mitre (the owner's ruling of 2026-10-30): each runs on past the corner and the quadrant beyond both walls loses what both take, Int width_1(z) width_2(z) dz. Removed 370.156402. V = 145763.176931",
|
||||
"body_count": 1,
|
||||
"volume_mm3": 145763.17693088384,
|
||||
"bbox": {
|
||||
"min": [
|
||||
0,
|
||||
@@ -17,5 +18,8 @@
|
||||
60,
|
||||
30
|
||||
]
|
||||
},
|
||||
"tolerance": {
|
||||
"rel": 1e-06
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user