1.首先要分析手绘礼物的构成。

主要要素是手势+触摸点+图片,只要记录触摸的各个点和监听手指在屏幕的滑动就可以了。

2.如何绘制

- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event {}
- (void)touchesMoved:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event {}
- (void)touchesEnded:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event {}

这三个方法用来监听和记录手指触摸的点,可以将触摸点设置为图片中心,也可以根据触摸点去设置图片的位置。

3.具体实现

- (void)touchesMoved:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event {CGPoint point = [[touches anyObject] locationInView:self];if (fabs(fabs(_x) - fabs(point.x)) < 25 && fabs(fabs(_y) - fabs(point.y)) < 25) {return;}//    [_path addLineToPoint:point];UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"timg.jpeg"]];imageView.center = point;[self.imgMutArray addObject:imageView];[self addSubview:imageView];
//    [self setNeedsDisplay];_x = point.x;_y = point.y;[self.mutArray addObject:@(point)];NSLog(@"(%.1f,%.1f)",point.x,point.y);
}

主要实现方法在这里,我记录了上次的点位置,利用限制间隔距离使得图片之间不重叠,用到UIBezierPath是用来测试路径,当然把图片去掉就是手绘了。

4.接下来看看效果

简单实现直播手绘礼物相关推荐

  1. 手绘如何学?零基础手绘教程

    手绘如何学?零基础手绘教程.零基础想学习动漫手绘,不需要什么工具,你只需要买一本素描纸,一本素描的书以及一支铅笔,就可以照着课本开始练习了.当然如果觉得枯燥无味,可以买一本动漫教程的书,在练习素描基础 ...

  2. 【产品经理】手绘风格在网页设计中的运用

    转载自:老二牛车教育 » [产品经理]手绘风格在网页设计中的运用 本文中,我们将讨论怎样在网页中应用手绘风格,以改善网站的用户体验. 识别度与真实感 手绘风格非常有利于展示人性色彩,形成独特的识别度, ...

  3. 手把手教你实现手绘风格图形

    大家好,我是 漫步,今天分享一篇高难度的图形绘制文章. Rough.js[1]是一个手绘风格的图形库,提供了一些基本图形的绘制能力,比如:虽然笔者是个糙汉子,但是对这种可爱的东西都没啥抵抗力,这个库的 ...

  4. 情感化设计中的手绘应用表现

    情感化设计中的手绘应用表现 这篇分享是我最近读<情感化设计>的一点小感悟及关注的那些事儿.在这里与大家分享下.欢迎大家多多指教和交流. 如今是数字化时代的天下,我们逐渐习惯并享受由数字营造 ...

  5. 做好flash手绘基本功,简单的手绘人物头像和眨眼动画

    最近老有朋友问我手绘的东西.看来大家最近都比较喜欢画些什么,正好浮生偷的半日闲,做个简单的人头像吧,希望对大家有帮助,其实这些东西的确很练手,需要的只是用功.细心罢了   1:先画一个简单的轮廓   ...

  6. 绘制微型计算机系统组成结构图手绘,思维导图简单画法,电脑绘制和手绘一文精通...

    思维导图是一种结构化思考的高效工具,它可以帮助我们理清思绪,重塑更加有序的知识体系.由此可见,思维导图在工作或生活中,有着许许多多的运用场景.比如它可以用来制作计划安排.读书笔记.事物分析.知识归纳等 ...

  7. Java源码-简单手绘程序

    使用BufferedImage保存手绘图片,使用DrawCanvas作为画布,响应鼠标拖曳操作,描绘红.蓝.绿三种颜色的直线. 代码如下:(摘自<疯狂Java讲义>第11章) import ...

  8. java简单手绘程序

    package CrazyJava;import java.awt.*; import java.awt.image.*; import java.awt.event.*; import javax. ...

  9. 饮料果汁海报设计,简单色彩手绘却极具生命力,成功吸引着消费者

    抓住了顾客的眼球,你就成功了一半.因此,很多美食果汁饮料海报的设计上都是煞费苦心. 那些具有视觉冲击力的海报心别人做的那么漂亮,自己却无从下手. 临摹学习下优图网 www.uppsd.com 带来的简 ...

最新文章

  1. c语言数组本质,c语言数组的本质
  2. python中的 怎么用_Python中如何调用Linux命令
  3. sh ndk-build.cmd command not found
  4. Android 单元测试学习计划
  5. Hadoop hdfs文件块信息获取/文件重命名/修改文件的副本数量代码示例
  6. win10系统中photoshop cs6中界面字体太小的解决方法
  7. python解密m3u8播放_Python3 通过m3u8连接获取完整媒体文件(附全网视频VIP观看方法)...
  8. 极路由1S HC5661A 刷入不死u-boot(breed)加刷潘多拉固件教程
  9. DataSet用法详细 转
  10. 前剪枝算法和后剪枝算法区别
  11. 读书笔记:《世说新语》
  12. OpenGL缓冲区对象之FBO
  13. RTX3090ti和rtx2080ti参数对比
  14. Excel学习日记:L33-二八法则的神奇图表-柏拉图(帕累托图)
  15. 物联网应用网站——设计报告
  16. 百度地图使用的详细教程
  17. 考研英语写作的高分,竟然是靠这些“套路”
  18. meta http-equiv=X-UA-Compatible content=ie=edge的意思
  19. Django生成二维码详解
  20. [NOIP2017模拟]Fantasy Strange Tree

热门文章

  1. 数据清洗:Numpy
  2. 论文阅读:基于区块链的一个车联网轻量级安全V2V通信特点:利用无线网络传输在V2V通信中的信道特性,生成特殊的LF(链路指纹)用于标识每个信道,区块链技术用于生成区块
  3. Java版WebSocket消息推送系统搭建
  4. STM32命名规范(以STM32F103C8T6为例)
  5. 树的结构比图更加严格,那么具体在哪几个点严格呢?
  6. Highchart 改编风力风向图
  7. 如何将其他语言添加到Office 2010
  8. 计算机应用2010的答案,《计算机应用基础(Windows 7+Office 2010)》参考答案
  9. CRM(01 线索)
  10. 第十五周学习周记——微信小程序开发初步