A Julia set explorer for Linux written in C using gtk+. For now the focus is the well known function f(z) = z^2 + c.
- Be fast!
- Use mirroring to reduce calculations whenever possible
- Use caching (uses a lot of memory, only meaningful in some cases)
- Use multithreading where possible (and sensible)
- Provide functions for operating on any plain RGB pixel buffer in memory
- Good user experience
- Create a UI for adjusting the value of c, the max. number of iterations, etc.
- Allow easy navigation inside the Julia set
- Meta
- Use the meson build system
The current code is experimental and badly organized as I’m mostly still playing around to learn all the basics and gather ideas on how to achieve certain things. You will also encounter warnings coming from programming mistakes that haven’t been fixed yet ;)
But the basics are already working, such as:
- setting the constant c, max. number of iterations, and center of view from the UI
- animated transitions for zooming
Currently only the meson build system is supported. Compile and run the binary (jse) with:
$ meson --buildtype=release builddir
$ cd builddir
$ ninja
$ ./jse
The G_MESSAGES_DEBUG variable can be set to see all debug messages:
$ G_MESSAGES_DEBUG=all ./jse