The theme this time was curve. Thickness, dynamism, stroke, weight, interest in a line. It's suprisingly hard to get something that looks nice with a mouse. All of these applets need to be played with awhile before something really interesting comes out of them. It's like each program gives you a new, horribly clumsy and bizarre pen.
The first applet is a calligraphy tool. I'd been struggling for awhile with doing something sensible from the coordinates one gets from mouseDrag() - a lot of points are missing, especially if the system decides to GC in the middle of a mouse swipe. Just to see what it looked like I drew a rectangle between the last mouse position and the current one (instead of a line segment). Poof! It looks really good.
The result is conceptually similar to pen calligraphy. Fine pen control is possible if you go slowly and carefully, but broad strokes give more interesting curves. The pen draws differently on curves than on straights. The difference from a pen is that instead of being smooth, the line is a blocky angle - computer jaggies to an extreme. The whole thing reminds me a bit of the early Emigre bitmap fonts. If you have a computer making your aesthetics, recognize when something a computer does naturally is interesting.
The other three applets are all animations based on a mouse stroke. The first is a take-off on the cheesy way to do a calligraphy pen nib on a computer (using a vertical, thin brush in MacPaint or the like). Here the brush itself rotates dynamically - the results are confusing as your brain tries to interpret the image as 3d information. The second applet presents a disquieting image of a breathing line. The third applet is shameless theft from some of the work of David Small, Sawad Brooks, and other good folks in the VLW. It was suprisingly hard to get the letters to fade just right. The text is from Eno and Cale.
For the three stroke applets I wanted to do something with the timing information from the mouse drag events. But I found that the annoying gaps in the mouseDrag events provided more than enough time dimension on the user's input. Playing with the speed of the draw is interesting, especially on the final phrase applet.
I ran out of time before doing the first problem, the interactive kite. My intention was to make a two line stunt kite - lines go to each wing, allowing independent control of both sides of the kite. The mouse interface would be a simple click and drag - grab a wire and pull it around and the kite responds accordingly.