uwMike.com

I am engaged to the beautiful and wonderful Tara Cleaver!

A Conch Shell Clock

June 10th, 2007 3

I’ve written before about the [power of JavaScript as a visualization tool](http://uwmike.com/articles/2007/01/08/javascript-visualization/). Then, I’d been talking about it in conjunction with straight-up HTML and SVG. Now I’ve got a neat new demo to share that takes advantage of Canvas.

You’re going to need Firefox or Safari to view this, but [check it out](http://sandbox.mikepurvis.com/js/clock/).

The genesis of this idea comes from Louis K’. Thomas’ [logarithmic clock](http://www.latenighthacking.com/projects/2005/logClock/), which [showed up on reddit](http://reddit.com/info/1thgm/comments) recently.

I had wanted to experiment with some more interesting visuals than what Thomas had in his original. I’ve always been fascinated with polar functions and spiral geometry, and this seemed like a fantastic opportunity to explore this area. Thinking of a traditional clock face, I mused about the feasibility of bending the log clock into some kind of round display that was less obviously just a mathematical plot.

Hopefully I’ll have more time at some point to write about the process of creating this, but for now, enjoy!

buyessayhere com

Discussion

  1. Sweet looking clock…..too bad i have to study or I will keep on staring at it.
    Good luck on your exams. :)

    Posted at 9:31 am on June 10th by Samuel Cheng.

  2. That’s neat twist on the logarithmic clock idea. I really like the picture in your blog entry – it’s more “artistic” than the final conch. :)

    Posted at 2:13 pm on June 11th by Louis Thomas.

  3. Yeah, I liked it, too. That was part of this earlier concept, showing hours, minutes and seconds. Unfortunately that takes on the order of milliseconds to render on my MacBook, so it’s utterly unsuited to real-time presentation—at least within the Canvas medium.

    Further experiments have suggested that it’s as much the JavaScript functions that are a bottleneck as it is the Canvas drawing, though. I’m thinking I could realise some pretty significant performance benefits by aggressively caching the positions of those threads which only need to move on intervals. Even if Canvas requires a complete frame to be drawn every time, just having to calculate the second-hand positions may be a help… and within those, it should be possible to pre-calculate a set of a few hundred positions and snap each to one of them.

    Or, of course, just switch to language and drawing tool that’s meant for this kind of thing. :)

    Posted at 2:40 pm on June 11th by Mike Purvis.

© 2004-2013, Mike Purvis, some rights reserved. I'm running Wordpress, and I have an RSS feed.

resume writing services