美文网首页
iOS学习-CGAffineTranform

iOS学习-CGAffineTranform

作者: 男人宫 | 来源:发表于2020-03-19 11:15 被阅读0次
    Ttransform是做的二维控件的平移,旋转和缩放

    以初始位置为基准,做平移,tx,ty.正值表示向正方向,负值表示向负方向

      self->_imageV.transform = CGAffineTransformMakeTranslation(100, 100);
    

    以初始位置为基准,在x轴和y轴实现缩放

       self.imageV.transform = CGAffineTransformMakeScale(1.5, 1.5);
    

    以初始位置为基准,绕顺时针或者逆时针进行旋转.角度为正是对j控件当前view进行顺时针旋转

        self.imageV.transform = CGAffineTransformMakeRotation(M_PI);
    

    CGAffineTransformTranslate实现以一个已经存在的形变为基准,在x轴方向上平移x单位,在y轴方向上平移y单位

      self.imageV.transform = CGAffineTransformTranslate(self.imageV.transform, 100, 100);
    

    CGAffineTransformScale实现以一个已经存在的形变为基准,在x轴方向上和y轴方向上缩放

        self.imageV.transform = CGAffineTransformScale(self.imageV.transform, 1.1, 1.1);
    

    CGAffineTransformRotate实现一个以已经存在的形变为进准进行旋转

        [UIView animateWithDuration:1 animations:^{
            self.imageV.transform = CGAffineTransformRotate(self.imageV.transform, M_PI * 2 /3);
        } completion:^(BOOL finished) {
           [UIView animateWithDuration:1 animations:^{
                //可以在形变之后设置该值以还原到最初状态
                self.imageV.transform = CGAffineTransformIdentity;
            }];
        }];
    

    原理(结合矩阵去理解)

    //如平移
       // self.imageV.transform = CGAffineTransformMake(1, 0, 0, 1, 100, 100);
    

    相关文章

      网友评论

          本文标题:iOS学习-CGAffineTranform

          本文链接:https://www.haomeiwen.com/subject/gcvkyhtx.html