docs: describe the sketch solver as it is (#475)

The README called the solver damped Gauss–Newton. It now places what the
constraints fix by construction (loci intersections and rigid-cluster
decomposition, after Owen 1991 and Fudos–Hoffmann 1997) and runs
Levenberg–Marquardt on the rest, with the rank of its Jacobian giving the
remaining degrees of freedom. The constraint list also gains the ones it was
missing (point on curve, curvature, point-to-line, arc sweep, arc length, slot
length), and live drags are described.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Irakli KourtisandClaude Opus 5.5 authored and GitHub committed 2026-10-12 21:26:54 -04:00
1 parent dd67472252
commit fc1d70cc3b
1 file changed
+9 -5
+9 -5
View File
@@ -81,11 +81,15 @@ and help is welcome: see [CONTRIBUTING.md](CONTRIBUTING.md).
the boundary and keeps existing extrusions usable. the boundary and keeps existing extrusions usable.
Curve drawing and picking adapt together to zoom and display scale, including small circles Curve drawing and picking adapt together to zoom and display scale, including small circles
at Fit and sketches in placed components. at Fit and sketches in placed components.
- **Constraints and dimensions** solved by our own solver (damped Gauss–Newton with - **Constraints and dimensions** solved by our own solver. Points the constraints fix relative
degree-of-freedom analysis): coincident, horizontal/vertical, parallel, perpendicular, tangent, to known geometry are placed exactly by construction (loci intersections and rigid-cluster
equal, concentric, collinear, midpoint, symmetry, fix; linear, aligned, horizontal, vertical, decomposition, after Owen 1991 and Fudos–Hoffmann 1997); Levenberg–Marquardt solves the rest,
radius, diameter and angle dimensions driven by parameters. Over-constraining edits are and the rank of its Jacobian gives the remaining degrees of freedom. Constraints: coincident,
rejected; fully constrained geometry turns black. point on curve, horizontal/vertical, parallel, perpendicular, tangent, curvature (G2), equal,
concentric, collinear, midpoint, symmetry, fix; linear, aligned, horizontal, vertical,
point-to-line, radius, diameter, angle, arc sweep, arc length and slot length dimensions driven
by parameters. Over-constraining edits are rejected; fully constrained geometry turns black.
Dragging solves the sketch every frame and rebuilds the model once, when the drag ends.
Select a line or its two endpoints, type its dimension and press Enter to commit one undo Select a line or its two endpoints, type its dimension and press Enter to commit one undo
step. Fit keeps sketch geometry clear of the palette and navigation controls. step. Fit keeps sketch geometry clear of the palette and navigation controls.
- **Profiles** found automatically, including regions split by lines and holes inside outlines. - **Profiles** found automatically, including regions split by lines and holes inside outlines.