Baltor Get started

Gallery / 4D geometry

Exact hyperplane slice sweep as glTF morph targets

In your harness4D geometry toolMIT

Sweep a hyperplane through the 5-cell, tesseract, 16-cell or 24-cell and write one glTF mesh whose morph-target animation plays the exact sequence of 3D cross-sections (for example tetrahedron, truncated tetrahedron, octahedron).

Render of Exact hyperplane slice sweep as glTF morph targets
The render its check recorded in Godot 4.7.2, 256 by 256 pixels.

What it takes and gives

Entry points
make_polytope, direction_vector, tetrahedra, build, positions_at, mesh_measures, exact_measures, morph_error and 6 more
Outputs
example.gltf
Coordinates
slice points in the hyperplane's own x, y, z (fourd.hyperplane_basis; for the normal (0,0,0,1) these are x, y, z), Godot/glTF +Y up

Limits. Convex polytopes with planar cells only (the four built in). Where vertex heights tie, a slice corner jumps between two coincident positions inside a 1 ms keyframe pair; the drawn shape does not change there. The mesh holds degenerate zero-area triangles for parts of cells the hyperplane has not reached. The slice frame (hyperplane basis) is fixed for the whole sweep.

Details

Kind
4D geometry tool
Engine
Python 3.10 or later
Files
10 files, 172.2 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 16cell slices, preview render
Techniques
cross-sections of convex polytopes by hyperplanes, tetrahedral decomposition of polyhedral cells, piecewise-linear vertex motion between critical heights, glTF 2.0 morph targets with linear weight interpolation
Tags
4d, slice, cross-section, hyperplane, morph targets, blend shapes, animation, gltf
Identity
library.supply.creative_originals.6a0aa38c2a34de5172c8101e.d1f4507910233768
Version
d1f45079102337689f07d4ec36105146b379e6cd6a1eb26dcb831e4b751081fd

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.