Advertisement

Smooth Linear Approximation of Non-overlap Constraints

  • Graeme Gange
  • Kim Marriott
  • Peter J. Stuckey
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5223)

Abstract

Constraint-based placement tools and their use in diagramming tools has been investigated for decades. One of the most important and natural placement constraints in diagrams is that their graphic elements do not overlap. However, non-overlap of objects, especially non-convex objects, is difficult to solve and, in particular, to solve sufficiently rapidly for direct manipulation. Here we present the first practical approach for solving non-overlap of possibly non-convex objects in conjunction with other placement constraints such as alignment and distribution. Our methods are based on approximating the non-overlap constraint by a smoothly changing linear approximation. We have found that this in combination with techniques for lazy addition of constraints, is rapid enough to support direct manipulation in reasonably sized diagrams.

Keywords

Linear Constraint Geometric Constraint Convex Polygon Query Point Simple Polygon 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Badros, G.J., Borning, A., Stuckey, P.J.: The Cassowary linear arithmetic constraint solving algorithm. ACM Trans. CHI. 8(4), 267–306 (2001)Google Scholar
  2. 2.
    Baraff, D.: Fast contact force computation for nonpenetrating rigid bodies. In: Proceedings of the 21st Annual Conference on Computer Graphics and Interactive Techniques, pp. 23–34 (1994)Google Scholar
  3. 3.
    Borning, A., Marriott, K., Stuckey, P., Xiao, Y.: Solving linear arithmetic constraints for user interface applications. In: Proceedings of the 10th Annual ACM Symposium on User Interface Software and Technology, pp. 87–96. ACM Press, New York (1997)CrossRefGoogle Scholar
  4. 4.
    Chazelle, B.: Triangulating a simple polygon in linear time. Discrete and Computational Geometry 6(1), 485–524 (1991)zbMATHCrossRefMathSciNetGoogle Scholar
  5. 5.
    Chiang, Y., Tamassia, R.: Dynamic algorithms in computational geometry. Proceedings of the IEEE 80(9), 1412–1434 (1992)CrossRefGoogle Scholar
  6. 6.
    Flato, E.: Robust and efficient construction of planar Minkowski sums. Master’s thesis, School of Computer Science, Tel-Aviv University (2000)Google Scholar
  7. 7.
    Fletcher, R.: Practical methods of optimization. Wiley-Interscience, New York (1987)zbMATHGoogle Scholar
  8. 8.
    Ghosh, P.K.: A solution of polygon containment, spatial planning, and other related problems using minkowski operations. Comput. Vision Graph. Image Process. 49(1), 1–35 (1990)CrossRefGoogle Scholar
  9. 9.
    Greene, D.H.: The decomposition of polygons into convex parts. In: Computational Geometry, pp. 235–259 (1983)Google Scholar
  10. 10.
    Harada, M., Witkin, A., Baraff, D.: Interactive physically-based manipulation of discrete/continuous models. In: Proceedings of the 22nd Annual Conference on Computer Graphics and Interactive Techniques, pp. 199–208 (1995)Google Scholar
  11. 11.
    Hosobe, H.: A modular geometric constraint solver for user interface applications. In: Proceedings of the 14th annual ACM symposium on User Interface Software and Technology, pp. 91–100 (2001)Google Scholar
  12. 12.
    Hurst, N., Marriott, K., Moulder, P.: Dynamic approximation of complex graphical constraints by linear constraints. In: Proceedings of the 15th annual ACM symposium on User Interface Software and Technology, pp. 27–30 (2002)Google Scholar
  13. 13.
    Kramer, G.A.: A geometric constraint engine. Artificial Intelligence 58(1-3), 327–360 (1992)CrossRefMathSciNetGoogle Scholar
  14. 14.
    Lin, M., Manocha, D., Cohen, J.: Collision detection: Algorithms and applications (1996)Google Scholar
  15. 15.
    Marriott, K., Chok, S.C., Finlay, A.: A tableau based constraint solving toolkit for interactive graphical applications. In: Proceedings of the 4th International Conference on Principles and Practice of Constraint Programming, London, UK, pp. 340–354. Springer, London (1998)Google Scholar
  16. 16.
    Marriott, K., Moulder, P., Stuckey, P.J., Borning, A.: Solving disjunctive constraints for interactive graphical applications. In: Proceedings of the 7th International Conference on Principles and Practice of Constraint Programming, London, UK, pp. 361–376. Springer, Heidelberg (2001)Google Scholar
  17. 17.
    Nelson, G.: Juno, a constraint-based graphics system. In: Proceedings of the 12th annual conference on Computer Graphics and Interactive Techniques, pp. 235–243. ACM Press, New York (1985)CrossRefGoogle Scholar
  18. 18.
    O’Rourke, J.: Computational Geometry in C, 2nd edn. (1998)Google Scholar
  19. 19.
    Ramkumar, G.D.: An algorithm to compute the Minkowski sum outer-face of two simple polygons. In: Proceedings of the Twelfth Annual Symposium on Computational geometry, pp. 234–241 (1996)Google Scholar
  20. 20.
    Samet, H.: The Design and Analysis of Spatial Data Structures (1990)Google Scholar
  21. 21.
    Seidel, R.: A simple and fast incremental randomized algorithm for computing trapezoidal decompositions and for triangulating polygons. Comput. Geom. Theory Appl. 1(1), 51–64 (1991)zbMATHMathSciNetGoogle Scholar
  22. 22.
    Sutherland, I.E.: Sketch pad a man-machine graphical communication system. In: DAC 1964: Proceedings of the SHARE design automation workshop, pp. 6.329–6.346. ACM Press, New York (1964)Google Scholar
  23. 23.
    Vander Zanden, B.: An incremental algorithm for satisfying hierarchies of multiway dataflow constraints. ACM Transactions on Programming Languages and Systems (TOPLAS) 18(1), 30–72 (1996)CrossRefGoogle Scholar
  24. 24.
    Wein, R.: Exact and efficient construction of planar Minkowski sums using the convolution method. In: Proceedings of the 14th Annual European Symposium on Algorithms, September 2006, pp. 829–840 (2006)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Graeme Gange
    • 1
  • Kim Marriott
    • 2
  • Peter J. Stuckey
    • 1
    • 3
  1. 1.Department of Comp Sci and Soft EngUniversity of MelbourneAustralia
  2. 2.Clayton School of IT Monash UniversityAustralia
  3. 3.National ICT Australia, Victoria Laboratory 

Personalised recommendations