Fractal mathematics and geometry are useful for applications in science, engineering, and art, but acquiring the tools to explore and graph fractals can be frustrating. Tools available online have limited fractals, rendering methods, and shaders. They often fail to abstract these concepts in a reusable way. This means that multiple programs and interfaces must be learned and used to fully explore the topic. Chaos is an abstract fractal geometry rendering program created to solve this problem. This application builds off previous work done by myself and others  to create an extensible, abstract solution to rendering fractals.Chaos is capable of rendering fractals with different rendering methods and shaders applied dynamically. The program is extensible so new fractals, shaders, and rendering methods can be added. These fractals can be saved to and loaded from files. Each file has keyframes and video settings. Chaos uses these keyframes and settings to produce .mp4 video using linear interpolation between keyframes. Chaos also supports exporting .png images. Fractals currently implemented include the Cantor set, Julia, Juliabulb, Mandelbox, Mandelbrot, Mandelbulb, Newton Basin, and trees. Chaos can render fractals using either Java2D or OpenGL.
This application was the focus of my baccalaureate thesis for the Department of Mathematics and Computer Science of Rhode Island College. A link to the thesis can be found below, along with the repository, documentation, and executables.
- Create, edit, save, and load fractals
- Timeline and keyframing
- Export to .png and .mp4 format
- OpenGL hardware acceleration
- Windows/Mac/Linux operating system
- Java Runtime Environment (JRE>=7.0) or Java Development Kit (JDK>=7.0)
- Thesis: Rendering Hypercomplex Fractals
- Presentation: Rendering Hypercomplex Fractals
(1920×1080 resolution display required, use Google Chrome for the best experience)
- Presentation: Rendering Hypercomplex Fractals – Mobile Interface Design
- Poster: Rendering Hypercomplex Fractals
- JavaDocs (2.x)