>As a very proud father I have to show this to the world – Lisa can get up to standing by her self. My wife just managed to catch this historic moment using her cell phone before Lisa fell over. It looks as if the time of moving everything fragile and expensive into closed cupboards has come :-)
Category: Miscellaneous
>Clearing the Attic
>Let me just say this first: yes, I’m a sick individual.
I’ve been clearing out my room at my parent’s attic. This is some of the left overs that I donated to recycling.
>My Little Brother
>Little brothers are fun. The first years we knew each other we spent our days teasing each other and beating the other one up. But if someone else touch him, we where a team at once.
These days, we spend our time competing in on-line racing and sharing computer parts. Actually, this is more fun than beating each other up :-)
However, it is still important to beat him at everything that we try. My success rate is getting worse and worse by the years and now he is quicker than me on the virtual track. Thus it is a bit of a pain to admit that they guy actually has talent. I just stumbled on his photo stream and I’m stunned. My little brother can really use a camera!
>Interesting
>This is an interesting read – good thing I didn’t show my script that extracts the lines and files where each variable is used :-). I learned a thing or two, so thanks!
>IPRED
>I try not to mention these things, but this article really got my attention. Scary.
http://www.svd.se/opinion/brannpunkt/artikel_2103621.svd [Swedish only!]
>Cola!
>A tip
>The Gigabyte GA-MA78G-DS3H motherboard will not boot with 4 GB on board unless you first update the BIOS. This means that if you buy 2x2GB of RAM, you will need to boot using one DIMM, update the BIOS and then insert the second DIMM. Failing to do so will just bring frustration and anger.
>Foundations of Qt Development re-printed
>I was happy to learn that Springer has printed my book, Foundations of Qt Development. Their distribution rights seem to span parts of south east Asia and the middle east. For the rest of us, APress is the preferred source.
In addition to this, the Linux Learning Centre, has decided to use the book as a part of their Qt course. Kudos to Prashanth for making this happen.
Finally, as a side note, real life has recently been too hot to get any hacking done. We’ve seen about two weeks with 30dgC+ temperatures here, but now it finally rains and temperatures as more comfortable.
>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…
>Fractalicious
>Ever since I first played with FractInt, it must have been at least 15 years ago, I’ve been intrigued by fractals. At first, they seemed like magic to me, but as I learned more maths, I can understand the why, but not always the how.
A couple of years ago I set out to write a fractal exploration application called Frakter. To be honest, it sucked pretty much, but it was an attempt. The nice things about it where:
- Fractals where kept in external scripts, so that the application could be extended.
- Colouring was done using special colour maps that could be loaded and saved.
- It used a background thread to render the fractals.
- It had a zooming history that one could type right into to find interesting ranges in the complex numbers realm.
Now and then I visit Paul Bourke‘s great collection of fractals (and loads of other stuff too). Each time, I feel an urge to write something that can handle everything that he shows.
I want to be able to fit all different types of fractals into a class tree that I can write a GUI around. The data carried from the fractals to the UI would be enough to do basic 2D rendering, 3D rendering, psychedelic colouring, and so on.
I’ve had a couple of half hearted attempts this far, but now I started from the other direction, i.e. starting with the fractal types I never get to otherwise.
Right now I’ve implemented IFS and L-systems. The implementation is not even an attempt at being efficient and uses loads and loads and loads of memory, but it works. The next step is to create a colouring class that one can inherit to do the funky stuff. Last value, current value and current iteration, fractal specific category are the “input values” I plan to use. Right now, fractal specific category, is “last used transformation set” when dealing with IFS, for L-systems, it is zero.