408 words on Mac OS X 10.5 Leopard
I certainly like Quartz Composer [previously: Quartz Composer in X.5 and extra notes] and keep discovering new aspects of it. One is when dealing with the very handy Mathematical Expression patch which was introduced in Mac OS X.5. It’s fun to see how that patch is rather clever: If you use variables in the expression the patch evaluates and those variables don’t affect the result, the patch realises that and removes them from the list of inputs it automatically creates. Look Ma, no inputs!
I suppose now we can try to turn this into a sport to figure out an expression which fools that cleverness…
While that is clever and suggests the patch makes an effort, I do wonder whether it actually is a good thing. It keeps you from trying out things by mathematically ‘commenting out’ variables in the equation that is being computed. If you do so, the corresponding inputs vanish. And the connections hooked up to those inputs vanish with them. Which means that restoring the previous state will require extra effort. Which in turn makes it less likely that you’ll try things out.
Another thing are loops. Some kinds of loops are easily done in Quartz Composer. With the Replicate in Space patch, for example. But other things just seem rather hard to get right and you quickly reach a complexity where you wish you had tried programming a custom patch with exactly the feature you want to begin with rather than fiddling with Quartz Composer’s built-in patches.
One thing I tried to do was the following: I wanted to monospace a string. That is, I wanted to throw in a String, and, as an output get an image where the string is written in an arbitrary font with the space used being the same for each character. In a way that should have been easy. But things didn’t quite work out as I wanted them to and I ended up with a monstrous composition for a limited length string instead. As a bonus it even contains a feedback loop (I have to draw all characters to find out which one is the widest and then I’ll have to draw all characters centred on that width). The composition seems to do the job but it’s just an awful ‘solution’:
When looking at compositions like this one you start thinking whether you couldn’t try to create compositions just for the æsthetics of their components…