Given n + 1 knots,
- p0, ..., pn,
to be interpolated with n cubic Hermite curve segments, for each curve we have a starting point pi and an ending point pi+1 with starting tangent di and ending tangent di+1 defined by
|t||tension||Changes the length of the tangent vector|
|b||bias||Primarily changes the direction of the tangent vector|
|c||continuity||Changes the sharpness in change between tangents|
Setting each parameter to zero would give a Catmull–Rom spline.
The source code found here of Steve Noskowicz in 1996 actually describes the impact that each of these values has on the drawn curve:
|Tension||T = +1→ Tight||T = −1→ Round|
|Bias||B = +1→ Post Shoot||B = −1→ Pre shoot|
|Continuity||C = +1→ Inverted corners||C = −1→ Box corners|
The code includes matrix summary needed to generate these splines in a BASIC dialect.
- Shane Aherne. "Kochanek and Bartels Splines". Motion Capture — exploring the past, present and future. Retrieved 2009-04-15.
- Doris H. U. Kochanek, Richard H. Bartels. "Interpolating splines with local tension, continuity, and bias control". SIGGRAPH '84 Proceedings of the 11th annual conference on Computer graphics and interactive techniques Pages 33-41. ACM. Retrieved 2014-09-23. line feed character in
|work=at position 103 (help)