summaryrefslogtreecommitdiffstats
path: root/src/ui/tools-switch.cpp
diff options
context:
space:
mode:
authorJohan B. C. Engelen <jbc.engelen@swissonline.ch>2014-10-18 14:46:03 +0000
committerJohan B. C. Engelen <j.b.c.engelen@alumnus.utwente.nl>2014-10-18 14:46:03 +0000
commitfa5fb39f8c780f78da13545ece947f167d4324b2 (patch)
tree468c1a2524c5da41b907b873a40c48cc379fa867 /src/ui/tools-switch.cpp
parentUpdate to trunk r13621 (diff)
downloadinkscape-fa5fb39f8c780f78da13545ece947f167d4324b2.tar.gz
inkscape-fa5fb39f8c780f78da13545ece947f167d4324b2.zip
Fix LPE Powerstroke unintuitive / unstable / scale-dependent behavior
(visible for example with Catmul-Rom interpolation) The instability happens when the width-value of adjacent control knots are the same. It's technical, but here goes quickly. Knots are treated as [offset along path, width] points. The offset along path is the segment number + the location along that segment. The width is (may not be true, but for ease of discussion) in canvas coordinates. This means that the interpolation is performed in a *very* compressed coordinate system, where the x-coords may range from, say, 0 to 5, and the y-coords from 0 to 2000. This is also scale dependent; changing the scale of your path and scaling all widths accordingly will change the look of your path. The fix now does the interpolation in a scaled coordinate system. It stretches the x-coordinates to the arclength of the path. After interpolation, the inverse scaling is applied to the interpolation result. (bzr r13341.1.279)
Diffstat (limited to 'src/ui/tools-switch.cpp')
0 files changed, 0 insertions, 0 deletions