Julia sets make an interesting visual building block that can be combined with other kinds of transforms to create different shapes.
Here they are used to create some baroqueish page divide lines.
These are all going to be images the full width of the page, but not tall.
(Note: all the images here are rendered by your browser using WebGL shader programs. If you want to see the code for those then view the page source)
Here is a basic Julia set at c = -0.7 + 0.0 i
This one reminds strongly of the Mandelbrot set (which is like the map of all the Julia sets). The y axis has been squeezed about 2x compared to the x axis, to make it wide. Because c is at zero on the i axis, it is symmetrical rather than skewed.
Moving in the negative direction on the real axis to -1.3 gives a more spread out image.
Now we try a trick - transforming the x-axis with an offset and some reflection. This gives us two copies of the main bulge which makes the “line” less heavy in the middle.
If we move away from zero in the i axis to 0.05, we can break some of the symmetry.
Solid black is ok, but it might be nice to more contrast and expose more of the edge details. The previous images were showing only the last iteration of the Julia set calculation. However, if we pick a range of iterations to use as the image - here from 13 to 90 - we can create an outline instead of a solid black image.
This still looks quite similar to a regular Julia set.
If we reflect the y-axis in a similar way to the x-axis earlier, that creates a double line. Note the y-axis is also squeezed again to keep the height similar.
The iterations contain also gradient information. If we analyse that at each point, we can use it to create shading, giving a 3D effect, here with some “gold”.
Tweaking the c value just a little finds us some whirly fractal loops.
Finally, we can animate c or any other parameters.