Unit interval [0, 1] On the unit interval [0,1], given a starting point \boldsymbol{p}_0 at t = 0 and an ending point \boldsymbol{p}_1 at t = 1 with starting tangent \boldsymbol{m}_0 at t = 0 and ending tangent \boldsymbol{m}_1 at t = 1, the polynomial can be defined by \boldsymbol{p}(t) = \left(2t^3 - 3t^2 + 1\right) \boldsymbol{p}_0 + \left(t^3 - 2t^2 + t\right) \boldsymbol{m}_0 + \left(-2t^3 + 3t^2\right) \boldsymbol{p}_1 + \left(t^3 - t^2\right) \boldsymbol{m}_1, where
t ∈ [0, 1].
Interpolation on an arbitrary interval Interpolating x in an arbitrary interval (x_k, x_{k+1}) is done by mapping the latter to [0, 1] through an
affine (degree-1) change of variable. The formula is \boldsymbol{p}(x) = h_{00}(t) \boldsymbol{p}_k + h_{10}(t) (x_{k+1} - x_k)\boldsymbol{m}_k + h_{01}(t) \boldsymbol{p}_{k+1} + h_{11}(t)(x_{k+1} - x_k)\boldsymbol{m}_{k+1}, where t = (x - x_k)/(x_{k+1} - x_k), and h refers to the basis functions, defined
below. Note that the tangent values have been scaled by x_{k+1} - x_k compared to the equation on the
unit interval.
Uniqueness The formula specified above provides the unique third-degree polynomial path between the two points with the given tangents.
Proof. Let P, Q be two third-degree polynomials satisfying the given boundary conditions. Define R = Q - P, then: : R(0) = Q(0)-P(0) = 0, : R(1) = Q(1) - P(1) = 0. Since both Q and P are third-degree polynomials, R is at most a third-degree polynomial. So R must be of the form R(x) = ax(x - 1)(x - r). Calculating the derivative gives R'(x) = ax(x - 1) + ax(x - r) + a(x - 1)(x - r). We know furthermore that : R'(0) = Q'(0) - P'(0) = 0, : R'(1) = Q'(1) - P'(1) = 0, Putting () and () together, we deduce that a = 0, and therefore R = 0, thus P = Q.
Representations We can write the interpolation polynomial on the unit interval (for an arbitrary interval see the rescaled version
above) as \boldsymbol{p}(t) = h_{00}(t)\boldsymbol{p}_0 + h_{10}(t)\boldsymbol{m}_0 + h_{01}(t)\boldsymbol{p}_1 + h_{11}(t)\boldsymbol{m}_1 where h_{00}, h_{10}, h_{01}, h_{11} are Hermite basis functions. These can be written in different ways, each way revealing different properties: The "expanded" column shows the representation used in the definition above. The "factorized" column shows immediately that h_{10} and h_{11} are zero at the boundaries. You can further conclude that h_{01} and h_{11} have a
zero of multiplicity 2 at 0, and h_{00} and h_{10} have such a zero at 1, thus they have slope 0 at those boundaries. The "Bernstein" column shows the decomposition of the Hermite basis functions into
Bernstein polynomials of order 3: B_k(t) = \binom{3}{k} \cdot t^k \cdot (1 - t)^{3-k}. Using this connection you can express cubic Hermite interpolation in terms of cubic
Bézier curves with respect to the four values \boldsymbol{p}_0, \boldsymbol{p}_0 + \frac{1}{3} \boldsymbol{m}_0, \boldsymbol{p}_1 - \frac{1}{3} \boldsymbol{m}_1, \boldsymbol{p}_1 and do Hermite interpolation using the
de Casteljau algorithm. It shows that in a cubic Bézier patch the two control points in the middle determine the tangents of the interpolation curve at the respective outer points. We can also write the polynomial in standard form as \boldsymbol{p}(t) = \left(2\boldsymbol{p}_0 + \boldsymbol{m}_0 - 2\boldsymbol{p}_1 + \boldsymbol{m}_1\right) t^3 + \left(-3\boldsymbol{p}_0 + 3\boldsymbol{p}_1 - 2\boldsymbol{m}_0 - \boldsymbol{m}_1\right) t^2 + \boldsymbol{m}_0 t + \boldsymbol{p}_0 where the control points and tangents are coefficients. This permits efficient evaluation of the polynomial at various values of
t since the constant coefficients can be computed once and reused. ==Interpolating a data set==