iOS开发14-iOS CATransform3DRotate旋转动画

iOS开发14-iOS CATransform3DRotate旋转动画

 
 有问题请联系博主,邮箱:nathanlee1987@aliyun.com


1、围绕X/Y/Z轴旋转

- (void)viewDidLoad {
    [super viewDidLoad];
    
    
    self.myIMV=[[UIImageView alloc]init];
    
    self.myIMV.image=[UIImage imageNamed:@"1.png"];
    //self.myIMV.image=[UIImage imageNamed:@"2.jpg"];
    self.myIMV.frame=CGRectMake(100, 100, 100 , 100);
    
    self.myIMV.layer.anchorPoint=CGPointMake(0, 0);
    self.myIMV.layer.cornerRadius=50;
    self.myIMV.layer.masksToBounds=YES;
    
    [self.view addSubview:self.myIMV];
    self.myTimer = [NSTimer scheduledTimerWithTimeInterval:0.05 target:self selector:@selector(timerAction:) userInfo:nil repeats:YES];
    
    
}


-(void)timerAction:(id)sender{
    
    //1.围绕X轴旋转
    //self.myIMV.layer.transform=CATransform3DRotate(self.myIMV.layer.transform, M_PI/60, 1, 0, 0);
     //2.围绕Y轴旋转
    //self.myIMV.layer.transform=CATransform3DRotate(self.myIMV.layer.transform, M_PI/60, 0, 1, 0);
    //3.围绕Z轴旋转
//self.myIMV.layer.transform=CATransform3DRotate(self.myIMV.layer.transform, M_PI/60, 0, 0, 1);
    
}


动画效果:

X轴旋转:



Y轴旋转:



Z轴旋转:








 有问题请联系博主,邮箱:nathanlee1987@aliyun.com




著作权声明:本文由http://my.csdn.net/Nathan1987_原创,欢迎转载分享。请尊重作者劳动,转载时保留该声明和作者博客链接,谢谢
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Halcon中,有两种方法可以实现旋转区域。 第一种方法是使用Rotate_Image函数,该函数可以绕图像的中心点进行旋转。具体的代码如下所示: ``` /* ImageReduced3: 输入图像 ImageRotate: 输出图像 Phi: 旋转角度 */ rotate_image(ImageReduced3, ImageRotate, Phi, Interpolation) ``` 这种方法的优点是实现起来比较简单,但缺点是只能绕图像的中心点进行旋转。\[2\] 第二种方法是通过应用仿射变换矩阵进行旋转,这种方法可以实现绕任意位置进行旋转。具体的代码如下所示: ``` /* 创建仿射变换矩阵 */ hom_mat2d_identity(HomMat2D) /* 设定旋转矩阵参数 */ hom_mat2d_rotate(HomMat2D, Phi, Px, Py, HomMat2DRotate) /* 应用仿射变换矩阵进行旋转 */ affine_trans_region(Region, RegionAffineTrans, HomMat2DRotate, 'nearest_neighbor') ``` 这种方法的优点是可以绕任意位置进行旋转,但需要使用仿射变换矩阵来实现。\[3\] 所以,根据你的需求,你可以选择使用Rotate_Image函数进行简单的中心旋转,或者使用仿射变换矩阵进行任意位置的旋转。 #### 引用[.reference_title] - *1* [halcon的图像旋转(区域旋转)](https://blog.csdn.net/weixin_44490080/article/details/95587996)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [halcon__仿射变换之旋转](https://blog.csdn.net/wanxiweilai/article/details/121378644)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值