liveBook · Manning

Basis function

As explained in Geometry for Programmers

A Bézier basis polynomial is a polynomial factor that weights one value or control point in a Bézier formula.

A basis function is a polynomial factor that assigns a value or control point its influence in a Bézier formula. The curve combines these weighted contributions as the parameter t moves from 0 to 1. section 7.2.3

For a first-degree Bézier function, the basis polynomials are 1 − t and t: B(t) = (1 − t)y₁ + ty₂. At t = 0, the first factor selects y₁; at t = 1, the second selects y₂. Between them, the factors smoothly interpolate the two values. section 7.2.3

Interpolating two values

With y₁ = 0.2 and y₂ = 0.7, B(t) = (1 − t)·0.2 + t·0.7. At t = 0.4, the basis values are 0.6 and 0.4, producing 0.6·0.2 + 0.4·0.7 = 0.4. The basis values therefore act like changing blend weights. section 7.2.3

Higher-degree Bézier formulas use several basis polynomials:

  • Quadratic curves use (1 − t)², 2(1 − t)t, and t² to combine three control-point coordinates. section 7.2.3
  • Cubic curves use four basis terms, including (1 − t)³, 3(1 − t)²t, 3(1 − t)t², and t³. section 7.2.3
  • NURBS scale basis polynomial functions; increasing their common degree trades fewer segments for greater continuity. section 7.3.1

How Geometry for Programmers covers it

How deep it goes
Defines linear basis polynomials, works numerical interpolation, and extends the idea to quadratic, cubic, rational, and NURBS cases.
Examples
Uses first-degree interpolation, quadratic and cubic coordinate formulas, rational weights, and plotted Bézier or NURBS curves.
What it assumes
Assumes a parameter t ranging from 0 to 1 and basic polynomial manipulation; teaches weighting from the linear case.
What you can do after
Build it from scratch with weighted polynomial terms for linear, quadratic, or cubic Bézier coordinates.
How it connects
Connects Bézier curves to Lagrange interpolation, polynomial splines, rational 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.