Duocylinder measures and diagonal slices
In your harness4D geometry toolMIT
Compute the duocylinder's hypervolume, boundary 3-volume and ridge torus area, confirm them by integrating axis and diagonal slices, and write the diagonal slice sweep (stretched Steinmetz bicylinders) as an exact four-strip glTF morph animation.

What it takes and gives
- Entry points
- contains, hypervolume, boundary_volume, ridge_area, axis_slice_volume, cavalieri_axis, diagonal_slice_volume, cavalieri_diagonal and 6 more
- Outputs
- example.gltf
- Coordinates
- slice x + z = k in its hyperplane basis: ((2x - k)/sqrt 2, y, w), Godot/glTF +Y up
Limits. The slice sweep and the diagonal formulas are for the unit duocylinder (both radii 1); the measure functions take any radii. Slice volumes come from Simpson's rule after a cosine substitution (near 1e-8 relative for the Cavalieri total). Keyframes are morph targets, so between them vertices move along chords.
Details
- Kind
- 4D geometry tool
- Engine
- Python 3.10 or later
- Files
- 10 files, 224.6 KB
- Licence
- MIT
- Declared effects
- reads files, runs commands, writes files
- Checked with
- Godot 4.7.2, gl_compatibility (opengl3, Mesa llvmpipe under Xvfb)
- Checks
- cli rebuilds example, gltf structure example, cli example runs, cli example gltf structure, godot loads example, godot loads cli duocylinder coarse, preview render
- Techniques
- duocylinder as a product of two disks, Cavalieri's principle, Steinmetz bicylinder, ruled cylinder surfaces, Chebyshev spacing for quadrature and meshing, Simpson's rule
- Tags
- 4d, duocylinder, steinmetz solid, bicylinder, slice, cavalieri, morph targets, gltf
- Identity
library.supply.creative_originals.cf18d470db8995084c1897e4.7261e2a72f34137c- Version
7261e2a72f34137c5a34361bc4c135df500831cd225e32dafadb33cdc346324f
The version is the SHA-256 of the item your harness downloads; every file in it names its own checksum.
Something wrong with this item, its rights or its safety? Report it on the support page, or from your harness after a download.

