您的位置:首页 > 移动开发 > IOS开发

iOS绘图

2015-07-01 14:06 260 查看
一、UIKit

.使用 UIKit 和 Core Graphics 绘图

1.CoreGraps 中得基础类型是 CGContext。

2.上下文是所有绘图调用的绘制目的地。

.使用 UIKit 的 UIGraphicsGetCurrentContext 函数可以获得一个图形上下文引用。

然后,使用上下文进行绘制

二、Core Graphics

.Core Graphics 提供了大量用于绘图的结构。CGGeometry 头文件中定义的 CGPoint 结构用于表示点,

CGRect 结构用于表示矩形。CGColor 头文件中定义的 CGColor 结构用于表示颜色。

CGGradient 头文件中定义的CGGradient 用于构建渐变。渐变可将两个或多个颜色无缝混合在一起。

.Core Graphics 还提供了丰富的实用函数,可用于操作点和矩形。

CGRectIntersectsRect 函数来检测碰撞

三、绘图环境

.图形上下文

上下文保持绘图的当前状态,因此有些开发者将其称为状态机。

上下文的目的是提供一个独立于设备的画布用于绘图。

.UIView 坐标系

CGContextRotateCTM 函数

先基于原点绘制一个对象,然后使用 CGContextTranslateCTM 函数将原点移动到任何位置加以使用。

您可以使用CGContextSaveState 函数保存上下文状态并使用CGContextRestoreGState 函数恢复上下文状态。

四、使用 UIBezierPath 绘制形状

使用 UIBezierPath 类,可以建立由各种数量、各种组合的直线和曲线组成形状的路径。

使用 bezierPathWithOvalInRect: 方法通过传递的CGRect 绘制一个与矩形区域相切的椭圆。

.手动绘制形状。如果想用这种方式处理路径,可将当前的绘图点想象成笔尖。

使用 moveToPoint: 方法可以移动笔,只是移动并没有绘图。

移动到想要的位置后,可以使用addLineToPoint:方法绘制一条从当前点到指定点线。

.使用 addArcWithCenter:radius:startAngle:endAngle:clockwise:

addCurveToPoint:controlPoint1:controlPoint2:和 addQuadCurveToPoint:controlPoint:方法

向路径添加弧线和曲线。您需要指定弧线和曲线的弧度。在默认坐标系中,以 x 轴为基准测量弧线角度

设定好路径之后,如果需要关闭路径,可以调用closePath方法

五、阴影

阴影是上下文的一个属性,通常首先使用 CGContextSaveGState 函数保存上下文状态,然后在上下文中使用 

CGContextSetShadow 函数打开阴影。最后填充需要使用效果的路径,阴影效果将被自动应用。

CGContextSetShadow 函数包含三个参数:上下文、一个表示阴影偏移量的 CGSize 和一个表示模糊度的浮点数。

六、渐变

使用 CGGradient 绘制渐变。使用渐变绘图之前需要对渐变进行配置。

首先需要定义使用的色彩空间(Color space)。色彩空间中对应的数值用于定义屏幕上实际可见的颜色。

iOS 的设备上绘图,可以通过 CGColorSpaceCreateDeviceRGB 函数使用依赖于设备的色彩空间。

创建双色渐变 0~1,

渐变开始保留一段纯色 0.2~0.8

创建三色渐变 0~0.5~1

使用 CGGradientCreateWithColorComponents 函数创建渐变

使用 CGContextDrawLinearGradient 函数绘制线性渐变 或者 

使用 CGContextDrawRadialGradient 函数绘制径向渐变

使用 CGColorSpaceRelease 函数释放色彩空间,

使用 CGGradientRelease 函数释放渐变。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  iOS 图形 绘图