2026-07-20 –, Room 2.41 (First Floor, Turing)
The 2D constrained drawing workbench "Sketcher" forms the backbone of more complex models created in FreeCAD, an open source 3D parametric modeling software. The "planegcs" solver used in Sketcher can handle a large number of constraints (like dimensions, angles, equality, coincidence, etc.), but it is practically impossible to have all that one might need (e.g. making one line segment 2.5 times the length of another). While it is possible to employ the Spreadsheet workbench for a larger set of options, it can get fairly clunky quickly. Here, I propose and discuss the progress in another approach: creating custom constraints directly in Sketcher that can directly be used by the solver, as well as its scriptablility with Python.
The 2D constrained drawing workbench "Sketcher" forms the backbone of more complex models created in FreeCAD, an open source 3D parametric modeling software. The "planegcs" solver used in Sketcher can handle a large number of constraints (like dimensions, angles, equality, coincidence, etc.), but it is practically impossible to have all that one might need (e.g. making one line segment 2.5 times the length of another). While it is possible to employ the Spreadsheet workbench for a larger set of options, it can get fairly clunky quickly. Here, I propose and discuss the progress in another approach: creating custom constraints directly in Sketcher that can directly be used by the solver, as well as its scriptablility with Python.
A mechanical engineer by training, I am now a software developer based in India, working as a project staff at IIT Bombay, Mumbai.
I have been a contributor to FreeCAD since 2016, where my focus has been mostly in the 2D constrained drawing workbench “Sketcher”, as well as the underlying solver “planegcs”. In further detail, my interest has been in adding support for general curved geometry.