gpt4 book ai didi

php - 如何从旋转/缩放中获取 SVG 变换矩阵值

转载 作者:搜寻专家 更新时间:2023-10-31 20:48:52 26 4
gpt4 key购买 nike

本质上,我正在寻找一个 PHP 函数或方程式来输出 SVG 转换中使用的矩阵值。

我四处搜寻,不幸的是一无所获。

我很清楚 rotate() 和 scale function() 但是这些不是我需要的。

我需要能够获取以度为单位的旋转角度以及 x/y 比例数据,并以 SVG 变换格式矩阵(a、b、c、d、e、f)输出一系列值

理想情况下,我想在 PHP 中执行此操作,但如前所述,标准数学方程式也会有所帮助。

希望有人能指出我正确的方向。

最佳答案

您可以通过将单个变换的矩阵相乘来计算值。看看 SVG specification找到它们的定义:

rot(a)       := matrix(cos(a), sin(a), -sin(a), cos(a), 0, 0)
scale(sx,sy) := matrix(sx, 0, 0, sy, 0, 0)

根据应用变换的顺序(缩放前旋转与旋转前缩放),您会得到不同的矩阵:

rot(a)*scale(sx,sy) = matrix(sx*cos(a), sx*sin(a), -sy*sin(a), sy*cos(a), 0, 0)
scale(sx,sy)*rot(a) = matrix(sx*cos(a), sy*sin(a), -sx*sin(a), sy*cos(a), 0, 0)

关于php - 如何从旋转/缩放中获取 SVG 变换矩阵值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10392340/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com