CATransform3D 使用
struct CATransform3D
{
CGFloat m11(x轴缩放), m12(y轴切变), m13, m14(x轴拉伸);
CGFloat m21(x轴切变), m22(y轴缩编), m23, m24(向y轴拉伸);
CGFloat m31, m32, m33, m34;
CGFloat m41(x轴平移), m42(y轴平移), m43(z轴平移), m44(放大);
};
举例:
对照图
UIImageView *img = [[UIImageView alloc]initWithFrame:CGRectMake(100, 100, 100, 100)];
img.image = [UIImage imageNamed:@"11"];
[self.view addSubview:img];
修改图
UIImageView *caimg = [[UIImageView alloc]initWithFrame:CGRectMake(100, 200, 100, 100)];
caimg.image = [UIImage imageNamed:@"11"];
[self.view addSubview:caimg];
1、平行移动
CATransform3DMakeTranslation(tx,ty,tz)
tx:x轴方向移动,右移为正数
ty:y轴方向移动,下移为正数
tz:z轴方向移动,外移为正数
CATransform3D translation = CATransform3DMakeTranslation(0.0, 80.0, 5.0);
caimg.layer.transform = translation;
2、缩放
CATransform3DMakeScale(CGFloat sx, CGFloat sy, CGFloat sz)
sx:x轴方向缩放,大于1放大。小于1缩小
sy:y轴方向缩放,大于1放大。小于1缩小
sz:z轴方向缩放,大于1放大。小于1缩小
CATransform3D scale = CATransform3DMakeScale(2, 2, 5);
caimg.layer.transform = scale;
3、旋转
CATransform3DMakeRotation (CGFloat angle, CGFloat x,CGFloat y, CGFloat z)
angle:旋转角度
x:围绕x轴旋转,取值范围-1~1
y:围绕y轴旋转,取值范围-1~1
z:围绕z轴旋转,取值范围-1~1
CATransform3D rotation = CATransform3DMakeRotation(M_PI/3, 1, 1, 1); caimg.layer.transform = rotation;
4、复合行
CATransform3DIsIdentity (CATransform3D t)
t:CATransform3D类型,可以附加
CATransform3DTranslate (CATransform3D t, CGFloat tx,
CGFloat ty, CGFloat tz)
CATransform3DScale (CATransform3D t, CGFloat sx,
CGFloat sy, CGFloat sz)
CATransform3D 使用的更多相关文章
- CATransform3D方法汇总
CATransform3D三维变换 struct CATransform3D { CGFloat m11, m12, m13, m14; CGFloat m21, m22, m23, m24; CGF ...
- iOS - CALayer相关(CATransform3D)
一.图层的几何 图层的几何简单通俗,图层的所有几何属性(包括矩阵变换),都可以有隐式和显式动画. 图层几何的属性: 1.position是CGPoint值,她指定图层相对于她图层的位置,该值基于父图层 ...
- TableView使用CATransform3D特效动画
效果一: 在代理方法中实现: - (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell fo ...
- CATransform3D
本章介绍图层的几何组成部分,及他们之间的相互关,同时介绍如何变换矩阵可以产生复杂的视觉效果. 1.1 图层的坐标系 图层的坐标系在不同平台上面具有差异性.在iOS系统中,默认的坐标系统原点在图层的中心 ...
- CGAffineTransform与CATransform3D
CGAffineTransform 1.CG的前缀告诉我们,CGAffineTransform类型属于Core Graphics框架,Core Graphics实际上是一个严格意义上的2D绘图API, ...
- 【转】 CATransform3D 矩阵变换之立方体旋转实现细节
原文网址:http://blog.csdn.net/ch_soft/article/details/7351896 第一部分.前几天做动画,使用到了CATransform3D ,由于没有学过计算机图形 ...
- 在图层上使用CATransform3D制做三维动画-b
在UIView上,我们可以使用CGAffineTransform来对视图进行:平移(translation),旋转(Rotation),缩 放(scale),倾斜(Invert)操作,但这些操作是没有 ...
- CATransform3D 讲解
最近看到一个3D动画效果,决定认真就研究一下.从网上看到很多介绍,下面详细的讲解一下CATransform3D CATransform3D结构成员的意义. structCATransform3D { ...
- CATransform3D中m34字段的取值含义
转载自:http://zhidao.baidu.com/link?url=OlVQoGOKIBmaXKgQisOLtzliTLPvreOOsRmny3yebA1Wb6-B3KtuKlRXmv0tO3y ...
- CATransform3D参数的意义
经常忘记CATransform3D各参数的意思,记下来好好理解下 struct CATransform3D { CGFloat m11(x缩放),m12(y切变),m13(旋转),m14(); C ...
随机推荐
- Ajax 与 JSON
Ajax,是对Asynchronous JavaScript + XML的简写.这一技术能够向服务器请求额外的数据而无需卸载页面,会带来更好的用户体验. Ajax的核心是XMLHttpRequest对 ...
- 微信小程序“满月”:尝鲜之后你还用过它吗?
距离 2017 年 1 月 9 日微信小程序上线,整整过去了一个月时间.和互联网时代每天出现的众多新鲜事物相似,小程序甫一诞生,立即占据了各大科技媒体网站头屏并引起社交圈的兴奋讨论.由于背靠微信,纷纷 ...
- Mybatis显示SQL语句
众所周知,hibernate可以通过配置show_sql在控制台显示sql语句,Mybatis可不可以呢?当然是可以的,将ibatis log4j运行级别调到DEBUG可以在控制台打印出ibatis运 ...
- 在 Azure 中的 Linux VM 上创建 MongoDB、Express、AngularJS 和 Node.js (MEAN) 堆栈
本教程介绍如何在 Azure 中的 Linux VM 上实现 MongoDB.Express.AngularJS 和 Node.js (MEAN) 堆栈. 通过创建的 MEAN 堆栈,可以在数据库中添 ...
- Oracle EBS 导入日记账报错
EM29/EM01 ED01
- python入门の缩进魔术
idx=1 sum=0 while idx<=100: sum=idx+sum idx=idx+1 print('sum 100 =', sum) ======================= ...
- springMVC入门-09
这一节介绍SpringMVC对文件上传的支持,该功能支持需要使用到两个jar包:cmmons-fileupload-1.2.2.jar和commons-io-2.1.jar. 在controller类 ...
- npm install时报错“Unexpected end of JSON input while parsing near...”解决方法
执行:npm cache clean --force 即可解决此问题
- Web通信协议:OSI、TCP、UDP、Socket、HTTP、HTTPS、TLS、SSL、WebSocket、Stomp
1 各层的位置 1.1 OSI七层模型全景图 OSI是Open System Interconnect的缩写,意为开放式系统互联. 1.2 五层网络协议 在七层的基础上, ...
- September 08th 2017 Week 36th Friday
Death is so terribly final, while life is full of possibilities. 死亡是冰冷可怕的绝境,而或者却充满了无限的可能. It isn't t ...