Effects - Modify Path - Flatten Beziers fails on complicated paths with small flatness parameter
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Inkscape |
Fix Released
|
Low
|
Alvin Penner |
Bug Description
Reproduction Steps:
1)Generate a long, highly detailed curve with the freehand curve tool (a scribble is the best way to reproduce the bug)
2)Select the curve
3)Select the "Flatten Beziers" effect from the "Effects - Modify Path" menu
4)Use a small flatness value (around 2 consistently produces the bug)
5)Observe the failure of the effect
A sample .svg file containing a curve that consistently produces a failure with a flatness parameter of "2" is included.
The python traceback ultimately reports:
" File "C:\Program Files\Inkscape\
return self[1]['x'] - self[0]['x']
RuntimeError: maximum recursion depth exceeded"
A version of this effect that works on curves of arbitrary length and detail would be very valuable for those wishing to use Inkscape as a level design tool for games. It greatly simplifies the process of generating a triangle mesh from a closed path. However, in its current form artists have a difficult time predicting how long or detailed the curves they generate can be before the path will produce a failure.
Changed in inkscape: | |
status: | Confirmed → Incomplete |
Changed in inkscape: | |
assignee: | nobody → Alvin Penner (apenner) |
milestone: | none → 0.49 |
status: | Fix Committed → Incomplete |
status: | Incomplete → Fix Committed |
tags: | added: backport-proposed |
Changed in inkscape: | |
status: | Fix Committed → Fix Released |
Confirmed on Vista sp1, Inkscape rev. 21852 and 0.46.
Reproduced with parameter value of 2.
Attached is the complete log message.