Creating and Manipulating Constrained Models

The success of constraint-based approaches to geometric modeling has been limited by difficulty in creating constraints, solving them, and presenting them to users. This paper addresses all three issues. We facilitate the creation of constrained models by using placement operations to specify constraints as well as positions, with no extra work on the part of the user. We augment Snap-Dragging[Bie89], an earlier successful technique for specifying geometric models, to give the user the option of making persistent the relations it helps create. Because the technique provides both the constraints and an initial solution to them, we can use the techniques of constrained dynamics to maintain the relationships as a user drags the models. This differential approach to constraints avoids many of the difficulties in constraint-based systems, such as solving non-linear algebraic equations. Our approach suggests methods for displaying and editing constraints as well. This research was sponsored in part by Apple Computer, Siemens Corporation and Silicon Graphics Incorporated. The first author is supported in part by a fellowship from the Schlumberger Foundation, Inc. The views and conclusions contained in this document are those of the authors and should not be interpreted as representing the official policies, either expressed or implied, of Schlumberger, Siemens, SGI or Apple.

[1]  Ivan E. Sutherland,et al.  Sketchpad a Man-Machine Graphical Communication System , 1899, Outstanding Dissertations in the Computer Sciences.

[2]  Alan Borning,et al.  ThingLab: a constraint-oriented simulation laboratory , 1979 .

[3]  J. W. Humberston Classical mechanics , 1980, Nature.

[4]  Christopher J. Van Wyk,et al.  A High-Level Language for Specifying Pictures , 1982, TOGS.

[5]  Theodosios Pavlidis,et al.  An automatic beautifier for drawings and illustrations , 1985, SIGGRAPH.

[6]  Greg Nelson,et al.  Juno, a constraint-based graphics system , 1985, SIGGRAPH.

[7]  A. Borning,et al.  Defining constraints graphically , 1986, CHI '86.

[8]  Maureen C. Stone,et al.  Snap-dragging , 1986, SIGGRAPH.

[9]  Alan Borning,et al.  Constraint-Based Tools for Building User Interfaces , 1986, ACM Trans. Graph..

[10]  William Buxton,et al.  Creating highly-interactive and graphical user interfaces by demonstration , 1986, SIGGRAPH.

[11]  Bjørn N. Freeman-Benson,et al.  Constraint hierarchies , 1987, OOPSLA '87.

[12]  I. Duff,et al.  Direct Methods for Sparse Matrices , 1987 .

[13]  Eric Allan Bier,et al.  Snap-dragging: interactive geometric design in two and three dimensions , 1988 .

[14]  Andrew P. Witkin,et al.  Spacetime constraints , 1988, SIGGRAPH.

[15]  R. M. White,et al.  Applying Direct Manipulation to Geometric Construction Systems , 1988 .

[16]  T. Kunii,et al.  Drawing Input Through Geometrical Constructions: Specification and Applications , 1988 .

[17]  Colin Potts,et al.  Design of Everyday Things , 1988 .

[18]  William Leler,et al.  Constraint programming languages: their specification and generation , 1988 .

[19]  Ronen Barzel,et al.  A modeling system based on dynamic constraints , 1988, SIGGRAPH.

[20]  Peter Piela Ascend: an object-oriented computer environment for modeling and analysis , 1989 .

[21]  Ian H. Witten,et al.  Metamouse: specifying graphical procedures by example , 1989, SIGGRAPH.

[22]  David Serrano,et al.  Constraint Management in Conceptual Design , 1989 .

[23]  Eurographics Workshop on Object Oriented Graphics , 1989 .

[24]  Eric A. Bier Snap-dragging in three dimensions , 1990, I3D '90.

[25]  Michael Gleicher,et al.  Interactive dynamics , 1990, I3D '90.

[26]  Peter Schröder,et al.  The virtual erector set: dynamic simulation with linear recursive constraint propagation , 1990, I3D '90.

[27]  Andrew P. Witkin,et al.  Fast animation and control of nonrigid structures , 1990, SIGGRAPH.

[28]  John C. Platt,et al.  Constraint methods for neural networks and computer graphics , 1990 .

[29]  Mark Sapossnek Research on constraint-based design systems , 1991 .

[30]  Ralph D. Hill A 2-D Graphics System for Multi-User Interactive Graphics Based on Objects and Constraints , 1991 .