Skip to main content

Solving Disjunctive Constraints for Interactive Graphical Applications

  • Conference paper
  • First Online:
Principles and Practice of Constraint Programming — CP 2001 (CP 2001)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2239))

Abstract

In interactive graphical applications we often require that objects do not overlap. Such non-overlap constraints can be modelled as disjunctions of arithmetic inequalities. Unfortunately, disjunctions are typically not handled by constraint solvers that support direct manipulation, in part because solving such problems is NP-hard. We showhere that is in fact possible to (re-)solve systems of disjunctive constraints representing non-overlap constraints suficiently fast to support direct manipulation in interactive graphical applications. The key insight behind our algorithms is that the disjuncts in a non-overlap constraint are not disjoint: during direct manipulation we need only move between disjuncts that are adjacent in the sense that they share the current solution. We give both a generic algorithm, and a version specialised for linear arithmetic constraints that makes use of the Cassowary constraint solving algorithm.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. David Baraff. Fast contact force computation for nonpenetrating rigid bodies. In SIGGRAPH’ 94 Conference Proceedings, pages 23–32. ACM, 1994.

    Google Scholar 

  2. Alan Borning, Bjorn Freeman-Benson, and Molly Wilson. Constraint hierarchies. Lisp and Symbolic Computation, 5(3):223–270, September 1992.

    Article  Google Scholar 

  3. Alan Borning, Kim Marriott, Peter Stuckey, and Yi Xiao. Solving linear arithmetic constraints for user interface applications. In Proceedings of the 1997 ACM Symposium on User Interface Software and Technology, October 1997.

    Google Scholar 

  4. Ioannis Fudos. Geometric Constraint Solving. PhD thesis, Purdue University, Department of Computer Sciences, 1995.

    Google Scholar 

  5. Michael Gleicher. A Differential Approach to Constraint Satisfaction. PhD thesis, School of Computer Science, Carnegie-Mellon University, 1994.

    Google Scholar 

  6. Mikako Harada, Andrew Witkin, and David Baraff. Interactive physically-based manipulation of discrete/continuous models. In SIGGRAPH’ 95 Conference Proceedings, pages 199–208, Los Angeles, August 1995. ACM.

    Google Scholar 

  7. David Harel. Statecharts: A visual formalism for complex systems. Science of Computer Programming, 8:231–274, 1987.

    Article  MathSciNet  Google Scholar 

  8. Glenn Kramer. A geometric constraint engine. Artificial Intelligence, 58(1–3):327–360, December 1992.

    Article  MathSciNet  Google Scholar 

  9. K. Marriott, S.S. Chok, and A. Finlay. A tableau based constraint solving toolkit for interactive graphical applications. In International Conference on Principles and Practice of Constraint Programming (CP98), pages 340–354, 1998.

    Google Scholar 

  10. Kim Marriott and Peter Stuckey. Programming with Constraints: An Introduction. MIT Press, 1998.

    Google Scholar 

  11. George L. Nemhauser and Laurence A. Wolsey. Integer and Combinatorial Optimization. Wiley, NewYork, 1988.

    Book  Google Scholar 

  12. James Rumbaugh, Ivar Jacobson, and Grady Booch. The Unified Modeling Language Reference Manual. Addison-Wesley, 1998.

    Google Scholar 

  13. Michael Sannella, John Maloney, Bjorn Freeman-Benson, and Alan Borning. Multiway versus one-way constraints in user interfaces: Experience with the DeltaBlue algorithm. Software-Practice and Experience, 23(5):529–566, May 1993.

    Article  Google Scholar 

  14. Ivan Sutherland. Sketchpad: A Man-Machine Graphical Communication System. PhD thesis, Department of Electrical Engineering, MIT, January 1963.

    Google Scholar 

  15. Brad Vander Zanden. An incremental algorithm for satisfying hierarchies of multiway dataflow constraints. ACM Transactions on Programming Languages and Systems, 18(1):30–72, January 1996.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2001 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Marriott, K., Moulder, P., Stuckey, P.J., Borning, A. (2001). Solving Disjunctive Constraints for Interactive Graphical Applications. In: Walsh, T. (eds) Principles and Practice of Constraint Programming — CP 2001. CP 2001. Lecture Notes in Computer Science, vol 2239. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45578-7_25

Download citation

  • DOI: https://doi.org/10.1007/3-540-45578-7_25

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-42863-3

  • Online ISBN: 978-3-540-45578-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics