移动该特定物体后获得Bezier曲线的点

时间:2011-10-07 12:53:49

标签: objective-c ios cocoa-touch ipad bezier

我有一条曲线,使用贝塞尔曲线绘制。现在我正在移动这个特定的对象并将其放在另一个位置。如何获得该对象曲线的新点。

- (void)drawRect:(CGRect)rect
{

    [myPath moveToPoint:CGPointMake(100, 100)];
    [myPath addLineToPoint:CGPointMake(100, 400)];
    [myPath addLineToPoint:CGPointMake(400, 400)];
    [myPath addLineToPoint:CGPointMake(400, 100)];
    [myPath addLineToPoint:CGPointMake(100, 100)];


    [myPath closePath];
    [[UIColor redColor] setStroke];

    [myPath strokeWithBlendMode:kCGBlendModeNormal alpha:1.0];
    [self setNeedsDisplay];

}

这是我绘制矩形的代码。现在通过使用触摸我移动矩形,移动后如何获得矩形的新点。在这种特殊情况下我使用矩形但可能有一个不定点的多边形,在这种情况下我怎么能得到那些分。

1 个答案:

答案 0 :(得分:1)

对于简单的线性变换,您只需将dxdy应用于曲线的每个控制点(也就是将x和y的变化添加到为曲线定义的所有点)