首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python svgwrite和同步animationTransforms

Python svgwrite和同步animationTransforms
EN

Stack Overflow用户
提问于 2020-12-30 06:35:56
回答 1查看 76关注 0票数 0

我正在尝试使用python svgwrite来使对象同时缩放和旋转。到目前为止,我的工作是添加两个连续的"animateTransform“。然而,它似乎只考虑了最后一个操作,如我的示例所示。

代码语言:javascript
复制
import svgwrite 

path = [(100,100),(100,200),(200,200),(200,100)]

image = svgwrite.Drawing('test.svg',size=(300,300))

rectangle = image.add(image.polygon(path,id ='polygon',stroke="black",fill="white"))
rectangle.add(image.animateTransform("rotate","transform",id="polygon", from_="0 150 150", to="360 150 150",dur="4s",begin="0s",repeatCount="indefinite"))
rectangle.add(image.animateTransform("scale","transform",id="polygon", from_="0", to="1",dur="4s",begin="0s",repeatCount="indefinite"))

image.save()
display(SVG('test.svg'))

有人能帮上忙吗?

EN

回答 1

Stack Overflow用户

发布于 2021-03-23 23:53:31

这可能来得太晚了,但对我来说起作用的是将additive = "sum"添加到两个动画中。请注意,添加动画的顺序会影响最终结果。

代码语言:javascript
复制
import svgwrite 

path = [(100,100),(100,200),(200,200),(200,100)]

image = svgwrite.Drawing('test.svg',size=(300,300))

rectangle = image.add(image.polygon(path,id ='polygon',stroke="black",fill="white"))
rectangle.add(image.animateTransform("scale","transform",id="polygon", from_="0", to="1",dur="4s",begin="0s",repeatCount="indefinite", additive = "sum"))    
rectangle.add(image.animateTransform("rotate","transform",id="polygon", from_="0 150 150", to="360 150 150",dur="4s",begin="0s", additive = "sum", repeatCount="indefinite"))

image.save()
display(SVG('test.svg'))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65499685

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档