美文网首页
Quartz2D(二)之绘图方式

Quartz2D(二)之绘图方式

作者: forvert | 来源:发表于2016-04-01 02:19 被阅读47次

绘图方式

  • 方式一:C语言的方式

    - (void)drawRect:(CGRect)rect
    {
        CGContextRef ctx = UIGraphicsGetCurrentContext();
        CGContextMoveToPoint(ctx,50, 50);
        CGContextAddLineToPoint(ctx, 110, 120);
        CGContextAddLineToPoint(ctx, 150, 40);
        CGContextSetLineWidth(ctx, 10);
        CGContextSetLineCap(ctx, 1);
        CGContextSetLineJoin(ctx, 1);
    
        CGContextStrokePath(ctx);
    }
    
  • 方式二:C语言的方式之path

    - (void)drawRect:(CGRect)rect
    {
        CGContextRef ctx = UIGraphicsGetCurrentContext();
    
        // 获取路径
        CGMutablePathRef path = CGPathCreateMutable();
        CGPathMoveToPoint(path, NULL, 50, 50);
        CGPathAddLineToPoint(path, NULL, 110, 120);
        // 将路径添加到上下文中
        CGContextAddPath(ctx, path);
    
        CGContextStrokePath(ctx)
    }
    
  • 方式三:BezierPath

    - (void)drawRect:(CGRect)rect
    {
        CGContextRef ctx = UIGraphicsGetCurrentContext();
    
        UIBezierPath *path = [[UIBezierPath alloc]init];
        [path moveToPoint:CGPointMake(50, 50)];
        [path addLineToPoint:CGPointMake(110, 120)];
        CGContextAddPath(ctx, path.CGPath);
    
        CGContextStrokePath(ctx);
    }
    
  • 方式四:C(CGPath) + OC(UIBezierPath)

    - (void)drawRect:(CGRect)rect
    {
        CGContextRef ctx = UIGraphicsGetCurrentContext();
    
        CGMutablePathRef path = CGPathCreateMutable();
        CGPathMoveToPoint(path, NULL, 50, 50);
        CGPathAddLineToPoint(path, NULL, 110, 120);
    
        // 把c的路径CGPath转成oc的路径bezierPath
        UIBezierPath *path1 = [UIBezierPath bezierPathWithCGPath:path];
        [path1 addLineToPoint:CGPointMake(80, 80)];
    
        // 把路径添加到上下文中
        CGContextAddPath(ctx, path1.CGPath);
    
        CGContextStrokePath(ctx);
    
    }
    
  • 方式五:纯OC实现

    - (void)drawRect:(CGRect)rect
    {
        UIBezierPath *path = [UIBezierPath bezierPath];
        [path moveToPoint:CGPointMake(50, 50)];
        [path addLineToPoint:CGPointMake(110, 120)];
        [path stroke];
    }
    

相关文章

  • Quartz2D(二)之绘图方式

    绘图方式 方式一:C语言的方式- (void)drawRect:(CGRect)rect{ CGContex...

  • Quartz2D--贝塞尔路径去画图

    简述: 1、Quartz2D是什么Quartz2D是二维绘图引擎,同时支持IOS和Mac 2、Quartz2D能做...

  • iOS之Quartz2D

    什么是Quartz2D Quartz2D是⼀个二维绘图引擎,同时支持iOS和Mac系统Quartz2D的API是纯...

  • Quartz2D以及drawRect的重绘机制

    一、什么是Quartz2D Quartz2D是⼀个二维绘图引擎,同时支持iOS和Mac系统Quartz2D的API...

  • Quartz2D简单的实战举例

    一、quartz2D介绍 二维绘图引擎,支持iOS与Mac系统。 二、quartz2D使用场景: 功能很多,着重说...

  • Quartz2D简单用法

    Quartz2D 知识 Quartz2D是一个二维绘图引擎,同时支持ios和Mac系统 Quartz2D能完成的工...

  • Quartz2D

    1> Quartz2D简介 * PPT简介 什么是Quartz2D?二维的绘图引擎 什么是二维?平面 什么是引擎?...

  • Quartz2D—简单介绍(1)

    CoreGraphics—Quartz2D简单介绍 一、什么是Quartz2D Quartz 2D是一个二维绘图引...

  • iOS开发笔记之绘图

    前言 绘图涉及到的知识点: 绘图的方式: 1、通过Quartz2D框架,自定义view,实现view的drawRe...

  • CoreGraphics框架简介

    绘图引擎 Quartz2D是二维图形绘制引擎,提供不同的绘图对象,可以在不同的画布上进行绘图。 画布 Graphi...

网友评论

      本文标题:Quartz2D(二)之绘图方式

      本文链接:https://www.haomeiwen.com/subject/ozfylttx.html