An open API service indexing awesome lists of open source software.

https://github.com/bensouchet/fractol

School Project - Graphic - Fractals Explorer
https://github.com/bensouchet/fractol

fractal fractol hsv julia julia-fractal mandelbrot mandelbrot-fractal school42

Last synced: about 1 year ago
JSON representation

School Project - Graphic - Fractals Explorer

Awesome Lists containing this project

README

          

# Fractol

Fractol is a program developed for my learning course at 42 school for the exploration of Fractals.

Several options are available (see [Keyboard shortcuts](https://github.com/BenjaminSouchet/Fractol#keyboard-shortcuts) or/and [Mouse controls](https://github.com/BenjaminSouchet/Fractol#mouse-controls) sections for more infos) :
* Zoom and unzoom
* Change the number of iterations
* Move the current fractal
* Rotate by step of 90°
* Edit the display gradient
* Navigate between the three fractals
* Edit the shape of the fractal with the position of the mouse (only available with the fractal Julia)

## Install & launch
```bash
git clone https://github.com/BenjaminSouchet/Fractol ~/Fractol
cd ~/Fractol && ./fractol Julia
```
You have to launch the program with a parameter. This is the name of the fractal you would like to open at the execution of the program. This parameter as to be the name of a valid fractal (Julia, Mandelbrot or Tricorn).

Example :

Open the Mandelbrot fractal ⇣
```bash
./fractol Mandelbrot
```
## Keyboard shortcuts

Description

 Key(s) 

Close the program (aka quit/exit)
 esc 

Reset all the changes made for this map
 clear 

Change the display gradient (aka change color)
 shift 

Enable or disable the mouse controls
 M  or  S 

Increase the global size of the fractal (aka zoom)
 + 

Decrease the global size of the fractal (aka unzoom)
 - 

Move the fractal to the up (aka move up)
 ▲ 

Move the fractal to the down (aka move down)
 ▼ 

Move the fractal to the left (aka width move left)
 ◄ 

Move the fractal to the right (aka move right)
 ► 

Increase the number of iterations
 W 

Decrease the numbre of iterations
 Q 

Clockwise rotation on the Z axe
 T 

Counter clockwise rotation on the Z axe
 R 

Display the Julia fractal
 1 

Display the Mandelbrot fractal
 2 

Display the Tricorn fractal
 3 

## Mouse controls

Description

 Control(s) 

Increase the global size of the fractal at the position of the cursor
 left button 

Decrease the global size of the fractal at the position of the cursor
 right button 

Increase the global size of the fractal (aka zoom)
 scroll up 

Decrease the global size of the fractal (aka unzoom)
 scroll down 

## Contact & contribute

If you want to contact me, or fix/improve Fractol, just send me a mail at **bsouchet@student.42.fr**