transform属性

在OC中,通过transform属性可以修改对象的平移、缩放比例和旋转角度常用的创建transform结构体方法分两大类

(1) 创建“基于控件初始位置”的形变

CGAffineTransformMakeTranslation(平移)

CGAffineTransformMakeScale(缩放)

CGAffineTransformMakeRotation(旋转)

(2) 创建“基于transform参数”的形变

CGAffineTransformTranslate

CGAffineTransformScale

CGAffineTransformRotate

(3)CGAffineTransformIdentity

//属性能还原到 进行动画 之前的状态

self.transform = CGAffineTransformIdentity;

变形种类和CGAffine Transform 函数对照表

旋转          正数和负数 分别代表顺时针和逆时针

self.transform = CGAffineTransformRotate(self.transform, 180*(M_PI/180.0));  //此方法是在旋转后的基础上在继续旋转 能一老旋转

self.transform = CGAffineTransformMakeRotation(180*(M_PI/180.0)); // 单纯基于原始状态旋转 只能旋转一次

扩大/缩小

self.transform  = CGAffineTransformScale(self.transform, 2.0, 2.0); //此方法是在缩放后的基础上在继续缩放 能一老缩放

self.transform = CGAffineTransformMakeScale(2.0, 2.0); //单纯基于原始的状态缩放,只能缩放一次

左右反转

self.transform = CGAffineTransformScale(self.transform, -1,1.0);

注:如果把后面的参数写成(self.transform, -2,2.0)  效果是反转的同事放大

self.transform = CGAffineTransformMakeScale(-1, 1.0); //效果是 只反转一次

上下反转  左右反转的效果同样适用于上下反转

self.transform = CGAffineTransformScale(self.transform, 1,-1.0);

self.transform = CGAffineTransformMakeScale(1, -1.0);

平行移动   左负右正 上负下正  效果解释同旋转

self.transform = CGAffineTransformMakeTranslation(25.0, -25.0);

self.transform = CGAffineTransformTranslate(self.transform, 25.0, -25.0);

两个变形的复合

transform属性的更多相关文章

  1. 图层的transform属性

    Main.storyboard // //  ViewController.m //  7A11.图层的transform属性 // //  Created by huan on 16/2/4. // ...

  2. 通过transform属性改变图片的位置大小等信息

    对UIImageView的位置大小方向的改变可以通过改变其transform属性值实现. 位置改变: var transform = CGAffineTransformMakeTranslation( ...

  3. 2016 - 1- 14 UI阶段学习补充 transform属性详解

    UIView的transform属性 transform是view的一个重要属性,它在矩阵层面上改变view的显⽰状态,能实现view的缩放.旋转.平移等功能.transform是CGAffineTr ...

  4. 理解SVG坐标系统和变换: transform属性

    SVG元素可以通过缩放,移动,倾斜和旋转来变换-类似HTML元素使用CSS transform来变换.然而,当涉及到坐标系时这些变换所产生的影响必然有一定差别.在这篇文章中我们讨论SVG的transf ...

  5. Swift - 通过设置视图的transform属性实现动画

    设置视图对象的transform属性,可以实现各种动画效果. 1,移动 指在同一平面内,将控件按照某个直线方向平移一定的距离. 1 2 3 4 5 //每次都从当前位置平移 self.imageVie ...

  6. 11--tag 和transform属性

    tag 和transform属性 1.tag 标签,就相当于身份识别的标码,可以通过tag值获取对应的对象. 2.使用transform 实现对象的平移和旋转. // // ViewControlle ...

  7. IOS(二)基本控件UIButton、简易动画、transform属性、UIImageView

    UIButton //1.设置UIButton 的左右移动 .center属性 获得 CGPoint 来修改x y //1.设置UIButton 的放大缩小 bounds属性 获得CGRect 然后通 ...

  8. animation,transform属性

    animation属性 使用@keyfarmes属性开启动画步骤 结构体:@keyfarmes name{ from{ } to{ } } @keyfarmes name{ 0%{ } 50%{ } ...

  9. iOS transform属性的使用

    1.transform属性 在iOS开发中,通过transform属性可以修改UIView对象的平移.缩放比例和旋转角度,常用的创建transform结构体方法分两大类 (1) 创建“基于控件初始位置 ...

随机推荐

  1. php 单例设计模式 example

    <?php class User { //静态变量保存全局变量 private static $_instance=null; //私有化构造函数,防止外界实例化对象 private funct ...

  2. JavaScript 性能优化1

    一直在学习javascript,也有看过<犀利开发Jquery内核详解与实践>,对这本书的评价只有两个字犀利,可能是对javascript理解的还不够透彻异或是自己太笨,更多的是自己不擅于 ...

  3. webGL 学习教程

    ====教程=================== webGL中文网:http://www.hewebgl.com/webGL API:https://developer.mozilla.org/en ...

  4. 对apply和call的理解

    存在的原因: call和apply是为了动态改变this而出现的,当一个object没有某个方法,但是其他的有,我们可以借助call或apply用其它对象的方法来操作. call 和 apply 都是 ...

  5. vsftp配置参数

    转载:http://blog.chinaunix.net/uid-134240-id-172158.html listen_address=ip address 指定侦听IP listen_port= ...

  6. leetcode 6

    题目描述: 该开始就输在了理解题意上.. 没搞懂zigzag是什么意思. 查了一些解释终于明白要干什么了.     将一个字符串按照Z字形排列(侧着看):再把结果按行输出. 刚开始的想法是讲字符串按照 ...

  7. IIS报错 未将对象引用设置到对象的实例。

    在vs中运行正常的项目 ,发布到IIS总是提示 未将对象引用设置到对象的实例. 运行静态页面 html正常,只是打开.aspx页面的时候报错,在确保了数据库,配置,权限均正常的情况下. 错误原因:先安 ...

  8. Longest Common Prefix [LeetCode 14]

    1- 问题描述 Write a function to find the longest common prefix string amongst an array of strings. 2- 思路 ...

  9. requireJS心得

    最近有幸接触到前端分模块加载JS框架,并且结合avalonJS使用,在此记录学习痕迹: a.实现js文件的异步加载,避免网页失去响应: b.管理模块之间的依赖性,便于代码的编写和维护. (1)requ ...

  10. Win 2003下IIS6+Mysql+php5.2  isapi搭建 升级php5.2到5.3测试 借助fastcgi实现

    Win 2003下IIS6+Mysql+php5.2  原环境isapi搭建 升级php5.2到5.3测试 借助fastcgi实现 操作如下 实验前准备:php-5.3.5-Win32-VC6-x86 ...