Skip to content

Latest commit

 

History

History
26 lines (18 loc) · 1.32 KB

README.md

File metadata and controls

26 lines (18 loc) · 1.32 KB

2D Geometric Constraint Solver

This project is an attempt to utilize mathematical optimization algorithms, specifically SLSQP, to deal with geometric constraint solving problem.

Currently, the project is not stable and mature enough to be considered seriously, but you can still experiment with it.

Here you can find more information on how it works: https://vmnnk.com/en/2023-10-18/2d-geometric-constraint-solver

How to run

pip install -r requirements.txt
python src/main.py

How to use

  1. Move around the canvas by holding down the mouse wheel button and dragging
  2. Use the buttons on the left to add a new segment or an arc. You can also use hotkeys ('s' for segment, 'a' for arc)
  3. Left click the point/segment/arc to select it. Click on an empty space to clear the selection
  4. The available constraints are automatically displayed for the selected items. Left click the constraint button on the right to apply the constraint
  5. To delete a segment or an arc, select it and press DELETE
  6. To remove a constraint, left click its icon and press DELETE
  7. Press 'i' to print some debug information