Friday, November 26, 2004

Filters and Tasks in Croquet

I have started writing my C5 paper and I have found some very interesting related papers. Probably the most interesting is a Xerox PARC paper from '93: Toolglass and Magic Lenses: The See-Through Interface
written by Eric A. Bier, Maureen C. Stone, Ken Pier, William Buxton, Tony D. DeRose. From the abstract:

"Toolglass(TM) widgets are new user interface tools that can appear, as though on a transparent sheet of glass, between an application and a traditional cursor. They can be positioned with one hand while the other positions the cursor. The widgets provide a rich and concise vocabulary for operating on application objects. These widgets may incorporate visual filters, called Magic Lens(TM) filters, that modify the presentation of application objects to reveal hidden information, to enhance data of interest, or to suppress distracting information. Together, these tools form a see-through interface that offers many advantages over traditional controls. They provide a new style of interaction that better exploits the user's everyday skills. They can reduce steps, cursor motion, and errors. Many widgets can be provided in a user interface, by designers and by users, without requiring dedicated screen space. In addition, lenses provide rich context-dependent feedback and the ability to view details and context simultaneously. Our widgets and lenses can be combined to form operation and viewing macros, and can be used over multiple applications."

These ideas were applied to 3D spaces in this paper: 3D Magic Lenses by John Viega, Matthew J. Conway, George Williams, and Randy Pausch. This does a nice job explaining the visualization capabilities of a both a 2D magic lens in a 3D space and a 3D box lens - that is, the contents of a box are rendered differently than the elements outside the box. The also cover the WIM - world in miniature concept that we implemented in Croquet.

The major additions we have are in the model of interaction - that is using these objects as toolglasses as described above, and in managing them as part of a collaborative system. Further, I think that this UI model is exactly the right way to create complex applications in Croquet.

No comments: