In mathematics, a Kochanek–Bartels spline or Kochanek–Bartels curve is a cubic Hermite spline with tension, bias, and continuity parameters defined to change the behavior of the tangents.
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
di=
(1-t)(1+b)(1+c) | |
2 |
(pi-pi-1)+
(1-t)(1-b)(1-c) | |
2 |
(pi+1-pi)
di+1=
(1-t)(1+b)(1-c) | |
2 |
(pi+1-pi)+
(1-t)(1-b)(1+c) | |
2 |
(pi+2-pi+1)
where...
tension | Changes the length of the tangent vector | ||
bias | Primarily changes the direction of the tangent vector | ||
continuity | Changes the sharpness in change between tangents |
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 |