HomeProjectsPeoplePublicationsLinks
SATIN

SATIN - Research

Overview

Software support for making effective pen-based applications is currently rudimentary. To facilitate the creation of such applications, we have developed SATIN, a Java-based toolkit designed to support the creation of applications that leverage the informal nature of pens. This support includes:

  • a scenegraph for manipulating and rendering objects
  • support for zooming and rotating objects
  • switching between multiple views of an object
  • integration of pen input with interpreters
  • libraries for manipulating ink strokes
  • widgets optimized for pens
  • and compatibility with Java's Swing toolkit

Motivation

Sketching and writing are natural activities in many settings. Using pen and paper, a person can quickly write down ideas, as well as draw rough pictures and diagrams, deferring details until later. The informal nature of pens allows people to focus on their task without having to worry about precision.

However, although more and more computing devices are coming equipped with pens, there are few useful pen-based applications out there that take advantage of the fact that pens are good for sketching. Most applications use pens only for selecting, tapping, and dragging. These applications simply treat the pen as another pointing device, ignoring its unique affordances.

Furthermore, the few compelling applications that do exist are built from scratch, despite the fact that many of them share the same kinds of functionality. This is because of the rudimentary software support for creating pen-based applications. Despite the fact that many new and useful pen-based interaction techniques have been developed, such as gesturing and pie menus [5], these techniques have not yet been widely adopted because they are difficult and time-consuming to implement.

With respect to input and output for pens, we are at a stage similar to that of windowing toolkits in the early 1980s. Many example applications and many novel techniques exist, but there are no cohesive frameworks to support the creation of effective pen-based applications. As a first step towards such a framework, we have developed SATIN, a toolkit for supporting the creation of informal ink-based applications. From a high-level perspective, there were three research goals for SATIN:

  • Design a generalized software architecture for informal pen-based applications, focusing on how to handle sketching and gesturing in a reusable manner
  • Develop an extensible toolkit that simplifies the creation of such informal pen-based apps
  • Distribute this toolkit for general use by researchers
· Copyright © 1998-2003 by the Regents of the University of California · Last updated Tuesday July 17 2001