1D curves
Curve primitives. They compose into CustomOpenShape (sweep paths,
profiles) or CustomClosedShape (extrudable boundaries):
Polyline(points) # N-1 lines through N points
FilletPolyline(points, radius) # Polyline with rounded corners
ThreePointArc(p1, p2, p3) # 3-point arc
RadiusArc(p1, p3, radius) # 2-point arc + signed radius
CenterArc(center, radius, start_deg, end_deg) # arc by center & angles
SagittaArc(p1, p3, sagitta) # 2-point arc + sagitta
TangentArc(p1, p3, tangent) # arc tangent to a direction at p1
JernArc(start, tangent, radius, arc_size_deg) # tangent + radius + sweep
EllipticalCenterArc(center, x_r, y_r, s_deg, e_deg)
Helix2D(center, pitch, radius_outer, n_turns) # 2D helix unrolled to a spline
Bezier([start, ctrl1, ..., end]) # degree-N Bezier
BSpline(points, degree=3) # uniform B-spline
Spline(points, start_tangent=None, end_tangent=None)TangentArc and JernArc are the build123d-style constructors — useful when
you have one anchor and a direction rather than two anchor points. Both
expand into a 3-point Arc so they can be used wherever an Arc is
accepted.