A Differential Approach to Graphical Manipulation
PhD thesis from Carnegie Mellon University — 1994
Direct manipulation has become the preferred interface for controlling graphical objects.
Despite its success, the ad hoc manner with which such interfaces have been
designed and implemented restricts the types of interactive controls. This dissertation
presents a new approach that provides a systematic method for implementing flexible,
combinable interactive controls. This differential approach to graphical interaction
uses constrained optimization to couple user controls to graphical objects in a manner
that permits a variety of controls to be freely combined. The differential approach provides
a new set of abstractions that enable new types of interaction techniques and new
ways of modularizing applications.
The differential approach views graphical object manipulation as an equation solving
problem: Given the desired values for the user specified controls, find a configuration
of the graphical objects that meet these constraints. To solve these equations in a
sufficiently general manner, the differential approach controls the motion of the objects
over time. At any instant in time, controls specify desired rates of change that form linear
constraints on the time derivatives of the parameters. An optimization objective
selects a particular value when these constraints do not determine a unique solution.
The differential approach solves these constrained optimization problems to compute
the derivatives of the parameters. An ordinary differential equation solver uses these
rates to compute object motions.
This thesis addresses the issues in using numerical techniques to provide interactive
control of graphical objects. Techniques are presented to solve the constrained
optimization problems efficiently and to dynamically define equations in response to
system events. The thesis introduces an architecture, called Snap-Together Mathematics,
that encapsulates these numerical needs. A graphics toolkit, constructed with Snap-
Together Mathematics, provides the features of the differential approach yet hides the
underlying machinery from the applications programmer.
The thesis demonstrates the differential approach by applying it to a variety of interaction
problems, including manipulation of 2D and 3D objects, lighting, and camera
control. Demonstrated interaction techniques include novel methods for some specific
interaction tasks. A number of prototype applications, including 3Dobject construction
and mechanisms sketching, demonstrate the tools and the approach.
Images and movies
BibTex references
@PhdThesis{Gle94a, author = "Gleicher, Michael", title = "A Differential Approach to Graphical Manipulation", school = "Carnegie Mellon University", year = "1994", address = "Pittsburgh, PA", projecturl = "http://www.cs.wisc.edu/graphics/Papers/Gleicher/Thesis/index.html", url = "http://graphics.cs.wisc.edu/Papers/1994/Gle94a" }