Yes, there's a lot of interesting prior art about graphical constraints, and Ivan Sutherland's Sketchpad inspired so much work on so many different levels. Thanks for all those references, I'll check them out.
Ivan Sutherland was on the thesis committee of James Gosling, who wrote his doctorate thesis at CMU entitled "The Algebraic Manipulation of Constraints" [1]:
Abstract:
Constraints are a way of expressing relationships among
objects; satisfying a set of constraints involves finding an
assignment of values to variables that is consistent with the
constraints. In its full generality, constructing a constraint
satisfaction algorithm is a hopeless task. This dissertation
focuses on the problem of performing constraint
satisfaction in an interactive graphical layout system. It
takes a pragmatic approach and restricts itself to a narrow
but very useful ___domain. The algorithms used by
MAGRITTE, an editor for simple line drawings, are
presented. A major portion of the work concerns the algebraic
transformation of sets of constraints. It describes
algorithms for identifying difficult subregions of a constraint
graph and replacing them with a transformed and
simplified new constraint.
Ivan Sutherland was on the thesis committee of James Gosling, who wrote his doctorate thesis at CMU entitled "The Algebraic Manipulation of Constraints" [1]:
Abstract: Constraints are a way of expressing relationships among objects; satisfying a set of constraints involves finding an assignment of values to variables that is consistent with the constraints. In its full generality, constructing a constraint satisfaction algorithm is a hopeless task. This dissertation focuses on the problem of performing constraint satisfaction in an interactive graphical layout system. It takes a pragmatic approach and restricts itself to a narrow but very useful ___domain. The algorithms used by MAGRITTE, an editor for simple line drawings, are presented. A major portion of the work concerns the algebraic transformation of sets of constraints. It describes algorithms for identifying difficult subregions of a constraint graph and replacing them with a transformed and simplified new constraint.
[1] http://reports-archive.adm.cs.cmu.edu/anon/scan/CMU-CS-83-13...