The main motivation for using splines instead of a single polynomial is to avoid the oscillations in high-degree interpolating polynomials that can occur between interpolation points.

Cubic splines allow $C^2$ interpolants, which are important in applications such as computer-aided design.

Here is an example of oscillations from this page:

enter image description here enter image description here


Cubic splines are often used to plot the cutting lines followed by numerically-controlled milling machines. The machines' cutters are typically rotating drill points that are moved over the surface to be cut by horizontal and vertical actuators. Obviously the node values have to be the same so as to have a single contiguous line to cut, and the node first derivatives have to be the same so the actuators aren't forced to change directions abruptly. What is less obvious is that the second derivatives have to be the same because matching the local accelerating motion of the drill point requires the speed of the drill rotation to vary, and allowing it to vary too abruptly is liable to damage the drill.


Splines allow interpolation with local support: moving a control point affects only the region around the control point (where "region" can be defined precisely as a function of the order of the spline). This is in contrast to e.g. interpolation by a single polynomial, where a small change at one control point can cause a large change at an arbitrary distance.

This local support is particularly useful in computer-aided design, as indicated by the name spline, which comes from the flexible rulers used in pre-computer design. It is significant that two of the most important eponymous objects in the theory of splines (the de Casteljau algorithm and Bézier splines) are named respectively for a mathematician at Citroën and an engineer at Renault.