
On 12-08-13 11:06, Tavmjong Bah wrote:
On Mon, 2013-08-12 at 14:07 +0800, Auguste Pop wrote:
... The traditonal.png shows the error when using the traditional method. And the comparison.png shows the both errors from the traditional method and the method i think "wrong". Although the method in question still gives a relatively small error (about one thousandth), it is significantly worse than the traditional method (max error on 10^-6 order).
In that case, yes, I would indeed call it a bug. (As three orders of magnitude worse approximation using more segments seems like a terribly bad idea.)
...3. Inkscape tends to use Beziers when arcs might be better. In any case, an arc should not be converted to two Bezier path segments as this changes the number of markers. Tav
Summarizing: feel free to submit one or two bugs, stressing that both the approximation quality is inconsistent (and significantly worse), and that Inkscape should not break up an arc into more than one segment. (Thanks for noticing this!)
My guess is that the culprit is either the conversion from arc to sbasis, or the conversion from sbasis to SVG path (which seems to break up sbasis curves which are not sufficiently like a cubic Bézier), or both. But I haven't checked this yet.
BTW, it might be worth it to also look at how close the approximations are to the arc-length parameterization. When converting an arc to a Bézier, it might be important to stay close to the parameterization of the arc. (Although I guess it's not used that much.)