Archive for August, 2006

Incredible 2D Images using NodeBox (Intel Binary!)

Recently, I’ve been busy exploring 2d graphics algorithms for generating great looking logos, wallpapers, and backgrounds. The article “Blog Redesign” drew my attention to a great tool on Mac OS X. NodeBox is an open-source application for programming 2-dimensional graphics and animation in the Python language. NodeBox lets the user focus on coding graphics without worrying about the underlying technology.

NodeBox ScreenshotIt is based on another open-source project, DrawBot, and is inspired by technologies like OpenGL and PostScript. This means NodeBox is based on vector graphics rather than pixels. As such it’s an excellent tool for generating 2D graphics intended for print, and in particular typographic experiments. NodeBox can generate PDF documents that can easily be used in Adobe Illustrator or any professional vector graphics package. NodeBox can also generate QuickTime movies for animations.

If you’re curious, the NodeBox Gallery shows off some good-looking sketches. Tom de Smedt, one of NodeBox’s authors, has published two good examples: Supercurly uses the modular font Superveloz by Andreu Balius to construct organic compositions, while Photobjects is a database of images which can be queried for images connected to certain keywords. These are then used to create randomized collages of images.
Prism is an algorithm for creating a color palette on any subject. It uses the internet as a semantic database.

NodeBox is available in version 1.0 release candidate 7, and is sophisticated enough to count as a real production tool. However, NodeBox is compiled only as a PowerPC binary for Mac OS X. As a proud owner of a new Intel-based Macbook, I’ve been looking for a way to compile the source (included in the download) as a binary for Intel-based Macs.

So read on for the required steps to compile and build it yourself, or just download my build, NodeBox 1.0rc7 Intel Binary for Mac OS 10.4.

Read the rest of this entry »

Comments (6)

DTrace comes to Mac OS X Leopard

The keynote of the much anticipated Apple WWDC 2006 is over and besides revealing the features of the upcoming Mac OS X Leopard, Apple has announced Xcode 3.0. This is the primary IDE and developer toolset for Mac OS X. The feature preview of Xcode 3.0 gives some information about a new tool named Xray. It visualizes metrics gathered from the instrumentation of applications, and possibly of the OS itself — I quote: "such Xray instruments leverage the open source DTrace, now built into Mac OS X Leopard". It seems Apple has ported the DTrace framework from Sun’s OpenSolaris or from FreeBSD to Mac OS X! Wow, this is really great news. I use DTrace regularly for tracking performance problems under Solaris and it’s a fantastic system.

Dtrace in XCodeDTrace enables performance tuning with applications and troubleshoot production systems — all with little or no performance impact. DTrace also provides improved visibility into kernel and application activity, giving the user operational insights with which they can make performance gains. Here are some examples to illustrate the power of DTrace for application and system diagnosis: Using DTrace to Profile and Debug A C++ Program, DTrace How To Guides, DTrace Tools and Top Ten DTrace Scripts. Did I mention the J2SE 6.0 built-in Dtrace Support? And for the seriously interested, the original Usenix paper about DTrace, "Dynamic Instrumentation of Production Systems" (2004), and the ACM Queue article "Hidden in Plain Sight" (2006) give valueable details on its motivation and concepts.

Update: $<blog in its entry DTrace on MacOS X at WWDC gives some more details on the DTrace integration into Mac OS X Leopard.

Leave a Comment

Scientific Plotting on Mac OS X (Intel) using Gnuplot and Plot

Gnuplot under AquaTermAfter having successfully moved my LaTeX publishing environment to the new Macbook, all that was left was a working Intel build of gnuplot 4.1.0 (which has some nice new features over 4.0). This was actually not quite easy, so I’m going to document my steps for producing a Universal Binary of Gnuplot 4.1 here for future reference.

You might also take a look at Plot. It’s a first-rate freeware plotting tool with some really great features (think ProFit or GRACE), AppleScript support, and a full-blown layout engine. All this is nicely integrated in a great looking Mac OS X GUI. I really love it.

Read the rest of this entry »

Comments (36)