liveBook · Manning

Quadratic spline

As explained in Geometry for Programmers

A quadratic spline is a spline assembled from polynomial pieces of degree two with prescribed joining conditions.

A quadratic spline joins polynomial pieces of degree two into one path. Each piece can be quadratic, while joining conditions keep the overall path continuous and smooth. Splines turn scattered points into controllable curves for games, graphics, GIS, engineering, and manufactured surfaces. section 7.0

A practical construction starts with a straight segment, then creates each later quadratic piece by borrowing the tangent vector from the previous segment. This lets a path pass through newly added points while preserving smooth motion. section 7.2.2

The construction exposes useful controls:

  • Adjust tangent length to change the curve’s appearance without changing its waypoints. section 7.2.2
  • Choose a speeding/slowing coefficient k to govern how early or late the path turns. section 7.2.2
  • Continue adding points while retaining a smooth, continuous, governable path. section 7.2.2

Changing the turn

Two paths can pass through the same points but behave differently: k = 0.8 makes the boat tend to turn early, while k = -1.5 makes it tend to turn late. section 7.2.2

Figure 7.13 The path goes through the same points, but with k = 0.8, the boat tends to turn early, and with k = 1.5, it tends to turn late.
07-13

Compare paths through identical waypoints and see how changing k alters their turning behavior. section 7.2.2

How Geometry for Programmers covers it

How deep it goes
Explains piecewise quadratic construction, tangent reuse, and coefficient control, without developing a general classical spline formulation.
Examples
Uses waypoint paths, borrowed tangents, boat motion, and alternative k values to demonstrate shape and timing changes.
What you can do after
Build it from scratch by composing quadratic pieces and tuning tangent relationships for a smooth, controllable path.
How it connects
Connects quadratic splines with polynomial functions, tangent vectors, Bézier curves, and NURBS.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Geometry for Programmers. The section links point to the parts of the book it draws on.