iOS基础 - Quartz 2D绘图的基本步骤

时间:2024-11-30 09:04:02

一、使用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];