Closed yaqwsx closed 2 years ago
It seems to me like a float rounding error (the SVG uses large numbers). The problem is in this code:
In version 1.4.1 all radius_check
values are 1.0
, however, in version 1.4.2 there are arcs for which the value of radius_check
is 1.0000000000000004
which triggers the error path.
However, I am not familiar with the code base enough to be able to track down the problem nor be confident that adding an epsilon in the condition is suitable or not.
Hi, any update on this? I would like to help, however, I don't have enough inside this fairly large codebase to actually be able to trace down the root cause of wrongly computing radius_check
.
Thanks for reporting this @yaqwsx! This is now fixed in v1.5.1.
Thanks! I will test it in the upcoming weeks.
Great. Just FYI, I'll be adding some regression tests (see #179). If you have any SVGs you'd like included, please attach them to a comment on that thread.
Thanks, it seems that it works nicely! I updated my tools to use the newest release.
I have the following simple script:
When I run it on SVG below:
Zipped version
The stack trace is: