iPhone撕衣服游戏-图片擦除
来源:互联网 发布:邓肯每年的季后赛数据 编辑:程序博客网 时间:2024/04/25 21:11
原理:
撕衣服游戏的原理就是用两张几乎一样的照片(两张照片的区别就是一张比较保守,一张比较开放,实质是设计师在原本开放的模特照片上P了一层衣服),把开放的图片放在下面,把保守的图片放在上面(每一张图片都放在一张imageView上)。撕衣服的过程也就是擦除图片的过程,把手势接触过的地方图片擦除。
步骤:
1.给控制器添加pan手势,并设置监听方法。
2.在监听方法里
2.1 获取当前点
2.2 获取擦除的矩形范围(以当前点为中心,擦除当前点四周指定范围)
2.3 开启上下文
2.4 把控件上的layer渲染到上下文中
2.5 擦除图片
2.6 把生成的新图片赋给原来的imageView
代码:
- (void)viewDidLoad { [super viewDidLoad]; // 给控制器添加pan手势 UIPanGestureRecognizer *panGesutre = [[UIPanGestureRecognizer alloc] initWithTarget:self action: @selector(pan:)]; [self.view addGestureRecognizer:panGesutre];}- (void)pan:(UIPanGestureRecognizer *)panGesture{ //1.获取当前点 CGPoint currentPoint = [panGesture locationInView:self.view]; //2.获取擦除的矩形范围 CGFloat wipeWidth = 30; CGFloat wipeHeight = 30; CGFloat wipeX = currentPoint.x - wipeWidth * 0.5; CGFloat wipeY = currentPoint.y - wipeHeight * 0.5; CGRect rect = CGRectMake(wipeX, wipeY, wipeWidth, wipeHeight); //3.开启上下文 UIGraphicsBeginImageContextWithOptions(self.view.frame.size, NO, 0); CGContextRef ctx = UIGraphicsGetCurrentContext(); //4.控件的layer渲染上去 [self.imageView.layer renderInContext:ctx]; //5.擦除图片 CGContextClearRect(ctx, rect); //6.生成一张新的图片 UIImage *image = UIGraphicsGetImageFromCurrentImageContext(); self.imageView.image = image;}效果演示:
图片素材分享:撕衣服游戏图片素材
1 0
- iPhone撕衣服游戏-图片擦除
- 55.模拟撕衣服游戏编辑图片
- Android 撕衣服(刮刮乐游戏)
- 图片擦除
- 19_Android中图片处理原理篇,关于人脸识别网站,图片加载到内存,图片缩放,图片翻转倒置,网上撕衣服游戏案例编写
- 19_Android中图片处理原理篇,关于人脸识别网站,图片加载到内存,图片缩放,图片翻转倒置,网上撕衣服游戏案例编写
- 撕衣服
- 图片擦除-美女效果
- Quartz2D - 图片擦除
- XMG Quartz2D 图片擦除
- iOS 图片擦除
- 【图片擦除】jQuery.eraser图像擦除插件
- 79-图片擦除(纯代码)
- Quartz2D - 08.图片擦除效果
- 十二 iOS之 图片擦除
- 撕衣服小游戏代码
- 撕衣服小游戏原理
- 撕衣服源码
- Caffe 工程的一些编译错误以及解决方案
- IOS高级开发~Runtime(三)
- Verilog基础知识0(`define、parameter、localparam三者的区别及举例)
- EXCL模板报盘数据导入
- IOS高级开发~Runtime(四)
- iPhone撕衣服游戏-图片擦除
- 升级2.6.0stable接口相关变动和可能遇见的错误
- 开始第一天的博客学习
- Myeclipse启动tomcat console没有信息
- Butter Knife
- 侧滑框——SlidingMenu
- C/C++中strcpy函数的用法
- Codeforces Round #332 (Div. 2) D. Spongebob and Squares
- UML描述关系