HiRiseDemo: A Demo Application for the HiRise Constraint Solver
NOTE: This applet requires JDK 1.1.
How to use the "Tree" demo
- To create a tree, press the "New" button after specifying its
height, the maximun number of children of internal nodes, and the
`seed' of random numbers to generate the tree.
- To operate the tree, drag a node or use the popup menu that will
appear by clicking a node with the right mouse button (if your mouse
has only one button, press it toghether with the meta key).
How to use the "ConstraintSet" demo
- Press the "New" button to start. It will create four nodes, three
of which will be constrained to be on straight lines.
- Drag nodes after selecting a method of the mouse binding.
Intuitively, each method works as follows:
- The "Normal" method tries to associate the coordinates of the
mouse cursor with those of the node to be dragged. If it cannot
equate each of the coordinates, it will always pick them up in a
certain order (in this implementation, x-coordinate first). It
follows that some nodes are difficult to drag (in this case, you will
find that the node constrained on the almost vertical line is
troublesome).
- The "Optimizing" method attempts to bind the coordinates of the
cursor with those of the node by selecting coordinates in the optimal
order. Therefore, any nodes are easy to drag with this method unlike
the "Normal" one.
- The "Conjunctive" method does not associate them if it cannot
equate both of the coordinates.