仿射变换:
|
函数 |
用途 |
|
CGAffineTransformMakeTranslation |
通过指定x, y值来创建一个平移矩阵 |
|
CGAffineTransformTranslate |
在已存在的矩阵中使用平移 |
|
CGAffineTransformMakeRotation |
通过指定角度来创建一个旋转矩阵 |
|
CGAffineTransformRotate |
在已存在的矩阵中使用旋转 |
|
CGAffineTransformMakeScale |
通过指定x, y缩放因子来创建一个缩放矩阵 |
|
CGAffineTransformScale | 在已存在的矩阵中使用缩放 |
|
CGAffineTransformInvert | 倒置矩阵,将值与倒置矩阵相乘得到原先的值。通常不需要倒置操作,因为我们可以通过保存和恢复图形状态来倒置CTM的效果 |
调用CGPointApplyAffineTransform在CGPoint结构上执行变换操作。调用CGSizeApplyAffineTransform在CGSize结构上执行变换操作。调用CGRectApplyAffineTransform在CGRect结构上执行变换操作
函数CGAffineTransformIsIdentity用于确认一个变换是否是单位变换。单位变换没有平移、缩放和旋转操作。Quartz常量CGAffineTransformIdentity表示一个单位变换
用户空间到设备空间的变换
如果我们的应用程序需要获取Quartz转换用户空间和设备空间的仿射变换,我们可以调用函数CGContextGetUserSpaceToDeviceSpaceTransform。
- 点:函数CGContextConvertPointToDeviceSpace和CGContextConvertPointToUserSpace将一个CGPoint数据结构从一个空间变换到另一个空间。
- 大小:函数CGContextConvertSizeToDeviceSpace和CGContextConvertSizeToUserSpace将一个CGSize数据结构从一个空间变换到另一个空间。
- 矩形:函数CGContextConvertRectToDeviceSpace和CGContextConvertRectToUserSpace将一个CGPoint数据结构从一个空间变换到另一个空间
本文深入探讨了iOS开发中仿射变换的应用,包括如何使用CGAffineTransform进行平移、旋转、缩放,并介绍了用户空间到设备空间的变换以及如何在不同空间中转换点、大小和矩形。
1800

被折叠的 条评论
为什么被折叠?



