diff options
| author | Liam P. White <inkscapebronyat-signgmaildotcom> | 2014-04-20 17:05:53 +0000 |
|---|---|---|
| committer | Liam P. White <inkscapebronyat-signgmaildotcom> | 2014-04-20 17:05:53 +0000 |
| commit | 3c99062c5bc3c28b9c2b05de0ee3e9c2725a55b6 (patch) | |
| tree | 8cb73f7a0166738e84ebc30aad83d8102b963143 /src | |
| parent | minor bugfix (diff) | |
| download | inkscape-3c99062c5bc3c28b9c2b05de0ee3e9c2725a55b6.tar.gz inkscape-3c99062c5bc3c28b9c2b05de0ee3e9c2725a55b6.zip | |
correcting previous revision
(bzr r13090.1.65)
Diffstat (limited to 'src')
| -rw-r--r-- | src/live_effects/lpe-taperstroke.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/live_effects/lpe-taperstroke.cpp b/src/live_effects/lpe-taperstroke.cpp index 7aa896ade..8ddaa4087 100644 --- a/src/live_effects/lpe-taperstroke.cpp +++ b/src/live_effects/lpe-taperstroke.cpp @@ -213,12 +213,16 @@ Geom::PathVector LPETaperStroke::doEffect_path(Geom::PathVector const& path_in) //if so, reset the end offset, but still allow the start offset. if ( attach_start >= (size - attach_end) ) { attach_end.param_set_value( size - attach_start ); + metInMiddle = true; } } if (attach_start == size - attach_end) { metInMiddle = true; } + if (attach_end == size - attach_start) { + metInMiddle = true; + } //don't let it be integer { @@ -285,7 +289,7 @@ Geom::PathVector LPETaperStroke::doEffect_path(Geom::PathVector const& path_in) //append the outside outline of the path (with direction) throwaway_path = Outline::PathOutsideOutline(pathv_out[1], -fabs(line_width), static_cast<LineJoinType>(join_type.get_value()), miter_limit); - if (!zeroStart) { + if (!zeroStart && real_path.size() >= 1 && throwaway_path.size() >= 1) { if (Geom::distance(real_path.finalPoint(), throwaway_path.initialPoint()) > 0.0000001) { real_path.appendNew<Geom::LineSegment>(throwaway_path.initialPoint()); } else { @@ -305,7 +309,7 @@ Geom::PathVector LPETaperStroke::doEffect_path(Geom::PathVector const& path_in) pwd2.concat(stretch_along(pathv_out[2].toPwSb(), pat_vec[0], -fabs(line_width))); throwaway_path = Geom::path_from_piecewise(pwd2, LPE_CONVERSION_TOLERANCE)[0]; - if (Geom::distance(real_path.finalPoint(), throwaway_path.initialPoint()) > 0.0000001) { + if (Geom::distance(real_path.finalPoint(), throwaway_path.initialPoint()) > 0.0000001 && real_path.size() >= 1) { real_path.appendNew<Geom::LineSegment>(throwaway_path.initialPoint()); } else { real_path.setFinal(throwaway_path.initialPoint()); @@ -318,7 +322,7 @@ Geom::PathVector LPETaperStroke::doEffect_path(Geom::PathVector const& path_in) throwaway_path = Outline::PathOutsideOutline(pathv_out[1].reverse(), -fabs(line_width), static_cast<LineJoinType>(join_type.get_value()), miter_limit); - if (Geom::distance(real_path.finalPoint(), throwaway_path.initialPoint()) > 0.0000001) { + if (Geom::distance(real_path.finalPoint(), throwaway_path.initialPoint()) > 0.0000001 && real_path.size() >= 1) { real_path.appendNew<Geom::LineSegment>(throwaway_path.initialPoint()); } else { real_path.setFinal(throwaway_path.initialPoint()); |
