美文网首页
iOS 动画 —— transform

iOS 动画 —— transform

作者: Shorebloom_59f6 | 来源:发表于2018-12-02 11:27 被阅读0次

参考博客

@property(nonatomic) CGAffineTransform transform;  // view 的属性
@property CATransform3D transform; // layer 的属性
  • view.transform:一般是View的旋转,拉伸移动等属性,是二维的,通常使用都是前缀CGAffineTransform的类。
  • view.layer.transform:可以在3D模式下面的变化,通常使用的都是前缀为CATransform3D的类。

Tip: 其实两者的区别就是二维和三维的区别

一. CGAffineTransform

1. 简介

CGAffineTransform是一个用于处理形变的类,其可以改变控件的平移、缩放、旋转等,其坐标系统采用的是二维坐标系,即向右为x轴正方向,向下为y轴正方向

2. 方法介绍

  1. 以初始位置为基准,在x轴方向上平移x单位,在y轴方向上平移y单位
CGAffineTransformMakeTranslation(CGFloat tx, CGFloat ty)
  1. 以初始位置为基准,在x轴方向上缩放x倍,在y轴方向上缩放y倍
CGAffineTransformMakeScale(CGFloat sx, CGFloat sy)
  1. 实现以初始位置为基准,将坐标系统逆时针旋转angle弧度(弧度=π/180×角度,M_PI弧度代表180角度)
CGAffineTransformMakeRotation(CGFloat angle)

注:

  • 当angle为值时,时针旋转坐标系统,反之时针旋转坐标系统
  • 逆时针旋转坐标系统的表现形式为对控件进行顺时针旋转
  1. 以一个已经存在的形变(t)为基准,在x轴方向上平移x单位,在y轴方向上平移y单位
CGAffineTransformTranslate(CGAffineTransform t,CGFloat tx, CGFloat ty)
  1. 实现以一个已经存在的形变为基准,在x轴方向上缩放x倍,在y轴方向上缩放y倍
CGAffineTransformScale(CGAffineTransform t, CGFloat sx, CGFloat sy)
  1. 以一个已经存在的形变为基准,将坐标系统逆时针旋转angle弧度(弧度=π/180×角度,M_PI弧度代表180角度)
CGAffineTransformRotate(CGAffineTransform t,CGFloat angle)

:transform属性默认值为CGAffineTransformIdentity,可以在形变之后设置该值以还原到最初状态

二、 CATransform3D

参考博客

相关文章

  • iOS动画

    iOS动画-从UIView动画说起iOS动画-Transform和KeyFrame动画iOS动画-layout动画...

  • iOS动画总结(Core Animation&POP&a

    iOS动画总结(Core Animation&POP&贝塞尔&Transform) iOS动画总结(Core An...

  • iOS 动画(一)

    iOS 动画(一)iOS 动画(二) 基于 UIView 的 transform 属性 缩放 该方法有两个参数,分...

  • iOS 动画四:transform 动画

    一、iOS transform 动画 view.transform:一般是 View 的旋转,拉伸移动等属性,是二...

  • iOS transform 动画

    一、iOS transform 动画 view.transform:一般是 View 的旋转,拉伸移动等属性,是二...

  • iOS 动画 —— transform

    参考博客 view.transform:一般是View的旋转,拉伸移动等属性,是二维的,通常使用都是前缀CGAff...

  • iOS 动画 —— transform

    了解仿射变换,我们可以先区别一下 view.transform 和 view.layer.transform。 v...

  • iOS动画-transform

    参考链接:https://www.jianshu.com/p/02c341c748f9 可以操作view 或者 v...

  • iOS transform动画

    transform主要由这几个方法 CGAffineTransformMakeTranslation(平移)CGA...

  • 016-iOS 动画机制

    iOS 动画大致有以下几类 UIView Transform 仿射变换 KeyFrame CoreAnimatio...

网友评论

      本文标题:iOS 动画 —— transform

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