【发布时间】:2021-03-20 19:28:40
【问题描述】:
我在NSAffineTransform 方面取得了一些成功,但遇到了AffineTransform,这可能更快捷。但是它没有concat 方法,那么你如何使用它呢?我的目标是绘制围绕中心旋转数次的相同的小 BezierPath。
对不起,如果很明显;我想其他人可能会觉得这很有用。
【问题讨论】:
标签: swift affinetransform nsaffinetransform
我在NSAffineTransform 方面取得了一些成功,但遇到了AffineTransform,这可能更快捷。但是它没有concat 方法,那么你如何使用它呢?我的目标是绘制围绕中心旋转数次的相同的小 BezierPath。
对不起,如果很明显;我想其他人可能会觉得这很有用。
【问题讨论】:
标签: swift affinetransform nsaffinetransform
这是我的看法。如果您使用NSBezierPath 绘图,则将其应用到带有myPath.transform(using: tr) 的路径,例如:
let tr1 = AffineTransform(translationByX: 20, byY: 20)
bez = NSBezierPath()
// add some elements to the path here
bez.transform(using: tr1)
bez.stroke()
在我看来,转换会影响路径中已经存在的所有元素,但不会影响随后添加的任何元素。变换是累积的,因为重新应用变换或应用另一个变换将影响到目前为止输入的所有元素。
您还可以使用AffineTransform 自己的方法来转换单个点或大小。
【讨论】: