mirror of
https://github.com/bherbruck/solidcraft.git
synced 2026-11-03 10:35:58 +00:00
kernel-cases: ladder 07/019, a concave corner's G2 patch
The inner corner of a 20 x 20 x 10 notch in the 60 x 40 x 20 box, three concave r5 rounds with corner: g2: one valid body of 13 faces within the box, the patch's twelve seams jumping at most 1e-3 per mm clear of the hole's six corners (2.7e-4 measured; the ball corner jumps 0.2). The continuity check looks within 11 mm of the corner: the vertical round, 2.5 mm long past its setback, meets its faces 11.2 mm out with every round's G1 jump. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
{
|
||||
"sources": [],
|
||||
"what": "three concave r5 rounds at the inner corner of a 20x20x10 notch, with the g2 corner patch",
|
||||
"source": "invariants",
|
||||
"method": "the notch's inner corner (40,20,10), three concave edges, set back 1.5 r = 7.5 and filled with one patch G2 to the three rounds and the three faces; one valid body with the faces of the ball corner (13); across the patch's seams the curvature jump is at most 1e-3 per mm (the ball's corner jumps 1/r = 0.2) clear of the six points where a round's section ends on a face (within 11 mm of the corner: the hole reaches 7.5 sqrt 2; the vertical round, 2.5 mm long past its setback, meets its faces 11.2 mm out, with the G1 jump every round has)",
|
||||
"body_count": 1,
|
||||
"faces": 13,
|
||||
"bbox": {
|
||||
"min": [
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
"max": [
|
||||
60,
|
||||
40,
|
||||
20
|
||||
]
|
||||
},
|
||||
"continuity": {
|
||||
"near": [
|
||||
40,
|
||||
20,
|
||||
10
|
||||
],
|
||||
"within_mm": 11,
|
||||
"clear_mm": 1.2,
|
||||
"curvature_jump_per_mm": 0.001
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,53 @@
|
||||
{
|
||||
"base": "../../01-primitives/001-box",
|
||||
"commands": [
|
||||
{
|
||||
"command": "solid.box",
|
||||
"params": {
|
||||
"corner": [
|
||||
40,
|
||||
20,
|
||||
10
|
||||
],
|
||||
"length": 30,
|
||||
"width": 30,
|
||||
"height": 20,
|
||||
"body_name": "Notch"
|
||||
}
|
||||
},
|
||||
{
|
||||
"command": "solid.combine",
|
||||
"params": {
|
||||
"target": "Part",
|
||||
"tools": [
|
||||
"Notch"
|
||||
],
|
||||
"operation": "cut"
|
||||
}
|
||||
},
|
||||
{
|
||||
"command": "solid.fillet",
|
||||
"params": {
|
||||
"edges": [
|
||||
[
|
||||
50,
|
||||
20,
|
||||
10
|
||||
],
|
||||
[
|
||||
40,
|
||||
30,
|
||||
10
|
||||
],
|
||||
[
|
||||
40,
|
||||
20,
|
||||
15
|
||||
]
|
||||
],
|
||||
"radius": 5,
|
||||
"corner": "g2"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1200,6 +1200,18 @@
|
||||
"seconds": 2.184099933,
|
||||
"status": "pass"
|
||||
},
|
||||
"ladder/07-fillets/019-concave-corner-g2-patch": {
|
||||
"measured": {
|
||||
"area_mm2": 8702.800595617835,
|
||||
"body_count": 1,
|
||||
"edges": 33,
|
||||
"faces": 13,
|
||||
"vertices": 22,
|
||||
"volume_mm3": 44254.3419135911
|
||||
},
|
||||
"seconds": 2.217877403,
|
||||
"status": "pass"
|
||||
},
|
||||
"ladder/07-fillets/016-corner-three-sequential-r5-r3-r7": {
|
||||
"seconds": 0.045599545,
|
||||
"status": "pass"
|
||||
|
||||
@@ -124,6 +124,7 @@
|
||||
{
|
||||
"cases": [
|
||||
"ladder/07-fillets/015-corner-g2-patch",
|
||||
"ladder/07-fillets/019-concave-corner-g2-patch",
|
||||
"ladder/07-fillets/006-variable-r5-to-zero",
|
||||
"ladder/07-fillets/001-single-edge-r5",
|
||||
"ladder/07-fillets/007-variable-r5-to-1e-3",
|
||||
|
||||
@@ -871,6 +871,17 @@ case(T7, "015-corner-g2-patch", "three r5 rounds at a corner with the g2 corner
|
||||
"(the ball's corner, 009, jumps 1/r = 0.2) clear of the six points where a round's section ends on a face, where the round's "
|
||||
"own G1 seam with the face ends (the patch passes from one curvature to the other within 15% of each side: 1.2 mm covers it)",
|
||||
base=B1, source="invariants")
|
||||
notch = [[50, 20, 10], [40, 30, 10], [40, 20, 15]]
|
||||
case(T7, "019-concave-corner-g2-patch", "three concave r5 rounds at the inner corner of a 20x20x10 notch, with the g2 corner patch",
|
||||
[box([40, 20, 10], 30, 30, 20, body_name="Notch"), C("solid.combine", target="Part", tools=["Notch"], operation="cut"),
|
||||
F(notch, 5, corner="g2")],
|
||||
{"body_count": 1, "faces": 13, "bbox": {"min": [0, 0, 0], "max": [60, 40, 20]},
|
||||
"continuity": {"near": [40, 20, 10], "within_mm": 11, "clear_mm": 1.2, "curvature_jump_per_mm": 0.001}},
|
||||
"the notch's inner corner (40,20,10), three concave edges, set back 1.5 r = 7.5 and filled with one patch G2 to the three "
|
||||
"rounds and the three faces; one valid body with the faces of the ball corner (13); across the patch's seams the curvature "
|
||||
"jump is at most 1e-3 per mm (the ball's corner jumps 1/r = 0.2) clear of the six points where a round's section ends on a face (within 11 mm of the corner: the hole reaches 7.5 sqrt 2; "
|
||||
"the vertical round, 2.5 mm long past its setback, meets its faces 11.2 mm out, with the G1 jump every round has)",
|
||||
base=B1, source="invariants")
|
||||
V7 = V5 - 2 * SPANDREL * 25 * 20 - SPANDREL * 9 * 60 + SPANDREL * 1 * 2 * PI * (8 + XBAR * 1)
|
||||
case(T7, "017-part-rounds", "the running part: r5 on the front vertical edges, r3 on the back wall's top front edge, r1 where the boss meets the top",
|
||||
[F([[0, 0, 10], [60, 0, 10]], 5), F([[30, 30, 35]], 3), F([[23, 15, 20]], 1)],
|
||||
|
||||
Reference in New Issue
Block a user