Last major Update: 21.10.2013
Github repo that contains the presented code in this
post.
Introduction
In this article I will present you a very simple and in no sense
optimized algorithm written in Python 3 that plots quadratic and cubic
Bézier curves. I'll implement several variants of Bézier rasterization
algorithms. Let's call the first version the direct approach, since it
computes the corresponding x and y coordinates directly by evaluation of
the equation that describes such Bézier curvatures.
The other possibility is De Casteljau's algorithm, a recursive
implementation. The general principle is illustrated
here.
But the summarize the idea very briefly: In order to compute the points
of the Bézier curve, you subdivide the lines of the outer hull that are
given from the n+1 control points [Where n denotes the dimension of the
Bézier curve) at a ratio t (t goes from 0 to 1 in a loop). If you
connect the interpolation points, you'll obtain n-1 connected lines.
Then you apply the exactly same principle to these newly obtained lines
as before (recursive step), until you finally get one line remaining.
Consider again the point at the ratio t on this single line left and …
Continue reading