From 6d99fed16aeeb21341e5d28f52534b2a0b94f876 Mon Sep 17 00:00:00 2001 From: Jabier Arraiza Date: Fri, 25 Aug 2017 15:32:29 +0200 Subject: Starting with powerpencil --- src/live_effects/lpe-powerstroke.cpp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'src/live_effects') diff --git a/src/live_effects/lpe-powerstroke.cpp b/src/live_effects/lpe-powerstroke.cpp index d87f92fcc..05ce3b7bd 100644 --- a/src/live_effects/lpe-powerstroke.cpp +++ b/src/live_effects/lpe-powerstroke.cpp @@ -249,7 +249,9 @@ LPEPowerStroke::doOnApply(SPLPEItem const* lpeitem) } offset_points.param_set_and_write_new_value(points); } else { - g_warning("LPE Powerstroke can only be applied to shapes (not groups)."); + if (!SP_IS_SHAPE(lpeitem)) { + g_warning("LPE Powerstroke can only be applied to shapes (not groups)."); + } } } @@ -557,6 +559,9 @@ LPEPowerStroke::doEffect_path (Geom::PathVector const & path_in) Geom::Piecewise > pwd2_in = pathv[0].toPwSb(); Piecewise > der = derivative(pwd2_in); Piecewise > n = unitVector(der,0.0001); + if (!n.size()) { + return path_in; + } n = rot90(n); offset_points.set_pwd2(pwd2_in, n); @@ -620,7 +625,9 @@ LPEPowerStroke::doEffect_path (Geom::PathVector const & path_in) LineJoinType jointype = static_cast(linejoin_type.get_value()); - Piecewise > pwd2_out = compose(pwd2_in,x) + y*compose(n,x); + Piecewise > pwd2_out_1 = compose(pwd2_in,x); + Piecewise > pwd2_out_2 = y*compose(n,x); + Piecewise > pwd2_out = pwd2_out_1 + pwd2_out_2; Piecewise > mirrorpath = reverse(compose(pwd2_in,x) - y*compose(n,x)); Geom::Path fixed_path = path_from_piecewise_fix_cusps( pwd2_out, y, jointype, miter_limit, LPE_CONVERSION_TOLERANCE); -- cgit v1.2.3