在iOS开发中,创建图形,经常会使用贝塞尔路径,用于描绘一些比较复杂的图形。

  使用贝塞尔路径,需要在view中的方法- (void)drawRect:(CGRect)rect中进行描绘。

 1 - (void)drawRect:(CGRect)rect{
 2     UIBezierPath *path = [UIBezierPath bezierPath];
 3     // 起点
 4     [path moveToPoint:CGPointMake(0, 0)];
 5     // 途经点
 6     [path addLineToPoint:CGPointMake(100, 0)];
 7     [path addLineToPoint:CGPointMake(0, 100)];
 8     [path addLineToPoint:CGPointMake(0, 0)];
 9
10     // 设置颜色
11     [[UIColor blackColor]set];
12     // 设置线条宽度
13     path.lineWidth = 1;
14
15     // 渲染:描边
16     // [path stroke];
17     // 渲染:填充
18     [path fill];
19 }

  上面的代码使用贝塞尔路径在view上创建了一个填充三角形。

  贝塞尔曲线是一种矢量图形

转载于:https://www.cnblogs.com/kriskee/p/5384981.html

使用贝赛尔路径(UIBezierPath)创建画板相关推荐

  1. R语言使用fs包的dir_create函数在指定路径下创建新的文件夹、使用file_create函数在指定文件夹下创建文件

    R语言使用fs包的dir_create函数在指定路径下创建新的文件夹.使用file_create函数在指定文件夹下创建文件 目录

  2. python创建文件夹用什么函数_Python——os.mkdir()在指定路径下创建文件夹 + 路径的连接理解...

    Python--os.mkdir()在指定路径下创建文件夹 + 路径的连接理解 发布时间:2018-11-16 17:08, 浏览次数:512 , 标签: Python os mkdir 引子: 我在 ...

  3. RobotStudio机器人运行路径的创建与仿真

    文章目录 工件坐标的创建 运行路径的创建 仿真与录像 本文在一个已经 搭建好机械模型,同时 完成机器人系统的创建后的机器人运行路径的创建过程.初始时的界面如下: 工程文件已上传到网盘 包括:初始工程文 ...

  4. pgadmin4|解决pgadmin4的sql备份文件路径无法创建的问题

    受够了网上那三段屁话的抄来抄去了,为了给后面的pgadmin使用者指条明路,特此写下这个文章. 此文用于解决pgadmin4的sql备份文件路径无法创建的问题 选中要备份的数据库,点击Backup 进 ...

  5. Python碎片化学习教程 @19. 在指定路径下创建.txt文件,并写入内容

    代码功能:在指定路径下创建.txt文件,并写入内容 代码如下: file = open("1.txt", "w", encoding="utf8&qu ...

  6. Java:在网络路径中创建文件

    应用场景 使用Java语言在网络路径中创建文件. 实现 本地路径 首先在本地路径中创建文件的代码是这样的. import java.io.*; import java.text.CompactNumb ...

  7. canvas创建画板

    1.本期是讲解如何用canvas创建一个画板 详情步骤代码中都有注释 <!DOCTYPE html> <html lang="en"> <head&g ...

  8. vim 改变当前工作路径和创建文件夹

    一.先查看当前路径 pwd: 查看当前的工作路径 如果路径 不对,可以使用cd进行切换, cd: 改变vim的当前工作路径,比如说cd  ../命令 二.创建文件夹 !mkdir mydir

  9. Zookeeper命令行操作(常用命令;客户端连接;查看znode路径;创建节点;获取znode数据,查看节点内容,设置节点内容,删除节点;监听znode事件;telnet连接zookeeper)

    8.1.常用命令 启动ZK服务 bin/zkServer.sh start 查看ZK服务状态 bin/zkServer.sh status 停止ZK服务 bin/zkServer.sh stop 重启 ...

最新文章

  1. java struts2 表达式语言 ognl 简介
  2. 关于 Session 的深入探讨
  3. tensorflow 1.0 学习:参数和特征的提取
  4. Knative 实战:三步走!基于 Knative Serverless 技术实现一个短网址服务
  5. SGU247(排列组合与大数运算)
  6. P3335-[ZJOI2013]蚂蚁寻路【dp】
  7. java 模板方法设计模式_Java中的模板方法设计模式
  8. java接口允许ajax访问_服务允许AJAX请求,允许跨域请求
  9. linux重启docker镜像都没了,linux – 没有响应的Docker命令挂起
  10. JavaScript中的事件循环
  11. 没革哪有新?看云计算在医疗行业的版图
  12. oracle如何判断奇数偶数_图解面试题:如何分析中位数?
  13. 简记ShuffleNetV1V2
  14. 音视频格式.mp4和编码格式MPEG4以及ffmpeg转码
  15. JAVA类计算机专业毕业设计题目
  16. 高中数学学习方法的8个诀窍,高中生必看
  17. qq群文件安全检测未通过最完美解决办法
  18. 【OAK开源项目教程】opencv+python实现测量包装盒尺寸和体积
  19. JavaScript专题(三)防抖
  20. opencv 通过标定摄像头测量物体大小_解决方案 | 如何用普通手机准确测量物体体积?...

热门文章

  1. Ubuntu更新过程被中断后的问题
  2. 前端学习(3156):react-hello-react之脚手架文件_src
  3. 前端学习(3102):vue+element今日头条管理-hello-react案例
  4. 前端学习(3042):vue+element今日头条管理-用户退出
  5. 前端学习(2894):列表组件的拆分和样式编写
  6. [vue] vue和微信小程序写法上有什么区别?
  7. 工作281:时间戳转换问题
  8. 前端学习(2345):项目目录简单介绍
  9. 前端学习(2244)vue值造轮子之用户分析
  10. 前端学习(1856)vue之电商管理系统电商系统之安装mysql出现mysql报错:Can’t start server: Bind on TCP/IP port: 通常每个套接字地址(协议/网络地址