//
// MyDraw.m
// 绘图
#import "MyDraw.h"
@implementation MyDraw
//Quartz2D 是一个二维绘图引擎
//自己定义UI控件
//裁剪图片
- (void)drawRect:(CGRect)rect {
draw4Rect();
//drawTriangle();
}
void draw4Rect()
{
//获得图形上下文
CGContextRef ctx = UIGraphicsGetCurrentContext();
//绘图形
CGContextAddRect(ctx, CGRectMake(10, 10, 100, 100));
//绘制图形
//CGContextStrokePath(ctx);
//设置主要的颜色
CGContextSetRGBFillColor(ctx, 0, 0, 1, 1);
//结合UI 能够更简单的设置颜色
[[UIColor redColor]setFill];
//set :同一时候设置实心 空心颜色
//setStroke 设置空心颜色
// setFill 设置实心颜色
[[UIColor whiteColor]set];
//实的图形
CGContextFillPath(ctx);
}
void drawTriangle()
{
// Drawing code
//1.获得图形上下文
CGContextRef ctx = UIGraphicsGetCurrentContext();
//设置头尾部样式
CGContextSetLineCap(ctx, kCGLineCapRound);
//2.拼接图形
CGContextMoveToPoint(ctx, 10, 10);
//加入一条线段到
CGContextAddLineToPoint(ctx, 100, 100);
//设置转折点的样式
//CGContextSetLineJoin(ctx, kCGLineJoinBevel);
CGContextSetLineJoin(ctx, kCGLineJoinRound);
CGContextMoveToPoint(ctx, 200, 190);
CGContextAddLineToPoint(ctx, 150, 40);
CGContextAddLineToPoint(ctx, 110, 60);
//设置线条的宽度
CGContextSetLineWidth(ctx, 10);
//设置颜色
CGContextSetRGBStrokeColor(ctx, 1, 0, 0, 1);
//CGContextAddLineToPoint(ctx, 10, 10);
//连接起点和终点
//CGContextClosePath(ctx);
//CGContextMoveToPoint(ctx, 20, 20);
//3.渲染显示到view 上面
//以空心的形式画出来
CGContextStrokePath(ctx);//仅仅记录当前的颜色状态 我们要是向让两根线条不一样
//那么我们须要渲染两次
//分开几个图形 多渲染几次就能够了
}
//设置颜色
@end