This project provdes a geometric constraint solver as a set of reusable C# components.
- .NET 7
$ git clone https://github.com/TrevorDArcyEvans/NeoGeoSolver.NET.git
$ cd NeoGeoSolver.NET
$ dotnet restore
$ dotnet build
$ dotnet test
- arc circ concentric
- arcs concentric
- points coincident
- points distance
- points horizontal
- points vertical
- point on circle
- point to line distance
- circle diameter
- circles equal diameter
- line length
- lines equal length
- line tangent to circle
- angle (between two lines)
- line horizontal
- line vertical
- lines parallel
- lines perpendicular
- arc circ equal radius
collinear lines- point on arc
- arc radius
- arcs equal radius
- point to point vertical distance
- point to point horizontal distance
- point to line vertical distance
- point to line horizontal distance
concentric arcsuse points coincident
concentric circlesuse points coincident
concentric circ arcuse points coincident
- change arc definition to centre-radius-start_angle-end_angle
- implement unsupported constraints
- remove unused constraints
- tangent (use line-entity distance with zero distance)
- point on (use point-entity distance with zero distance)
- equal value (might be useful?)
- points angle
- remove unused entities
- function (no docs + not normally used in CAD)
- spline (no docs + not normally used in CAD)
- ellipse + ellipsearc (not normally used in CAD)
more unit tests for solvermultiple constraints
- portable UI aka test harness
- Geometric constraint solving - Wikipedia
- Sketchpad
- A Geometric Constraint Solver
- Modelling of Geometric Constraints in CAD-Applications
- Interactive 2D Constraint-Based Geometric Construction System
- Geometric Sketch Constraint Solving with User Feedback
- OpenCSM: An Open-Source Constructive Solid Modeler for MDAO
- SolveSpace - parametric 3d CAD
- Geometric Constraint Solving
- imuli/geosolver-python
- SketchSolve.NET
This repository was forked from BimCAD which in turn was forked from NoteCAD.