画线的问题

二 、绘图
贝塞尔曲线&UIBezierPath
//创建画笔
_bezierPen = [UIBezierPath bezierPath];
//把设定画笔的起始位置
[_bezierPen moveToPoint:point];
//用画笔 把当前的点跟之前的点进行连线
[_bezierPen addLineToPoint:point];

//重新绘图
//setNeedsDisplay会自动调用drawRect:
[self setNeedsDisplay];
  • (void)drawRect:(CGRect)rect
    {
    // Drawing code
    NSLog(@"drawRect");

    //在drawRect:里面 画笔进行提交 绘图

    //设置画笔的颜色
    [[UIColor redColor] set];

    //设置画笔的宽度
    _bezierPen.lineWidth = 5;
    //告诉系统 画完了
    [_bezierPen stroke];

}

画图形

线
//设置起始点
[pen moveToPoint:CGPointMake(160, 150)];
//画一条线
[pen addLineToPoint:CGPointMake(200, 300)];

//修改起始点 在圆上 )
[pen moveToPoint:CGPointMake(210, 150)];
[pen addArcWithCenter:CGPointMake(160, 150) radius:50 startAngle:0 endAngle:2*M_PI clockwise:YES];

抛物线
//设置起始点
[pen moveToPoint:CGPointMake(30, 150)];
//第一个参数是 结束点
//第二个参数 是起始点切线和结束点切线的交点
//设置抛物线
[pen addQuadCurveToPoint:CGPointMake(200, 180) controlPoint:CGPointMake(100, 50)];

========================
CoreGraphics 核心绘图
//获取绘图上下文,可以理解为画布
CGContextRef context = UIGraphicsGetCurrentContext();
//设置线宽
CGContextSetLineWidth(context, 2);

//设置画线的颜色
CGContextSetStrokeColorWithColor(context, [UIColor redColor].CGColor);

//移动画笔到100,100
CGContextMoveToPoint(context, 100, 100);

//添加线段
CGContextAddLineToPoint(context, 200, 200);

//开始画
CGContextStrokePath(context);

你可能感兴趣的:(画线的问题)