表示一个从二维空间的坐标转义到另外一个二维空间坐标的一个映射
CGAffineTransformMake
每次都是以最初位置的中心点作为参考(最初绘制的位置)
CGAffineTransform
每次都是以传入的 transform 为参考
平移
~~ view.transform = CGAffineTransformTranslate(view.transform, 20, 20);
缩放
~~ view.transform = CGAffineTransformScale(view.transform, 0.9, 0.9);
旋转
~~ view.transform = CGAffineTransformMakeRotation(M_PI / 4);
三个组合变换
CGAffineTransform translate = CGAffineTransformTranslate(view.transform, 20, 20);
CGAffineTransform scale = CGAffineTransformScale(view.transform, 0.9, 0.9);
// 两个变换的组合 用来连接两个变换效果并返回。返回的 t = t1 * t2
CGAffineTransform concat = CGAffineTransformConcat(translate, scale);
CGAffineTransform rotate = CGAffineTransformRotate(view.transform, M_PI / 4);
view.transform = CGAffineTransformConcat(concat, rotate);
网友评论