



Computer Science Department
University of New Mexico
Albuquerque, NM 87131
(505) 277-3112
bederson@cs.unm.edu, hollan@cs.unm.edu
Note:
This work was paid for in part by the ARPA HCI Initiative grant #N66001-94-C-6039.
This paper accompanies a demonstration of Pad++, an interface system based on zooming. The workspace
area of Pad++ is very large in extent and resolution, allowing objects to appear at any size. Zooming and
panning are fundamental interaction techniques, and there are several efficiency mechanisms implemented
to maintain interactive frame rates for animation, even when the scenes get complicated.
Figure 1:Hypertext Markup Language (HTML). As links are followed, they are placed on the
surface to the side and made smaller.
Pad++ is a general-purpose substrate for exploring user interfaces. While not an application itself, it directly
supports creation and manipulation of graphical zoomable objects and navigation through the dataspace.
Pad++ is built as a new widget for Tk using Tcl, an interpreted scripting language. Increasingly popular, Tcl
and Tk [8] combine a scripting language and Motif-like library for creating graphical user interfaces and
applications without the need to write C code. The Tcl interface to Pad++ is similar to the interface to the
Tk Canvas widget, a surface for drawing structured graphics.
Objects in Pad++ can be described so that they change the way they look depending on their size. This is
called semantic zooming, and among other things, is a simple method for representing abstraction. When
you zoom out, you see a simplified rendering of the object, and when you zoom in, you see more details.
Perlin [9] described a prototype zooming calendar with this notion.
These animations interpolate in pan and zoom to bring the view to the specified location. If the end point,
however, is more than one screen width away from the starting point, the animation zooms out to a point
midway between the starting and ending points, far enough out so that both points are visible. The
animation then smoothly zooms in to the destination. This both gives a sense of context to the viewer as
well as speeding up the animation since most of the panning is performed when zoomed out which covers
much more ground than panning while zoomed in. We use space-scale diagrams [6] to help analyze these
trajectories.
We are currently, in collaboration with NYU and Bellcore,, continuing development of the Pad++ substrate
as well as starting work in several application domains - including a complete zooming-based work
environment.
Abstract
Large information spaces are often difficult to access efficiently and intuitively with traditional window and
icon-based interfaces. In this paper, we demonstrate Pad++, a graphical interface system based on zooming.
Objects can be placed in the graphical workspace at any size, and zooming is a basic interaction technique
for navigating. The goal is to provide simple methods for visually navigating complex information spaces
that ease the burden of locating information while maintaining an intuitive sense of location and of
relationships between information objects.
Keywords:
Interactive user interfaces, multiscale and zoomable interfaces, authoring, information
navigation, hypertext, information visualization.
Introduction
Large information spaces are often difficult to access efficiently and intuitively with traditional window and
icon-based interfaces. In the past several years, many techniques have been introduced for viewing large
dataspaces, including: SDMS [4], fisheye views [5], information visualizer [3], graphical fisheye views of
graphs [10], Pad [9], and Pad++ [1][2][7]. Space-scale diagrams have been used as an analytical tool for
some of them [6].
NAVIGATION
Finding information on the Pad++ surface is important because intuitive navigation through large
dataspaces is one of its primary motivations. Pad++ supports visual searching with zooming in addition to
traditional mechanisms, such as content-based search. Searching produces smooth animations to the desired
objects.
SAMPLE APPLICATION - HYPERTEXT
Many systems that are based on hypertext confront the problem of how to give the user an intuitive sense of
location as they navigate through large information spaces. An example is NCSA's Mosaic system. It allows
traversal of a vast information space across the internet via hyperlinks. In Mosaic, as with many other
window-based hypertext systems, following a link replaces the contents of the window with the linked data,
or sometimes brings up a new window. However, there is no graphical depiction of the relationship among
windows - even when there is a strong semantic relationship. Thus, it is quite common to hear users's
complain of losing a sense of relationship between where they are and where they've been.
Pad++ attempts to address this problem by using a very high resolution surface to graphically layout the
links representing the user's traversal. When a hyperlink is selected, the linked data is loaded to the side and
made smaller while the view is animated to center the new data. The nodes are layed out in such a way so
that no traversal of links can cause overlapping. Pad++ can read in hypertext files written in Hypertext
Markup Language (HTML), the language used by Mosaic. Figure 1 shows a snapshot with a home page
loaded and several links followed.
CONCLUSION
Pad++ is an effective tool for exploring interfaces and visualizations based on zooming. We believe that
multiscale interfaces provide effective mechanisms for addressing the problem of navigation through very
large dataspaces. The goal is to provide simple methods for visually navigating that ease the burden of
locating information while maintaining an intuitive sense of location and of relationships between
information objects.
Acknowledgments
We thank Ken Perlin and his students and staff, David Fox, Matthew Fuchs, Jon Meyer and David Bacon,
at NYU for many enjoyable discussions and for initiating interest in zooming interfaces. We especially
appreciate Craig Wier's support from ARPA's new HCI Initiative. We thank Bellcore for making an early
version of Pad++ available for our group's further development. We also thank other members of the
Computer Graphics and Interactive Media Research Group at Bellcore for all their support and discussion
of zoomable interfaces.
References
[1] Bederson, B.B., Stead, L., and Hollan, J.D., Pad++: Advances in Multiscale Interfaces,
Proceedings of ACM Human Factors in Computing Systems Conference Companion (CHI �94), pp. 315-
316.
[2] Bederson, B.B. and Hollan, J.D., Pad++: A Zooming Graphical Interface for Exploring Alternate
Interface Physics, Proceedings of ACM User Interface and Software Technology Conference (UIST'94),
pp. 17-26.
[3] Card, S.K., Robertson, G.G., and Mackinlay, J.D. The Information Visualizer, an Information
Workspace, Proceedings of ACM Human Factors in Computing Systems Conference (CHI �91), pp. 181-
188.
[4] William C. Donelson. Spatial Management of Information, Proceedings of 1978 ACM
SIGGRAPH Conference, 203-209.
[5] Furnas, G.W, Generalized Fisheye Views, Proceedings of 1986 ACM SIGCHI Conference, pp. 16-
23.
[6] Furnas, G.W. and Bederson, B.B., Space-Scale Diagrams: Understanding Multiscale Interfaces,
Proceedings of ACM Human Factors in Computing Systems Conference (CHI �95), In Press.
[7] Meyer, J., et. al. Two Document Visualization Techniques for Zoomable Interfaces, Proceedings
of ACM Human Factors in Computing Systems Conference Companion (CHI �95), submitted.
[8] Ousterhout, J.K., Tcl and the Tk Toolkit, Addison Wesley, 1994.
[9] Perlin, K.and Fox, D. Pad: An Alternative Approach to the Computer Interface, Proceedings of
1993 ACM SIGGRAPH Conference, pp. 57-64.
[10] Sarkar, M. et. al, Stretching the Rubber Sheet: A Technique for Viewing Large Layouts on Small
Screens, Proceedings of ACM Human Factors in Computing Systems Conference (CHI �93).