Solid properties straight from the descriptor

Updated 2026-10-30 17:26; built by sections/solid/make.py from the fcp_3010_hull study's CSVs.

The 12 objects of the collision section; CPU: Intel(R) Core(TM) i5-10400F CPU @ 2.90GHz, one thread for the volume and the hull; the boxes and the sphere on numba's 12 threads, the references as their libraries run. Volume from the stored atoms in one contraction (no rings, no grid); convex hull from the rings (prototype, not in the package). Volume error against the source mesh's volume (volume rows), its convex hull's volume (hull rows), or the reference bound's volume (box and sphere rows; the sphere's from its radius; trimesh's minimum sphere is up to 0.4 % too large and slower, so the exact ball is the reference); the boxes and the sphere come from candidate hull points of the rings (no hull surface; 64 directions); the oriented box's time is that of all three bounds, the axis-aligned box and the sphere share one pass; the hull gap from 20k points on the true hull to the descriptor's hull. The 6144-atom runs from points ran at a load average of about 7: their times are upper bounds.

propertylayersatomsdirections MFCP, ms median (range)reference on the source meshreference, ms median (range)decode + reference, ms medianFCP faster than the referencevolume error, % median (worst)hull surface gap, % diag: median of means (max)farthest mesh vertex outside the bound, % diag (max)
volume (encoded from the mesh)1281024–0.028 (0.019–0.046)exact mesh volume (divergence theorem, numba)0.044 (0.014–0.235)30910 / 12-0.47 (-0.88)––
volume (encoded from the mesh)1282048–0.038 (0.023–0.061)exact mesh volume (tetrahedron sum, numba)0.052 (0.027–0.235)–8 / 12-0.31 (-0.74)––
volume (encoded from the mesh)1286144–0.042 (0.024–0.063)exact mesh volume (divergence theorem, numba)0.044 (0.014–0.235)3546 / 12-0.17 (-0.74)––
volume (encoded from the mesh)2566144–0.044 (0.025–0.084)exact mesh volume (divergence theorem, numba)0.044 (0.014–0.235)14013 / 12-0.13 (-0.71)––
volume (encoded from 20k points)1282048–0.032 (0.020–0.057)exact mesh volume (tetrahedron sum, numba)0.052 (0.027–0.235)–9 / 12-0.16 (+1.76)––
volume (encoded from 20k points)1286144–0.041 (0.020–0.069)exact mesh volume (tetrahedron sum, numba)0.052 (0.027–0.235)–8 / 12-0.15 (+1.82)––
volume (encoded from 20k points)2566144–0.046 (0.019–0.061)exact mesh volume (tetrahedron sum, numba)0.052 (0.027–0.235)–9 / 12-0.16 (+1.87)––
convex hull1281024643.8 (2.6–13.9)qhull on the mesh's vertices4.0 (2.1–16.3)1166 / 12-0.95 (-3.88)0.166 (1.31)–
convex hull1286144644.0 (2.3–13.9)qhull on the mesh's vertices4.0 (2.1–16.3)1077 / 12-1.04 (-3.78)0.131 (1.21)–
convex hull12861441285.8 (4.8–26.7)qhull on the mesh's vertices4.0 (2.1–16.3)1071 / 12-0.66 (-3.52)0.115 (1.14)–
convex hull25661441287.9 (6.2–51.5)qhull on the mesh's vertices4.0 (2.1–16.3)4070 / 12-0.46 (-3.51)0.110 (1.14)–
axis-aligned box1282048640.98 (0.66–3.33)Open3D box of the mesh vertices0.015 (0.005–0.080)–0 / 12+0.11 (-2.16)–0.52
axis-aligned box1286144641.00 (0.68–3.30)Open3D box of the mesh vertices0.015 (0.005–0.080)–0 / 12-0.16 (-2.13)–0.52
axis-aligned box2566144641.78 (1.07–6.31)Open3D box of the mesh vertices0.015 (0.005–0.080)–0 / 12-0.34 (-2.28)–0.53
oriented box1282048641.41 (0.91–4.10)minimal box: the smaller of trimesh's and Open3D's; the faster one's time79.7 (20.4–150.9)–12 / 12+0.65 (+3.64)–0.50
oriented box1286144641.48 (0.92–3.90)minimal box: the smaller of trimesh's and Open3D's; the faster one's time79.7 (20.4–150.9)–12 / 12+0.31 (+3.45)–0.50
oriented box2566144642.44 (1.40–7.30)minimal box: the smaller of trimesh's and Open3D's; the faster one's time79.7 (20.4–150.9)–12 / 12+0.41 (+3.91)–0.47
smallest sphere1282048640.98 (0.66–3.33)exact smallest ball (qhull, then the minimum ball)3.9 (2.1–18.2)–12 / 12+0.69 (+2.21)–0.15
smallest sphere1286144641.00 (0.68–3.30)exact smallest ball (qhull, then the minimum ball)3.9 (2.1–18.2)–12 / 12+0.87 (+2.25)–0.12
smallest sphere2566144641.78 (1.07–6.31)exact smallest ball (qhull, then the minimum ball)3.9 (2.1–18.2)–12 / 12+0.19 (-1.71)–0.34