Lying on the Sierpiński carpet
The Sierpiński carpet is not a carpet, but a type of fractal described by Wacław Sierpiński in 1916. The technique consists in subdiving a shape into smaller copies of itself, in a potentially infinite number of times. Fractals are commons in nature, a lot of phenomena in nature are anything but regular. For example, a natural landscape may include ferns, lichens, trees, mountains, rivers and clouds, which are far too intricate to be represented by classical geometric shapes. If we imagine to roll our eyes backward to look inside our body, we can see fractals in the branching of our lungs, we can see them in the splitting of the aorta into small blood vessels, we can recognize fractals in on our brain covered in folds to increase the surface area for the neurons.
If the outer space and the inner space could be connected by a geometry, it would most likely be a fractal geometry.
In this course we are going to explore how the fractal dimension can construct spaces for contemplation. We will learn the most common type of fractals, the basic mathematics behind them and how to code them. We will see how fractals has been used in videogames and architecture, and also some example in literature.
Students are free to explore the topic with the software they do prefer, although the examples in class will use GLSL shaders. A basic coding experience is necessary (you nedd to know what variables, float numbers and loops are).
Introduction to the course. Theory, cartesian plane and definition of a function. Intro to shaders, install visual studio code and glslCanvas extension.
Theory: Self-similarity and templates PT.1 Affine Transformation
Koch curve drawing algorithm (credits to Daniel Shiffman tutorial).
Exercise: Modify the line class, add randomness. Maybe add colors depending on the iteration level?
Theory: Self-similarity and templates PT.2 Iterate Functions System
Exercise: Sieroinsky triangle and barnsley fern. Modify the Barnsley fern.
References:
L-Systems
Theory and Exercise in class
L-Systems, multiple rules from the book "Algorithmic beauty of nature"
Intro to stochastic rules, context sensitive rules and to parametric rules with the library lindenmayer
Theory, self filling curves.
Peano Curve in class
References: Video tutorial by Numberphilie
Hilbert's Curve: Is infinite math useful? video by 3Blue1Brown
Hilbert curve Shiffman tutorial