学习笔记 - Quartz 2D绘图的基本步骤
2016-08-25 12:31
399 查看
转载自:http://www.cnblogs.com/monicaios/p/3516745.html
2 ) 设置路径(路径是用来描述形状的)
3) 将路径添加到上下文
4) 设置上下文属性(设置颜色,线宽,线性等)
5) 绘制路径
6) 释放路径(在 Quartz2D 中,因为是 C
语言的框架,所有用 Create , Copy
字样方法实例化的对象,都需要自行释放)
二、Quartz2D 是一套 C 语言的框架, C
1> 在 C 语言中,所有的对象,都是通过对象的引用地址来使用的,因此不需要使用
*
2> C 语言不是面向对象的语言,它是面向过程的语言,因此,在 C 语言中,如果要操作某一个对象,都是通过函数来实现
3> ARC 是 OC 的自动引用计数,如果在 C
语言中,为对象分配( Create , Copy
)了内容,我们需要自己释放 (Release)
) => r / 255.0 0~1.0
Green 绿( 0~255 )程序员( 0~FF
) => g / 255.0 0~1.0
Blue 蓝( 0~255 )程序员( 0~FF
) => b / 255.0 0~1.0
Alpha 透明度 0~1.0
0 表示完全透明
1 表示完全不透明
2^8 * 2^8 * 2^8 = 2^24 = 2^4 * 2^10 * 2^10 = 16 * 1K * 1K 16 位真彩色
提示:仅在使用 Quartz2D 绘图时,尽量不要改变 Alpha
值,如果改变透明度,会严重影响性能
如果不指定颜色,默认使用黑色
kCGPathStroke 绘制线条,无所谓路径是否关闭
kCGPathFillStroke 填充并绘制线条
kCGPathEOFill 异或填充,针对关闭路径使用
kCGPathEOFillStroke 异或填充并画线
2) x, y 弧线所在圆上的圆心
3 )半径
4) 开始角度、结束角度, 0 度是圆形最右侧的点
5) 顺时针: 0 逆时针: 1
2> 使用路径绘图,意味着可以预定义一组路径,在需要时直接绘制,灵活度高
3> 除了绘制图形之外,路径还可以用在核心动画中,指定视图运动的轨迹
关于路径,无论是使用绘图,还是核心动画,都必须要掌握
[[UIColor redColor] setStroke];
// 设置填充颜色
[[UIColor blueColor] setFill];
// 同时设置边线和填充颜色
[[UIColor greenColor] set];
一、使用 Quartz 2D 绘图的基本步骤
1 ) 获取上下文 context( 绘制图形的地方 )2 ) 设置路径(路径是用来描述形状的)
3) 将路径添加到上下文
4) 设置上下文属性(设置颜色,线宽,线性等)
5) 绘制路径
6) 释放路径(在 Quartz2D 中,因为是 C
语言的框架,所有用 Create , Copy
字样方法实例化的对象,都需要自行释放)
二、Quartz2D 是一套 C 语言的框架, C
语言中使用方法
1> 在 C 语言中,所有的对象,都是通过对象的引用地址来使用的,因此不需要使用*
2> C 语言不是面向对象的语言,它是面向过程的语言,因此,在 C 语言中,如果要操作某一个对象,都是通过函数来实现
3> ARC 是 OC 的自动引用计数,如果在 C
语言中,为对象分配( Create , Copy
)了内容,我们需要自己释放 (Release)
三、设置 RGB 颜色的介绍
Red 红( 0~255 )程序员( 0~FF) => r / 255.0 0~1.0
Green 绿( 0~255 )程序员( 0~FF
) => g / 255.0 0~1.0
Blue 蓝( 0~255 )程序员( 0~FF
) => b / 255.0 0~1.0
Alpha 透明度 0~1.0
0 表示完全透明
1 表示完全不透明
2^8 * 2^8 * 2^8 = 2^24 = 2^4 * 2^10 * 2^10 = 16 * 1K * 1K 16 位真彩色
提示:仅在使用 Quartz2D 绘图时,尽量不要改变 Alpha
值,如果改变透明度,会严重影响性能
如果不指定颜色,默认使用黑色
四、填充模式
kCGPathFill 填充绘制,针对关闭的路径使用kCGPathStroke 绘制线条,无所谓路径是否关闭
kCGPathFillStroke 填充并绘制线条
kCGPathEOFill 异或填充,针对关闭路径使用
kCGPathEOFillStroke 异或填充并画线
五、弧线参数
1 )上下文2) x, y 弧线所在圆上的圆心
3 )半径
4) 开始角度、结束角度, 0 度是圆形最右侧的点
5) 顺时针: 0 逆时针: 1
六、利用上下文直接绘图,比使用路径要简单
1> 使用上下文直接绘图,意味着每次都要指定其中的路径才能够绘制2> 使用路径绘图,意味着可以预定义一组路径,在需要时直接绘制,灵活度高
3> 除了绘制图形之外,路径还可以用在核心动画中,指定视图运动的轨迹
关于路径,无论是使用绘图,还是核心动画,都必须要掌握
七、因为核心图形使用非常频繁,因此 UIKit 对于常用的绘图做了一定的封装
设置边线颜色[[UIColor redColor] setStroke];
// 设置填充颜色
[[UIColor blueColor] setFill];
// 同时设置边线和填充颜色
[[UIColor greenColor] set];
相关文章推荐
- IOS学习笔记 运用Quartz 2D框架绘图理论基础(1)
- iOS 学习笔记 Quartz2D绘图
- iOS学习笔记08-Quartz2D绘图
- iOS学习笔记08-Quartz2D绘图
- iOS基础 - Quartz 2D绘图的基本步骤
- 学习IOS开发UI篇--Quartz2D基本绘图
- iOS quartzCore学习之Quartz 2D绘图 基本图形
- Quartz2D绘图的基本使用
- Quartz 2D基本绘图
- 【Unity3D】学习笔记(第5记) 2D游戏开发基本技巧之拾取道具
- Quartz2D绘图的基本使用
- 【Unity3D】学习笔记(第3记) 2D游戏开发基本技巧之场景切换(Javascript)
- Quartz 2D绘图基本用法
- 基础学习笔记之opencv(13):基本绘图
- Matlab学习笔记——基本绘图功能
- 【Unity3D】学习笔记(第2记) 2D游戏开发基本技巧之背景制作
- ios学习笔记:关于Quartz2D使用(矩阵操作)
- CoreGraphics 2D绘图学习笔记
- android 学习笔记 view和surfaceView的2D绘图
- 简明pyton教程学习笔记 1-5 介绍+安装python+最初的步骤+基本概念+运算符与表达式