A graph browsing system has been extended to support several general graph operations related to topological graph theory, such as Cartesian product, suspension, face tracing, genus distribution, crosscap distribution, and converting between graphical rotation projections and combinatorial rotation systems. Facilities have also been provided for generating topological building blocks such as bouquets, cubes, paths, cycles, and complete graphs. This system can be used to define graphs diagrammatically and explore their topological properties. The graph browser, called Bonsai, provides an interpreter for a simple graph description language and a graphical interface for modeling information in the form of graph and set diagrams. Graph structures can be created with the browser and converted into a variety of textual forms to interface with other applications. Similarly, separate applications can generate text streams and direct them into Bonsai’s interpreter to display the resulting animations. Graphs can be subdivided into sets and each set can be displayed with separate viewing characteristics in separate windows. Bonsai can also be used as a direct manipulation interface for application programs that monitor callbacks from a Bonsai editing session. Although designed to be used as a generic tool for many different applications, parts of Bonsai had to be extended in order to support some of the more challenging aspects of topological graph theory. This paper describes the requirements and capabilities of the new system and its supporting programs, as well as the problems and issues raised in their design and implementation. Related systems and future plans for Bonsai are also briefly discussed. This paper is intended both as a description of the availability of graphics features for software-literate topological graph theorists and as a guide to implementors of similar or enhanced facilities.
[1]
Frances Paulisch.
An interface description language for graph editors
,
1988,
VL.
[2]
Michael Potmesil,et al.
FRAMES: Software tools for modeling, rendering and animation of 3D scenes
,
1987,
SIGGRAPH.
[3]
Paul E. Haeberli,et al.
ConMan: a visual programming language for interactive graphics
,
1988,
SIGGRAPH.
[4]
Lawrence A. Rowe,et al.
A browser for directed graphs
,
1987,
Softw. Pract. Exp..
[5]
Brian W. Kernighan,et al.
Pic—a graphics language for typesetting
,
1990
.
[6]
William D. Clinger,et al.
Revised3 report on the algorithmic language scheme
,
1986,
SIGP.
[7]
R. Stallman.
EMACS the extensible, customizable self-documenting display editor
,
1981,
SIGPLAN SIGOA Symposium on Text Manipulation.
[8]
James A. Gosling,et al.
The News Book: An Introduction to the Network/Extensible Window System
,
1989
.
[9]
G. W. Furnas,et al.
Generalized fisheye views
,
1986,
CHI '86.
[10]
David Harel,et al.
On visual formalisms
,
1988,
CACM.
[11]
Donald E. Knuth,et al.
The art of computer programming: V.1.: Fundamental algorithms
,
1997
.
[12]
James Gettys,et al.
The X window system
,
1990
.
[13]
Selmer M. Johnson.
Generation of permutations by adjacent transposition
,
1963
.
[14]
Brian W. Kernighan,et al.
The C Programming Language
,
1978
.