Inkscape Wiki

draw freely
Download Now!
Open Source Scalable Vector Graphics Editor
 


Bend Path

The following text was originally written by J.F. Barraud. It explains the mathematics behind the Bend Path effect.

Let B be the skeleton path, and P the pattern (the path to be deformed).

P is a map t --> P(t) = ( x(t), y(t) ) and B is a map t --> B(t) = ( a(t), b(t) )

The first step is to re-parametrize B by its arc length: this is the parametrization in which a point p on B is located by its distance s from start. We obtain a new map s --> U(s) = (a'(s),b'(s)), that still describes the same path B, but where the distance along B from start to U(s) is s itself. We also need a unit normal to the path. This can be obtained by computing a unit tangent vector, and rotate it by 90°. We call this normal vector N(s).

The basic deformation associated to B is then given by:

(x,y) --> U(x)+y*N(x)

(i.e. we go for distance x along the path, and then for distance y along the normal)