Appends a Catmull-Rom spline through points to the current path as cubic
beziers: one moveTo, then a bezierCurveTo per segment that ends exactly
on the next point. The caller owns beginPath and stroke, so the same
spline can also outline a filled ribbon. Two points degrade to a straight
lineTo; fewer emit nothing.
tension scales the tangent at each point: 0.5 is the classic spline and 0
collapses every segment to a straight line. Values outside 0..1 are clamped,
since past 1 the tangents grow long enough for a segment to fold back on
itself.
Appends a Catmull-Rom spline through
pointsto the current path as cubic beziers: onemoveTo, then abezierCurveToper segment that ends exactly on the next point. The caller ownsbeginPathandstroke, so the same spline can also outline a filled ribbon. Two points degrade to a straightlineTo; fewer emit nothing.tensionscales the tangent at each point: 0.5 is the classic spline and 0 collapses every segment to a straight line. Values outside 0..1 are clamped, since past 1 the tangents grow long enough for a segment to fold back on itself.