Skip to content

IMFTC/julia-set-explorer

Repository files navigation

julia-set-explorer

https://github.com/IMFTC/julia-set-explorer/raw/master/docs/screenshot.jpg

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.

Goals:

  • 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

Status

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

Building

Currently only the meson build system is supported. Compile and run the binary (jse) with:

$ meson --buildtype=release builddir
$ cd builddir
$ ninja
$ ./jse

Debugging

The G_MESSAGES_DEBUG variable can be set to see all debug messages:

$ G_MESSAGES_DEBUG=all ./jse

About

Julia set explorer written in C using gtk+

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published