While working on the ADG, we implemented BAIOCA, a new algorithm for offsetting Bézier cubic curves. It finds the offset curve by imposing some obvious constraint and by minimizing the mean square error between the original curve and the offset curve at the same time value.

By visually inspecting the results, it seems the algorithm performs better than handcraft (the previous algorithm) in the edge cases (latest 4 images on the screenshots) but overall it performs worse on the other cases (above all, image 2 and 4).

Handcraft algorithm

I think the algorithm is theoretical correct but the additional phantom constraint at the same time value (implied to be able to solve the system) must be blamed. This is confirmed by the fact that when increasing the samples the offset curve must fit, the quality of the result decreases. This counterintuitive behavior makes sense if you think that additional phantom constraints worsen the result.

Post your comment


No one has commented on this page yet.

RSS feed for comments on this page RSS feed for all comments