Kernel rig: scale cases, a cube doubled about its corner, a sphere scaled into an ellipsoid of the same volume, and a zero factor refused

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
jyviko
2026-10-29 16:50:20 -04:00
committed by Irakli Kourtis
parent 585789c606
commit af8f28e343
6 changed files with 138 additions and 0 deletions
@@ -0,0 +1,26 @@
{
"sources": [],
"what": "a sphere r10 scaled non-uniformly (1, 2, 0.5) into an ellipsoid",
"source": "analytic",
"method": "ellipsoid of semi-axes 10, 20, 5: V = 4/3 pi abc = 4/3 pi 1000 (the factors multiply to 1: the sphere's volume); bbox +-10, +-20, +-5; one closed face",
"body_count": 1,
"faces": 1,
"volume_mm3": 4188.790204786391,
"center_of_mass": [
0,
0,
0
],
"bbox": {
"min": [
-10,
-20,
-5
],
"max": [
10,
20,
5
]
}
}
@@ -0,0 +1,24 @@
{
"commands": [
{
"command": "solid.sphere",
"params": {
"radius": 10,
"body_name": "Ball"
}
},
{
"command": "solid.scale",
"params": {
"bodies": [
"Ball"
],
"factors": [
1,
2,
0.5
]
}
}
]
}
@@ -0,0 +1,27 @@
{
"sources": [],
"what": "a 10 mm cube scaled 2x about its far corner (10,10,10)",
"source": "analytic",
"method": "p -> o + 2(p - o) with o = (10,10,10): the corner 0 goes to -10, 10 stays: a 20 mm cube from -10 to 10; V = 8000, A = 6*400",
"body_count": 1,
"faces": 6,
"volume_mm3": 8000.0,
"area_mm2": 2400.0,
"center_of_mass": [
0,
0,
0
],
"bbox": {
"min": [
-10,
-10,
-10
],
"max": [
10,
10,
10
]
}
}
@@ -0,0 +1,27 @@
{
"commands": [
{
"command": "solid.box",
"params": {
"length": 10,
"width": 10,
"height": 10,
"body_name": "Block"
}
},
{
"command": "solid.scale",
"params": {
"bodies": [
"Block"
],
"factor": 2,
"origin": [
10,
10,
10
]
}
}
]
}
@@ -0,0 +1,8 @@
{
"sources": [],
"what": "a scale factor of 0 flattens the body to a sheet: refused",
"source": "analytic",
"method": "a zero factor maps the cube onto a plane: no solid, a clean refusal",
"outcome": "refused",
"refusal": "scale factors must be positive"
}
@@ -0,0 +1,26 @@
{
"commands": [
{
"command": "solid.box",
"params": {
"length": 10,
"width": 10,
"height": 10,
"body_name": "Block"
}
},
{
"command": "solid.scale",
"params": {
"bodies": [
"Block"
],
"factors": [
1,
0,
1
]
}
}
]
}