Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

169 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🌀 Fract-ol

Code bytes Code language Top language Last commit

💡 About the project

Fract-ol is a project completed during my studies at School 42. The goal of this project is to explore and render various types of fractals using a graphical library (MiniLibX). The program allows for real-time interaction with fractals, including zooming, shifting, and customizing color schemes.

🔍 Overview

Screenshot of the Project Screenshot of the Project Screenshot of the Project

This project implements the rendering of mathematical fractals such as the Mandelbrot set, Julia set and the Barnsley Fern. It allows for smooth zooming and color transitions, offering users the ability to explore the depth of fractal patterns. The fractals are displayed in an interactive window, where users can navigate with keyboard and mouse inputs.

Some Key Features

Zoom using mouse whell
Multiple fractal types
Adjustable iterations for more detail
100% customizable color schemes

🛠️ Usage

Requirements

The project is written in C and requires the cc compiler.

Instructions

  1. Compiling the library

To compile the fractal viewer, run the following command in the project directory:

$ make
  1. Running the program

Once compiled, run the program and specify which fractal you want to explore:

$ ./fractol <fractal_name>

Examples of fractal names available to be presented on the program:

mandelbrot
julia
fern

Example:

$ ./fractol mandelbrot

Note that if you chose the julia set to be displayed, you must explicitly put in the desired arguments (x and y coordinates) that you want in order to see the exact julia set you have in mind.

$ ./fractol julia -0.835 -0.2321

This will open a window displaying the fractal on the argument. You can interact with it by using your mouse to zoom, keyboard arrows to move around the fractal and numbers/space buutons to customize collors..

  1. Controls

    -> Mouse wheel for a real time and infinity zoom (zoom in, and zoom out);

    -> Keybord numbers (0 till 9) and space bar to customize the exact collors you want;

    -> Try pressing the minos ("-") button to see some madness happening with the colors, press the equals button ("=") to return to normal;

    -> Plus buttom ("+") to add more iterarions and see a more clear image.

📌 Note

  • Make sure you have the necessary MiniLibX library installed.
  • Barnsley Fern is a probability fractal, so you cant zoom in.
  • The project supports multiple fractal types, each with crazy and unique characteristics. Experiment with different settings to discover fascinating fractal details!

About

Fract-ol is a project where you bring mathematical patterns to life, like the Mandelbrot and Julia sets. It’s about zooming into fractals and exploring endless detail through color and shape.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages