1.基于控件的形變
? ?默認就是帶make的(每次形變都是針對原點)
? ? ? ? ?imageV.transform = CGAffineTransform(translationX: 20, y: 20)
? ? ? ? ?imageV.transform = CGAffineTransform(scaleX: 0.5, y: 0.5)
? ? ? ? ?imageV.transform =? CGAffineTransform(rotationAngle: 180)
? ?不帶make的(在已經形變的基礎上做形變) ?
? ? ? ? ? imageV.transform = imageV.transform.scaledBy(x: 0.5, y: 0.5)
? ? ? ? ? imageV.transform = imageV.transform.rotated(by: 180)
? ? ? ? ? imageV.transform = imageV.transform.translatedBy(x: 10, y: 10)
#這里與OC的區別比較大...
2.基于layer的形變
? ?作用在layer上的? 不帶make在效果之后的基礎上做
? ? ? ? ?imageV.layer.transform = CATransform3DRotate(imageV.layer.transform, CGFloat(M_PI), 1, 0, 0)
? ? ? ? imageV.layer.transform = CATransform3DIdentity ? ? ?空的transform
? ? ? ? imageV.layer.transform = CATransform3DScale(imageV.layer.transform, 0.2, 0.2, 0.2)
?作用在layer上的? 帶make在原點基礎上形變
? ? ? ? imageV.layer.transform = CATransform3DMakeScale(0.5, 0.5, 0.5)
? ? ? ? imageV.layer.transform = CATransform3DMakeRotation(180, 1, 0, 0)
? ? ? ? imageV.layer.transform = CATransform3DMakeTranslation(10, 10, 0)