Points with given curvature on cubic Bézier curve

245 Views Asked by At

I am looking for all points on cubic Bézier curve that have a specific curvature $\kappa_1$.

The curvature $\kappa$ is caluclated as

$$ \kappa=\frac{x'y'' - y'x''}{\sqrt{({x'}^2+{y'}^2)^3}} $$

Solving the equation above for a curvature $\kappa_1$ would first involve getting rid of the square root, so we have

$$ \kappa_1^2=\frac{(x'y'' - y'x'')^2}{({x'}^2+{y'}^2)^3} $$

This can be multiplied with $({x'}^2+{y'}^2)^3$, expanded, factored and moved to one side of the equation. For a cubic Bézier curve $x'$ and $y'$ have degree 2, so this will result in a polynomial of degree 12 that we have to find the roots for.

Although I am not too happy with having to solve a polynomial of degree 12, I understand what needs to be done to get there.

What I do not understand is this:

Since a cubic bezier curve can have up to five curvature extrema plus two inflection points (see this excellent answer), I assume that for non-degenerate cases there should be no more than six points with curvature $\kappa_1$ on the curve. But a polynomial of degree 12 can have up to 12 roots. What does this mean? Is my assumption wrong that there can be only six points with $\kappa_1$? Or will all roots occur twice? If so, does this mean that there is a chance to reduce our polynomial to degree 6?

1

There are 1 best solutions below

0
On BEST ANSWER

The reason is that due to squaring, not only the solutions for $\kappa_1$, but also the solutions for $-\kappa_1$ will be found. Therefore the squared equation can have twice the number of solutions as the original equation.