Skip to content

0xffset/mandelbrot-fractals

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


mandelbrot-fractals
mandelbrot-fractals

A collection of Mandelbrot fractals visualizations

What is Mandelbrot's setKey FeaturesHow To UseCreditsLicense

What is the Mandelbrot set?

The core formula for the Mandelbrot set is a simple quadratic iteration: $z_n+1 = z_n^2 + c$, where $z_n$ is a complex number, and $c$ is a complex constant. The Mandelbrot set is a collection of complex numbers $c$ for which the sequence $z_n$ remains bounded (does not diverge to infinity) when starting with $z_0 = 0$.

Here's a more detailed breakdown:

  • $z_n$: Represents a complex number in the iteration, evolving from $z_0=0$.
  • $c$: A complex constant parameter that defines a specific point in the complex plane.
  • $z_n+1$: The next value in the sequence, calculated by squaring the previous value ($z_n$) and adding the constant $c$.

Key Features

  • Precise Positioning
    • Adjust the view with Position X and Position Y sliders or input fields for fine control over the Mandelbrot set location.
  • Zoom Control
    • Modify the Size parameter to zoom into specific regions of the fractal with high precision.
  • Iteration Depth
    • Customize the Iterations to balance rendering speed and detail depth for complex visuals.
  • Sampling Quality
    • Set the Samples value to apply anti-aliasing and improve image quality for smoother rendering.
  • Canvas Dimensions
    • Change Width and Height to customize the resolution of the rendered image.
  • Multithreading Support*
    • Use the Threads setting to leverage multicore CPUs for faster rendering performance.
  • Paint Modes
    • Select from different Paint Modes, such as Grayscale (and others, if implemented), for various artistic effects.
  • Image Exporting
    • Ideal for generating high-resolution PNGs for further analysis or creative use.

⚠️WARNING Multithreading Support could increase the overall workload and heat generation of your CPU due to multiple cores processing tasks.

How To Use

To clone and run this application, you'll need Rust WASM, ReactJS, and npm installed on your computer. From your command line:

# Clone this repository
$ git clone https://github.com/0xffset/mandelbrot-fractals

# Go into the frontend source code
$ cd www

# Install dependencies
$ npm install

# Compile the Rust wasm backend 
$ cd ../
$ wasm-pack build

# Run the app
$ cd www/
$ npm run start

Credits

This software uses the following open-source packages:

License

MIT

About

A collection of Mandelbrot fractals visualizations

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published