Piecewise Isometries in 3D

July 17, 2026

drag to orbit · scroll to zoom · right-drag to pan
view
trajectory
parameter spaceα → · β ↓
0.101
0.000
1.000
resolution
500
350
slice
0.00
display
0.015
0.90
0.90
effects
colormap
animate
0.15
0.10
initializing…

About

In flat · 2d view — where this opens — the plotter draws the orbit set of

T(z)={αzif z2>1α(βz+2(1β))if z21T(z) = \begin{cases} \alpha \cdot z & \text{if } |z - 2| > 1 \\ \alpha \cdot (\beta z + 2(1 - \beta)) & \text{if } |z - 2| \leq 1 \end{cases}

for a single choice of the unit-circle parameters α\alpha and β\beta.

Here we treat each such picture as a slice. Pick a trajectory through the (α,β)(\alpha, \beta) parameter square — sweep β\beta with α\alpha held fixed, or the other way around — and stack the orbit sets along it, at height z=tz = t for trajectory time tt. The union of slices is a 3D point cloud: a bifurcation diagram of the whole family.

The cut controls slice this solid open with clipping planes. A thin slab perpendicular to the tt axis recovers a single 2D fractal; slabs along xx or yy are sections transverse to time, revealing the filament structures traced by the orbits as the parameters move — a view that does not exist in any single 2D picture.

Everything is generated on the fly (a few million points in well under 100 ms) and rendered as an additively-blended point cloud with WebGL.

More about the math (PDF in Spanish)

Juan Pablo Romero Méndez

Juan Pablo Romero Méndez

Exploring type theory, functional programming, math visualization, and proof assistants

@1jpablo1

© 2026