From 80c9473a95dd9a83020a247201452e45ec9750c3 Mon Sep 17 00:00:00 2001 From: johanengelen Date: Thu, 17 Jan 2008 21:43:33 +0000 Subject: [PATCH] fix transformation of LPECurveStitch when "Scale width relative" is set --- src/live_effects/lpe-curvestitch.cpp | 16 ++++++++++++++++ src/live_effects/lpe-curvestitch.h | 2 ++ 2 files changed, 18 insertions(+) diff --git a/src/live_effects/lpe-curvestitch.cpp b/src/live_effects/lpe-curvestitch.cpp index d3b1f6c12..98814eab0 100644 --- a/src/live_effects/lpe-curvestitch.cpp +++ b/src/live_effects/lpe-curvestitch.cpp @@ -165,6 +165,22 @@ LPECurveStitch::resetDefaults(SPItem * item) strokepath.param_set_and_write_new_value( path.toPwSb() ); } +void +LPECurveStitch::transform_multiply(Geom::Matrix const& postmul, bool set) +{ + // only take translations into account + if (postmul.isTranslation()) { + strokepath.param_transform_multiply(postmul, set); + } else if (!scale_y_rel.get_value()) { + // this basically means that for this transformation, the result should be the same as normal scaling the result path + // don't know how to do this yet. +// Geom::Matrix new_postmul; + //new_postmul.setIdentity(); +// new_postmul.setTranslation(postmul.translation()); +// Effect::transform_multiply(new_postmul, set); + } +} + } //namespace LivePathEffect } /* namespace Inkscape */ diff --git a/src/live_effects/lpe-curvestitch.h b/src/live_effects/lpe-curvestitch.h index 0cb6b492e..a0050760c 100644 --- a/src/live_effects/lpe-curvestitch.h +++ b/src/live_effects/lpe-curvestitch.h @@ -32,6 +32,8 @@ public: virtual void resetDefaults(SPItem * item); + virtual void transform_multiply(Geom::Matrix const& postmul, bool set); + private: PathParam strokepath; ScalarParam nrofpaths; -- 2.30.2