Kernel rig: construction cases, an axis square to a flat face and to a cylinder through a point, and a point on the axis refused

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
jyviko
2026-10-29 17:10:12 -04:00
committed by Irakli Kourtis
parent ffd3d5fb18
commit 776d979ce1
6 changed files with 161 additions and 0 deletions
@@ -0,0 +1,8 @@
{
"sources": [],
"what": "an axis square to a cylinder's side through a point on the cylinder's axis",
"source": "analytic",
"method": "cylinder r 5, h 10 on (60,0,0) along +Z: every radial line passes through (60,0,5), so no one normal: refused",
"outcome": "refused",
"refusal": "the point is on the face's axis"
}
@@ -0,0 +1,38 @@
{
"commands": [
{
"command": "solid.cylinder",
"params": {
"base": [
60,
0,
0
],
"radius": 5,
"height": 10,
"body_name": "Cyl",
"operation": "new"
}
},
{
"command": "construct.axis.normal_to_face",
"params": {
"face": {
"face": [
65,
0,
5
]
},
"point": {
"point": [
60,
0,
5
]
},
"name": "A"
}
}
]
}
@@ -0,0 +1,22 @@
{
"sources": [],
"what": "an axis square to a cylinder's side through a point outside it",
"source": "analytic",
"method": "cylinder r 5, h 10 on (60,0,0) along +Z: through (66,8,5), 10 from the axis along (0.6,0.8,0): the radial line through (60,0,5) along (3,4,0)",
"construction": {
"A": {
"axis": {
"through": [
60,
0,
5
],
"dir": [
3,
4,
0
]
}
}
}
}
@@ -0,0 +1,38 @@
{
"commands": [
{
"command": "solid.cylinder",
"params": {
"base": [
60,
0,
0
],
"radius": 5,
"height": 10,
"body_name": "Cyl",
"operation": "new"
}
},
{
"command": "construct.axis.normal_to_face",
"params": {
"face": {
"face": [
65,
0,
5
]
},
"point": {
"point": [
66,
8,
5
]
},
"name": "A"
}
}
]
}
@@ -0,0 +1,22 @@
{
"sources": [],
"what": "an axis square to a box's top through a point above it",
"source": "analytic",
"method": "box 40 x 30 x 20 with a corner at the origin (x 0..40, y 0..30, z 0..20): the top is z = 20, normal Z; through (12,7,30) square to it: the line x 12, y 7 along Z",
"construction": {
"A": {
"axis": {
"through": [
12,
7,
20
],
"dir": [
0,
0,
1
]
}
}
}
}
@@ -0,0 +1,33 @@
{
"commands": [
{
"command": "solid.box",
"params": {
"length": 40,
"width": 30,
"height": 20,
"body_name": "Box"
}
},
{
"command": "construct.axis.normal_to_face",
"params": {
"face": {
"face": [
10,
10,
20
]
},
"point": {
"point": [
12,
7,
30
]
},
"name": "A"
}
}
]
}