Abstract
Direct-manipulation graphics editors are useful tools for a wide variety of domains such as technical drawing, computer-aided design, application building, and music composition. Constraints can be a powerful mechanism for specifying complex semantics declaratively in these domains. To date, few domain-specific graphics editors have provided constraint-based specification and manipulation facilities. Part of the reason is that graphical editors are hard enough to develop without implementing a constraint system as well. Even though graphical editing frameworks can reduce the difficulty of constructing domain specific graphical editors, a fundamental problem remains: there do not exist general constraint solving architectures that are efficient enough to support highly interactive editing, yet suitably flexible and extensible to adapt to different editing domains.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Bier, E. and Stone, M. (1986). Snap-dragging. In ACM SIGGRAPH’ 86 Conference Proceedings, pages 233-240, Dallas, TX.
Borning, A. (1981). The programming language aspects of ThingLab — a constraint-oriented simulation laboratory. ACM Transactions on Programming Languages and Systems, 3(4):343–387.
Borning, A. and Duisberg, R. (1986). Constraint based tools for building user interfaces. ACM Transactions on Graphics, 4(4).
Borning, A., Maher, M., Martindale, A., and Wilson, M. (1989). Constraint hierarchies and logic programming. In International Conference on Logic Programming. MIT Press.
Epstein, D. and Lalonde, W. (1988). A Smalltalk window system based on constraints. In Object-Oriented Programming Systems, Languages and Applications Conference, pages 83-94. ACM Press.
Freeman-Benson, B.N. (1990). Kaleidoscope: Mixing objects, constraints, and imperative programming. In Object-Oriented Programming Systems, Languages and Applications Conference, pages 77-88.
Freeman-Benson, B.N. and Borning, A. (1992). Integrating constraints with an object-oriented language. In European Conference on Object-Oriented Programming, pages 268-286.
(1990). GECK User’s Guide. V.I. Corporation.
Gleeson, J. and Ryan, J. (1990). Identifying minimally infeasible subsystems of inequalities. ORSA Journal on Computing, 2(1):61–63.
Helm, R., Huynh, T., Lassez, C., and Marriott, K. (1992a). A linear constraint technology for user interfaces. In Graphics Interface, pages 301-309, Vancouver, Canada.
Helm, R., Huynh, T., Marriott, K., and Vlissides, J. (1992b). QOCA: An extensible object-oriented constraint solving toolkit. Technical Report In Preparation, IBM T.J. Watson Research Center.
Helm, R., Marriott, K., and Odersky, M. (1991). Building visual language parsers. In Computer Human Interaction (CHI), pages 105-112. ACM Press.
Hudson, S.E. (1990). Adaptive semantic snapping—a technique for semantic feedback at the lexical level. In ACM CHI’ 90 Conference Proceedings, pages 65-70.
Olson, D.R., and Allan, K. (1990). Creating interactive techniques by symbolically solving geometric constraints. In ACM User Interface Software Technologies Conference, pages 102-107, Snowbird, Utah.
Lassez, C. and Lassez, J.-L. (To Appear). Quantifier elimination for conjunctins of linear constraints via a convex hull algorithm. In Kahn, G., MacQueen, D., and Plotkin, G., editors, Symbolic and Numerical Computation-Towards Integration. Springer-Verlag.
Linton, M.A., Vlissides, J.M., and Calder, P.R. (1989). Composing user interfaces with Interviews. Computer, 22(2):8–22.
Maloney, J., Borning, A., and Freeman-Benson, B. (1990). An incremental constraint solver. Communications of the ACM, 33(1):55–63.
Maloney, J.H., Borning, A.H., and Freeman-Benson, B.N. (1989). Constraint technology for user interface construction in ThingLab II. In ACM OOPSLA’ 89 Conference Proceedings, pages 381-388, New Orleans, LA.
Murty, K.G. (1988). Linear Complementarity, Linear and Nonlinear Programming. Heldermann Verlag, Berlin.
Myers, B.A., Guise, D.A., Dannenberg, R.B., Zanden, B.V., Kosbie, D.S., Pervin, E., Mickish, A., and Marchel, P. (1990). Comprehensive support for graphical, highly interactive user interfaces: The Garnet system. IEEE Computer Magazine, 23(11):71–85.
Nelson, G. (1985). Juno, a constraint-based graphics system. In ACM SIGGRAPH’ 85 Conference Proceedings, pages 235-243, San Fransisco, CA.
Sutherland, I. (1963). Sketchpad: A man-machine graphical communication system. In Spring Joint Computer Conference, pages 329-345.
Szekely, P. and Myers, B. (1988). A user interface toolkit based on graphical objects and constraints. In Object-Oriented Programming Systems, Languages and Applications Conference, pages 36-45.
Tarumi, H., Rekimoto, J., Sugai, M., Yamazake, G., Sugiyama, T., and Akiguchi, C. (1990). Canae—a user interface construction environment with editors as software parts. NEC Research and Development, 98:89–98.
Vlissides, J.M. (1990). Generalized Graphical Object Editing. PhD thesis, Stanford University.
Vlissides, J.M. and Linton, M.A. (1988). Applying object-oriented design to structured graphics. In Proceedings of the 1988 USENIX C++ Conference, pages 81-94, Denver, CO.
Vlissides, J.M. and Linton, M.A. (1990). Unidraw: A framework for building domain-specific graphical editors. ACM Transactions on Information Systems, 8(3):237–268.
Witkin, A., Gleicher, M., and Welch, W. (1990). Interactive dynamics. In ACM/SIGRAPH Conference.
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1995 EUROGRAPHICS The European Association for Computer Graphics
About this chapter
Cite this chapter
Helm, R., Huynh, T., Marriott, K., Vlissides, J. (1995). An Object-Oriented Architecture for Constraint-Based Graphical Editing. In: Laffra, C., Blake, E.H., de Mey, V., Pintado, X. (eds) Object-Oriented Programming for Graphics. Focus on Computer Graphics. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-79192-5_16
Download citation
DOI: https://doi.org/10.1007/978-3-642-79192-5_16
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-79194-9
Online ISBN: 978-3-642-79192-5
eBook Packages: Springer Book Archive