Bézier flattening
From CGAFaq
A Bézier curve exactly represents a straight line segment traversed at uniform speed when the control points are sequentially and uniformly spaced along the segment. When this happens, the interior control points can be discarded and the curve replaced by the line segment from first point to last. Typically a curve is drawn by approximating it with a series of such "flat" segments, and the question arises of how best to test for "flatness", so that subdivision is halted an an appropriate level.
No single test clearly stands above the rest. Desirable criteria include:
- No false positives, so if the test says "flat enough" it is never wrong.
- Few false negatives, so unnecessary subdivisions are not forced.
- Efficient to compute given the control points and degree (usually cubic).
- Able to predict a subdivision level for an entire curve.
The cga archives include a reference to one such test:
Many overly simplistic methods do not work. For example, four control points can be collinear yet still represent a curve quite different from that between the ends, because the interior controls can pull the curve well outside the ends.

