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 3D object construction and mechanisms sketching, demonstrate the tools and the approach.
Cited By
- Bodden C, Rakita D, Mutlu B and Gleicher M (2018). A flexible optimization-based method for synthesizing intent-expressive robot arm motion, International Journal of Robotics Research, 37:11, (1376-1394), Online publication date: 1-Sep-2018.
- Bernstein G and Li W (2015). Lillicon, ACM Transactions on Graphics, 34:4, (1-11), Online publication date: 27-Jul-2015.
- García M, Robles O, Pastor L and Rodríguez A (2008). Technical Section, Computers and Graphics, 32:3, (293-306), Online publication date: 1-Jun-2008.
- Erleben K (2007). Velocity-based shock propagation for multibody dynamics animation, ACM Transactions on Graphics, 26:2, (12-es), Online publication date: 1-Jun-2007.
- Grinspun E A discrete model of thin shells ACM SIGGRAPH 2005 Courses, (4-es)
- Reuter P, Tobor I, Schlick C and Dedieu S Point-based modelling and rendering using radial basis functions Proceedings of the 1st international conference on Computer graphics and interactive techniques in Australasia and South East Asia, (111-118)
- Grinspun E, Hirani A, Desbrun M and Schröder P Discrete shells Proceedings of the 2003 ACM SIGGRAPH/Eurographics symposium on Computer animation, (62-67)
- Hosobe H A geometric constraint library for 3D graphical applications Proceedings of the 2nd international symposium on Smart graphics, (94-101)
- Zhou M, Chen M and Feng Y Building a Visual Database for Example-based Graphics Generation Proceedings of the IEEE Symposium on Information Visualization (InfoVis'02)
- Nelson D and Cohen E Optimization-Based Virtual Surface Contact Manipulation at Force Control Rates Proceedings of the IEEE Virtual Reality 2000 Conference
- Zhou M Visual planning Proceedings of the 16th international joint conference on Artifical intelligence - Volume 1, (634-641)
- Faure F (1999). Fast Iterative Refinement of Articulated Solid Dynamics, IEEE Transactions on Visualization and Computer Graphics, 5:3, (268-276), Online publication date: 1-Jul-1999.
- Zhou M and Feiner S (1998). Automated Visual Presentation, Journal of Intelligent Information Systems, 11:3, (205-234), Online publication date: 1-Nov-1998.
- Reekie H and Lee E The Tycho slate Proceedings of the 6th conference on Annual Tcl/Tk Workshop, 1998 - Volume 6, (5-5)
- Gleicher M Motion editing with spacetime constraints Proceedings of the 1997 symposium on Interactive 3D graphics, (139-ff.)
- Baraff D Linear-time dynamics using Lagrange multipliers Proceedings of the 23rd annual conference on Computer graphics and interactive techniques, (137-146)
- Gleicher M Image snapping Proceedings of the 22nd annual conference on Computer graphics and interactive techniques, (183-190)
Recommendations
Numerical approach for solving fractional Fredholm integro-differential equation
In this article, we present a new method which is based on the Taylor Matrix Method to give approximate solution of the linear fractional Fredholm integro-differential equations. This method is based on first taking the truncated Taylor expansions of ...
Numerical approach to differential equations of fractional order
In this paper, the variational iteration method and the Adomian decomposition method are implemented to give approximate solutions for linear and nonlinear systems of differential equations of fractional order. The two methods in applied mathematics can ...
Two-dimensional differential transform for partial differential equations
The differential transform is a numerical method for solving differential equations. In this paper, we present the definition and operation of the two-dimensional differential transform. A distinctive feature of the differential transform is its ability ...