CGAffineTransform方法汇总

CGAffineTransform是二维的仿射变换,可以进行位移,旋转,缩放,CGAffineTransform实际上是一个矩阵。

CGAffineTransform {

  CGFloat a, b, c, d;

   CGFloat tx, ty;

};

对证的矩阵:

|a, b, 0|

|c, d, 0|

|tx,ty,1|

方法名 描述

CGAffineTransformIdentity

单位仿射变换,对应的矩阵:[ 1 0 0 1 0 0 ]

CGAffineTransformMake(CGFloat a, CGFloat b,CGFloat c, CGFloat d, CGFloat tx, CGFloat ty)

创建放射变换

CGAffineTransformMakeTranslation(CGFloat tx, CGFloat ty)

位移

CGAffineTransformMakeScale(CGFloat sx, CGFloat sy)

比例缩放

CGAffineTransform CGAffineTransformMakeRotation(CGFloat angle)

旋转

CGAffineTransformIsIdentity(CGAffineTransform t)

判断是否是单位变换矩阵

CGAffineTransformTranslate(CGAffineTransform t,CGFloat tx, CGFloat ty)

在上一个transform上位移

CGAffineTransformScale(CGAffineTransform t,CGFloat sx, CGFloat sy)

在上一个transform上缩放

CGAffineTransformRotate(CGAffineTransform t,CGFloat angle)

在上一个transform上旋转

CGAffineTransformInvert(CGAffineTransform t)

反转

CGAffineTransformConcat(CGAffineTransform t1,CGAffineTransform t2)

通过两个已经存在的矩阵生成一个新的矩阵

CGAffineTransformEqualToTransform(CGAffineTransform t1,CGAffineTransform t2)

两个放射变换是否相等

CGPointApplyAffineTransform(CGPoint point,CGAffineTransform t)

把变化应用到一个点上

CGSizeApplyAffineTransform(CGSize size, CGAffineTransform t)

把变化应用到一个区域

CGRectApplyAffineTransform(CGRect rect, CGAffineTransform t)

运用到一个带原点的区间
   
   
原文地址:https://www.cnblogs.com/small-octopus/p/4932611.html