Attracting Fractals

So, more summer and more fractal fun. First of all, now everything is coloured by shaders. A shader, per my definition, picks the colour for any given point/line-segment depending on direction, iterations, or group - where group can be the factor set used (IFS fractals) or angle in predefined steps (L-systems) or just zero (all other fractals).

Below, you can see a maple leaf coloured based on the factor set used to get the specific point.

The latest addition to the number of supported fractals are attractors. Below, you can see a gradient coloured Lorenz attractor from a paralell projection showiing the X and Y axes (ignoring the Z axis).

The introduction of attractors really exposed the lack of properties. The idea is that each fractal provides a range of properties (be it ints, doubles or compex numbers - perhaps also enums). These can then be queried and set from the UI using a standardized interface.

I'm exploring all these fractal types with the goal to create a base class, AbstractFractal, that I can put into a GUI. Then, fractals can be created from plug-ins, where the plug-in factory can get the actual fractals from a set of definition files - hopefully compatible with FractInt (or very similar, so that machine conversion is possible).

Then, all that is left is to create a nice Qt GUI and utilize QtConcurrent to get some performance from it. Also, have a bit of a sit-down and think through the whole memory situation - right now the application is somewhat hungry...


Post a Comment

<< Home