This is a rendering of the Julia set for $z' = c \sin(z)$ where $c=1+0.2 i$.

This version includes gamma correction for improved contrast ($\gamma = 0.3$), a linear scaling of the colours from darkest to lightest, and $8x8$ sub-pixel sampling to generate a high-quality antialiased image. It might take a long time to complete rendering.

Paul Bourke has some images and explanation of the thorn fractal. This implementation features over sampling, gamma correction, iterative improvement, and it's open source.

The Julia set version of this fractal is generated by computing the escape time for the functions

$$ x_{n+1} = \frac{x_n}{\cos(y_n)} + c_x $$

$$ y_{n+1} = \frac{y_n}{\sin(x_n)}+ c_y $$

I look forward to trying a Mandelbrot version of the fractal soon.

New Repository

Git will use a user-defined template when starting a new git repository, so configure that template to use "main" instead of the default.

git config --global init.templateDir '~/.git-template'
cp -r /usr/local/share/git-core/templates ~/.git-template
echo 'ref: refs/heads/main' > ~/.git-template/HEAD

From that point on git init will use the template with the HEAD pointing to main.

Existing Repository

Randomly choose some affine transformations and apply them randomly to a point. Colour the transformed point based on the selected transfomation.

Drawing mostly-transparent shapes to the canvas as fast as possible.