我有一个Bezier路径,存储为包含多个点的数组,每个点都是形如[cp1x,cp1y,cp2x,cp2y,x,y]的坐标数组。
我希望能够缩放该路径以调整其大小,但我不知道如何进行数学计算。我试图将系数应用于每个坐标值,但这似乎没有起作用。
有人知道如何实现吗?
我希望能够缩放该路径以调整其大小,但我不知道如何进行数学计算。我试图将系数应用于每个坐标值,但这似乎没有起作用。
有人知道如何实现吗?
a
,那么就会变成[a*cp1x,a*cp1y,a*cp2x,a*cp2y,a*x,a*y]
,或者如果您想分别缩放x
和y
,则可以为x
和y
组件使用不同的因子。(x=0, y=0)
来缩放内容,因此如果您没有任何曲线在原点上,则可能看起来像是移位。如果要否定此移位的影响,则可以从x
和y
值中分别减去Px
和Py
,其中Px
和Py
是您希望在缩放时不移动的点(如果您想要的话,在乘以之后再加回来)。但如果您要缩放整个画布,例如从5英寸乘以5英寸到7英寸乘以7英寸,则需要进行没有移位的乘法(在这种情况下,乘以7./5)。