diff --git a/synfig-studio/plugins/lottie-exporter/layers/rotate_layer.py b/synfig-studio/plugins/lottie-exporter/layers/rotate_layer.py index 354edcf..ee1758a 100644 --- a/synfig-studio/plugins/lottie-exporter/layers/rotate_layer.py +++ b/synfig-studio/plugins/lottie-exporter/layers/rotate_layer.py @@ -6,6 +6,7 @@ import sys import copy import settings from helpers.transform import gen_helpers_transform +from common.Param import Param import synfig.group as group sys.path.append("..") @@ -25,6 +26,9 @@ def gen_layer_rotate(lottie, layer): origin = layer.get_param("origin") origin.animate("vector") anchor = copy.deepcopy(origin) + # deep copy changes the parent layer also + anchor.parent = origin.parent + pos = origin amount = layer.get_param("amount") # This is rotation amount @@ -33,8 +37,6 @@ def gen_layer_rotate(lottie, layer): anchor.add_offset() if settings.INSIDE_PRECOMP: pos.add_offset() - # This is a kind of reset after add_offset, will be called inside add_offset - # later anchor.animate("vector") pos.animate("vector") gen_helpers_transform(lottie, pos, anchor, scale, amount) diff --git a/synfig-studio/plugins/lottie-exporter/layers/scale_layer.py b/synfig-studio/plugins/lottie-exporter/layers/scale_layer.py index dd8d427..002d94e 100644 --- a/synfig-studio/plugins/lottie-exporter/layers/scale_layer.py +++ b/synfig-studio/plugins/lottie-exporter/layers/scale_layer.py @@ -23,6 +23,8 @@ def gen_layer_scale(lottie, layer): center = layer.get_param("center") center.animate("vector") anchor = copy.deepcopy(center) + # deep copy changes address of parent layer also + anchor.parent = center.parent pos = center scale = layer.get_param("amount") # This is scale amount