SVG为什么绕一个点公式旋转与正常公式相反?

我正在阅读SVG Essentials,在第6章中,它讨论了旋转变换。它说

  

rotate(angle,centerX,centerY)等于translate(centerX,centerY)rotate(angle)平移(-centerX,-centerY)

但是在计算这个问题之前,我学到的是首先将点A(x,y)设为A(x-centerX,y-centerY),然后旋转,然后再添加centerX,centerY。

this answer这样说。

我尝试复习一些线性代数知识,但仍然不知道有什么不同。

有人可以告诉我为什么会这样吗?

请指导我为什么svg add-rotate-sub和normal是sub-rotate-add?

谢谢。

cat0927 回答:SVG为什么绕一个点公式旋转与正常公式相反?

您的推理是正确的。在SVG规范中,转换顺序是从右到左应用的,因此它符合您的直觉:

1) translate(-centerX,-centerY)
2) rotate(angle) 
3) translate(centerX,centerY)

有关更多详细信息,请参见this answer

本文链接:https://www.f2er.com/3144843.html

大家都在问