iOS将点添加到二次曲线和操纵

时间:2014-03-31 14:59:15

标签: ios uibezierpath

我从一条直线开始,如下图所示。 enter image description here

我需要用户能够用他们的手指实时拖动和操纵这条线。所以他们最终会得到一系列或曲线如下:

enter image description here

使用一条曲线很简单,如下面的代码所示。

    - (void) touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event 
{
    controlPoint = [[touches anyObject] locationInView:self];
    CGRect controlRect = CGRectMake(controlPoint.x - 50.0, controlPoint.y - 50.0, 100.0, 100.0);
    [self setNeedsDisplayInRect:controlRect];
}

- (void)drawRect:(CGRect)rect
{
    CGContextRef context = UIGraphicsGetCurrentContext();
    CGContextSetStrokeColorWithColor(context, [UIColor blackColor].CGColor);
    CGContextSetLineWidth(context, 1.0);

    CGContextMoveToPoint(context, 0 , screenHeight/2 + gapDistance);
    CGContextAddQuadCurveToPoint(context, controlPoint.x + gapDistance, controlPoint.y + gapDistance, 100, screenHeight/2 + gapDistance);
        CGContextStrokePath(context);
}

我的问题是,如何使用多条曲线?如果用户需要,我还需要能够为现有曲线添加更小的曲线。

0 个答案:

没有答案