Ported to javascript and visualized using three.js.
Here is the famous explainer video Outside In. And more info about the source C++ program here
From what i can tell this algorithm almost forgotten on the internet. Almost 3/4 of the links i find are dead. I hope this project can help keep it alive.
From the original cpp code that generates the geometry:
This file is part of "sphereEversion",
a program by Michael McGuffin.
The code in this file was almost entirely taken
(with slight adaptations) from the source code of
"evert", a program written by Nathaniel Thurston.
evert's source code can be down loaded from
http://www.geom.umn.edu/docs/outreach/oi/software.html
http://www.geom.uiuc.edu/docs/outreach/oi/software.html
Grateful acknowledgements go out to Nathaniel Thurston,
Silvio Levy, and the Geometry Center (University of Minnesota)
for making evert's source code freely available to the public.
Initially i just ported the C++ code to the Javascript as you can see here. But with the contributions of Joseph Faulkner this project has come to life. Please check him out, he is awesome. :)
If you want to play with this app without downloading the source code, here's a demo link: Sphere Eversion Demo
You don't necessarily need these same versions, but I'm listing the ones I used:
- git (version 2.34.1)
- node (version 21.4.0)
- npm (version 10.2.4)
git clone https://github.com/osbm/sphere-eversion-animation.git
cd sphere-eversion-animation
npm install
npm start