码迷,mamicode.com
首页 > 移动开发 > 详细

ios绘图

时间:2015-06-30 18:21:10      阅读:221      评论:0      收藏:0      [点我收藏+]

标签:绘图   ios   图形绘制   core image   quartz 2d   

#import "LCSView.h"


@implementation LCSView


////绘图

- (void)drawRect:(CGRect)rect

{

    

#if 0

    //图形上下文对象

    CGContextRef context = UIGraphicsGetCurrentContext();

    

    //路径

    CGMutablePathRef path = CGPathCreateMutable();

    CGPathMoveToPoint(path, nil, 20, 0);//移动到指定的位置

    CGPathAddLineToPoint(path, nil, 20, 300);//绘制直线

    CGPathAddLineToPoint(path, nil, 100, 400);// 绘制另一直线

    CGPathAddLineToPoint(path, nil, 100, 90);//第三条线

    CGPathAddLineToPoint(path, nil, 20, 0);//第四条线

    

    //添加路径到图形上下文

    CGContextAddPath(context, path);

    

    //设置图形上下文属性

    CGContextSetRGBStrokeColor(context, 1.0, 0, 0, 1);//设置笔触颜色

    CGContextSetRGBFillColor(context, 0, 1.0, 0, 1);//设置填充颜色

    CGContextSetLineWidth(context, 3.0);//设置线条宽度

    CGContextSetLineCap(context, kCGLineCapButt);//设置顶点样式

    CGContextSetLineJoin(context, kCGLineJoinRound);//设置链接点样式

    

    CGFloat lengths[2] = {10,10};

    CGContextSetLineDash(context, 0, lengths, 2);//设置线的样式,虚线的间隔

    

    CGColorRef color = [UIColor blueColor].CGColor;//虚线之间连接线的颜色

    CGContextSetShadowWithColor(context, CGSizeMake(2, 2), 0.8, color);

    

    //绘制图像到指定图形上下文

    /*

     kCGPathFill:只有填充(非零缠绕数填充),不绘制边框

     kCGPathStroke:只有边框

     kCGPathFillStroke:既有边框又有填充

     kCGPathEOFillStroke:奇偶填充并绘制边框

     */

    

    CGContextDrawPath(context, kCGPathFillStroke);//最后一个参数是填充类型

    

    //释放对象

    CGPathRelease(path);

技术分享




#elif 0

//简化绘图方式

    CGContextRef context = UIGraphicsGetCurrentContext();

    

    CGContextMoveToPoint(context, 20, 50);

    CGContextAddLineToPoint(context, 20, 100);

    CGContextAddLineToPoint(context, 300, 100);

    

    CGContextSetLineWidth(context, 3.0);//设置线条宽度


    CGContextClosePath(context);//路径封闭

    

    [[UIColor redColor] setStroke];//边框颜色

    [[UIColor greenColor] setFill];//填充颜色

    

    CGContextDrawPath(context, kCGPathFillStroke);

    

#elif 0

    

    //画矩形

    CGContextRef context = UIGraphicsGetCurrentContext();

    

    CGRect myRect = CGRectMake(20, 50, 280.0, 50.0);//矩形坐标

    

    CGContextAddRect(context, myRect);//添加矩形对象

    

    [[UIColor redColor] set];//设置填充颜色

    

    CGContextDrawPath(context, kCGPathFillStroke);//绘制

    

   // UIRectFrame(myRect);//只画边框



技术分享

    

    

#elif 0

    //画圆形

    CGContextRef context = UIGraphicsGetCurrentContext();

    

    CGRect myRect = CGRectMake(50, 50, 200, 200);

    

    CGContextAddEllipseInRect(context, myRect);//添加圆形对象

    

    [[UIColor purpleColor] set];//填充颜色

    

    CGContextDrawPath(context, kCGPathFillStroke);



技术分享


    

#elif 1

    

    CGContextRef context = UIGraphicsGetCurrentContext();

    

    CGContextAddArc(context, 160, 160, 100, 0, M_PI, 1);//添加弧形

    

    [[UIColor redColor] set];//填充颜色

    

    CGContextDrawPath(context, kCGPathFillStroke);//绘制



技术分享

    

    

#endif


版权声明:本文为博主原创文章,未经博主允许不得转载。

ios绘图

标签:绘图   ios   图形绘制   core image   quartz 2d   

原文地址:http://blog.csdn.net/lu_ca/article/details/46697937

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!