Skip to main content

Module sketch

Module sketch 

Source
Expand description

Sketch entities and constraints: design data, in any Scalar — the values a file holds, read as sharp scalars and written as their midpoints.

Points are the only entities with positions of their own; lines, arcs and splines reference points by PointId, so two curves that share an endpoint share the same point and stay connected by construction. Separately drawn points are joined with Constraint::Coincident, which the solver treats the same way (the two points become one set of variables), so connectivity is always structural — never inferred from two positions happening to be close.

A point or curve can be fixed: given from outside the sketch rather than solved for — the sketch’s own origin and axes, or an edge of the part projected into its plane. The solver never moves it, and every constraint on it is measured against it as it is.

Structs§

ConstraintId
Key of Sketch::constraints.
Curve
CurveId
Key of Sketch::curves.
Enclosure
A sketch’s geometry as the kernel builds on it: every point, and every arc’s sweep and circle’s radius. Solved (see Sketch::enclose), each encloses the exact solution of the sketch’s constraints; as drawn (see Enclosure::as_drawn), each is the sketch’s own value, sharp. A rigid motion of either is one too (see crate::ProfileLoop::to_nurbs).
Point
PointId
Key of Sketch::points.
Sketch
A constraint sketch.
SplineShape
The shape of a CurveKind::Spline beyond its control points, for one that is not the uniform non-rational spline a drawn one is: its degree, its clamped knot vector (control_points + degree + 1 knots) and one weight per control point.

Enums§

Constraint
The typical CAD sketch constraints. Distances and lengths are in sketch units, angles in radians.
CurveKind

Type Aliases§

Positions
Every point’s [x, y], by PointId: the sketch’s own positions, as drawn (see Sketch::positions).