Merge remote-tracking branch 'origin/main' into feat/sketch-tools-return-ids
# Conflicts: # crates/engine/src/cmd/mod.rs # crates/engine/src/cmd/sketch.rs # crates/engine/src/cmd/sketch_create.rs # crates/engine/src/cmd/sketch_modify.rs # crates/engine/src/lib.rs # docs/book/src/guide/sketching.md
This commit is contained in:
commit
b93d4905ac
181 files changed
+29350
-1572
No files matched your search
@@ -20,6 +20,43 @@ ids of what it added (`created: {points, curves, constraints, dimensions}`). Ids
|
||||
never reused within a sketch, even after a delete, so a script can dimension or constrain the new
|
||||
geometry right away.
|
||||
|
||||
Extend finds intersections with exact ellipses, rational conics and spline spans. It keeps the
|
||||
original line or circular support and extends only beyond the selected endpoint; conflicting
|
||||
constraints or an ambiguous overlap leave the sketch unchanged.
|
||||
|
||||
Offsets of smooth ellipses, conics and splines follow their source after dimension changes,
|
||||
dragging and reopening a design. Their stored cubic spline has a whole-span normal-distance
|
||||
error bound of 0.002 mm. Singular tangents, curvature cusps, possible self-intersections and
|
||||
excessive subdivisions are refused. Offset these curves individually: mixed chain junctions
|
||||
currently require separate geometry. `sketch.offset.break` releases an offset for independent
|
||||
editing, and undo restores its association. Older independently sampled offsets remain independent.
|
||||
Smooth open and newly created smooth closed offsets can be offset again, including bounded
|
||||
refinement after a source edit. New closed outputs use a periodic cubic fit with continuous
|
||||
tangent and curvature at the seam. Break Offset Association preserves that interpolation,
|
||||
and its closing point remains joined when dragged. Deleting an output also removes its
|
||||
unused private fit points; deleting a source with a retained dependent is refused.
|
||||
|
||||
For explicit closed fit splines, `sketch.spline.fit_point` accepts `periodic: true` and at
|
||||
least three distinct cyclic samples. It closes the loop automatically. Existing calls and
|
||||
older saved closed splines retain natural interpolation; older associative closed offsets
|
||||
also retain their saved natural fit. A legacy seam without a unique normal still refuses
|
||||
another offset. Periodic intent is stored on each curve and survives save, reopen and Break.
|
||||
While drawing a fit spline, click its starting point after three distinct samples to close
|
||||
it smoothly. Right-click finishes an ordinary natural fit. Offset accepts both ellipse
|
||||
handles and dense fitted curves; the second click sets the side and distance from the curve.
|
||||
|
||||
Enable **3D Sketch** in the Sketch Palette to draw lines, fit splines and points off the plane.
|
||||
New 3D geometry follows its sketch's component placement, including the selected occurrence
|
||||
and pending position changes. Click a drawn fit point to show its move triad; its arrows move
|
||||
along world X, Y and Z. Scripts also supply world coordinates to `sketch.line3d`,
|
||||
`sketch.spline3d`, `sketch.point3d` and `sketch.move3d`. Activate the desired occurrence before
|
||||
editing an explicit sketch belonging to a component with multiple placements.
|
||||
|
||||
Older drawn or detached 3D wires keep their saved world positions. Included and surface-linked
|
||||
wires with an explicit component marker keep that meaning after the link is broken. Old files
|
||||
whose links became lost after an incorrectly scoped cross-component refresh may require a
|
||||
fresh link once the source is available; their stored point values are preserved on opening.
|
||||
|
||||
## Constraints and dimensions
|
||||
|
||||
The solver is SolveCraft's own (damped Gauss–Newton with degree-of-freedom analysis). Constraints:
|
||||
|
||||
Reference in new issue
Block a user