Actually I was playing around with branch thicknesses between levels. Below are some samples along with source code (I deleted the icons from each folder to save on space).
I thought of making each branch sort of radial filled gradient lines to make them appear as though they were round. I also need to learn how to add spin/textboxes to vary the different values as well as use a listbox to save and load preset values and how to save to a png file. The more I play around with your initial source code the more excited I get.
My initial stumbling block was how to add BGRABitmap to Lazarus, but after doing some Googling I finally worked that out. I downloaded the source from
https://github.com/bgrabitmap/demo and have been tinkering with it over a couple of days.