summaryrefslogtreecommitdiffstats
path: root/src/live_effects/lpe-perspective_path.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/live_effects/lpe-perspective_path.cpp')
-rw-r--r--src/live_effects/lpe-perspective_path.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/live_effects/lpe-perspective_path.cpp b/src/live_effects/lpe-perspective_path.cpp
index e3397a20e..998554241 100644
--- a/src/live_effects/lpe-perspective_path.cpp
+++ b/src/live_effects/lpe-perspective_path.cpp
@@ -168,8 +168,10 @@ KnotHolderEntityOffset::knot_set(NR::Point const &p, NR::Point const &origin, gu
LPEPerspectivePath* lpe = get_effect(item);
- lpe->offsetx.param_set_value((p - origin)[NR::X]);
- lpe->offsety.param_set_value(-(p - origin)[NR::Y]); // additional minus sign is due to coordinate system flipping
+ NR::Point const s = snap_knot_position(p);
+
+ lpe->offsetx.param_set_value((s - origin)[NR::X]);
+ lpe->offsety.param_set_value(-(s - origin)[NR::Y]); // additional minus sign is due to coordinate system flipping
// FIXME: this should not directly ask for updating the item. It should write to SVG, which triggers updating.
sp_lpe_item_update_patheffect (SP_LPE_ITEM(item), false, true);