What can ya do in 1000 bytes?

My response to the BoingBoing 1K Challenge was to combine simplified versions of a pair of old Architecture Machine Group graphic demos: the "Mandala" symmetry paint program, and the "Smoking Clover" colorspace explorer.

See the four color-changing quarter-circles below? Click and drag anywhere within that area and see what happens. Warning: this little toy can be surprisingly addictive!

I'm still working on improving elegance, but the source code does fit within 1K (978 bytes, in fact) if formatted as a one-liner. That unreadable version can be found here, to prove it achieves the goal. A more readable version (still very terse and uncommented, but reasonably indented) can be found here.

Caveat: Yes, I know performance is poor on Linux. That's the result of running the animation loop through the event system, which is an approach that doesn't work as well in X-Windows. I've since learned of an alternative technique which might run more smoothly, but I didn't have time to incorporate it before the end of the contest, and I don't think it would be honest to sneak it in after the deadline. If/when I implement the rest of the mandala system, I'll incorporate it at that time.

By the way, if you prefer rotational to reflextive symmetry (better for painting real mandalas), the necessary change is now documented in the non-compressed version. and can be seen here. I haven't yet gotten both modes into a single 1K applet, but I'm still working on it.

Creative Commons License
This work (the applet source code and executable) is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License. If you want to do something with it beyond those limits, talk to me.
Joe Kesselman / keshlam-nospam@comcast.net (sic)