Find the control points of a Bezier curve approximating a Archimedean spiral curve

364 Views Asked by At

I am looking for some help in understanding this paper. So can someone understand the math stated here and help me understanding the algo/ computation behind it?

Or in other words, if I have an equation for a spiral curve r = a + b(theta), how to determine the control points for an approximate bezier curve?

I am new to this community. Any help is highly appreciable.

1

There are 1 best solutions below

1
On BEST ANSWER

The simplest approximation approach would be one using quadratic Bezier curves. Take the two end-points $\mathbf{P}_0$ and $\mathbf{P}_2$ of your spiral curve. Compute the tangent lines at these points, and get their intersection; call this point $\mathbf{P}_1$. Then $\mathbf{P}_0$, $\mathbf{P}_1$, $\mathbf{P}_2$ can be used as the control points of a quadratic Bezier curve. Check the deviation between this Bezier curve and your spiral. If it's too large, split the spiral into two curves, and approximate each piece individually. Repeat the approximate-test-split cycle until the approximation is good enough.

The simplest way to measure deviation is to distribute points along each curve and measure the distances between corresponding points. I'd say 10 or 15 points is enough. This will give an overestimate of the deviation, but not by too much, typically.