Baltor Get started

Gallery / 4D geometry

Uniform point sets on the 3-sphere

In your harness4D geometry toolMIT

Sample unit quaternions three ways (normalized Gaussians, a Hopf fibration grid, a super-Fibonacci spiral), measure separation, covering radius and cap discrepancy against the exact cap volume of S3, and write the stereographic image as a glTF point cloud.

Render of Uniform point sets on the 3-sphere
The render its check recorded in Godot 4.7.2, 256 by 256 pixels.

What it takes and gives

Entry points
gaussian, fibonacci_sphere, lift, hopf_map, hopf_grid, super_fibonacci, sample, cap_fraction and 7 more
Outputs
example.gltf
Coordinates
unit quaternions (x, y, z, w) = w + xi + yj + zk; stereographic image from (0, 0, 0, 1), Godot/glTF +Y up

Limits. Separation is an O(n^2) scan and covering radius and discrepancy are estimates from random probes and caps, so they suit sets of a few thousand points. The hopf_grid rounds the count to bases times fibre points. Points whose image lies beyond the clip radius (those near the projection pole) are left out of the glTF. POINTS render at one pixel in most viewers.

Details

Kind
4D geometry tool
Engine
Python 3.10 or later
Files
10 files, 179.3 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 hopf grid, preview render
Techniques
uniform sampling by normalized Gaussian vectors, Hopf fibration as a Riemannian submersion, Fibonacci spiral on S2, super-Fibonacci spirals for S3, volume of a spherical cap on S3, stereographic projection
Tags
4d, 3-sphere, sampling, unit quaternions, super-fibonacci, hopf fibration, point cloud, gltf
Identity
library.supply.creative_originals.53e4f1fe65d1260e6d5df89d.da5350be82ea5309
Version
da5350be82ea5309cafb4344e3b6e683b2c216242334fa81c8c93d4be3b500f7

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.