A Python GUI app for generating epitrochoids and hypotrochoid parametric equations. This is what the Spirographs toy does using gears.
Find a file
2024-11-19 06:47:00 -05:00
img Embedded the matplotlib in a GtkViewport. 2021-06-27 15:40:30 -04:00
.gitignore Updated gitignore to ignore more temporary files. 2021-06-27 23:57:50 -04:00
LICENSE Updated license info, added SPDX identifier 2024-11-19 06:13:37 -05:00
README.md Stupid merge conflicts 2024-11-19 06:16:56 -05:00
spirographs.glade Added text entry beside sliders 2021-06-28 00:48:25 -04:00
spirographs.py Added theta multiplier feature in GUI 2024-11-19 06:47:00 -05:00

Spirographs!

Screenshot of software

Everyone who grew up playing with this toy remembers it fondly. Very cool shapes and patterns. Recently, I was wondering if there was a mathematical formula describing the shapes created by Spriographs, and of course there is!

They're actually quite simple. The shapes are called hypotrochoids and epitrochoids. To calculate each point, you simple use the following parametrized equations, plugging in 0 to 2π for θ:

And that's it! To play around with the different patterns, this Python GTK3 app was created so you could use sliders to change the parameters and see how they affect the output.