需要有关如何在 CGPaths 中使用 CGAffineTransform 的示例
我不明白如何应用几乎出现在每个 CGPath 方法中的“CGAffineTransform”参数,例如:
void CGPathAddRect (
CGMutablePathRef path,
const CGAffineTransform *m,
CGRect rect
);
假设我想旋转一个矩形路径,我将如何写出这个函数?从哪里获取变换矩阵?
I don't understand how to apply "CGAffineTransform" parameter that appears in practically every CGPath method, e.g.:
void CGPathAddRect (
CGMutablePathRef path,
const CGAffineTransform *m,
CGRect rect
);
Let's say I want to rotate a rect path, how would I write out this function? Where to I get the transform matrix?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以使用 CGAffineTransformMakeRotation 创建一个绕点 (0, 0) 旋转矩形的 CGAffineTransform。
如果您需要它绕任何其他点 (x, y) 旋转,则需要编写 2 个平移来将 (x, y) 移动到 (0, 0) 并返回。
You use use CGAffineTransformMakeRotation to create a CGAffineTransform that rotates the rectangle about the point (0, 0).
If you need it to rotate about any other points (x, y), you need to compose 2 translations to move (x, y) to (0, 0) and back.