Jak wygenerować CGPoint-Array z UIBezierPath (do obiektu z przesuwem dotykowym wzdłuż podanej ścieżki) [duplikat]

To pytanie ma już tutaj odpowiedź:

Przeciągnij UIView wokół Shape Zawiera CGMutablePaths 1 odpowiedź

Mam ścieżkę UIBezierPath (zakrzywioną jak „8”, zawierającą tylko 4 punkty) i muszę z niej zrobić jakiś rodzaj macierzy CGPoint. Jakieś pomysły? thanx!

edytować:

Mam w ten sposób zainicjalizowany mój Bezier

-(void) initBezier
{
    theBezierPath = [UIBezierPath bezierPath];    
    [theBezierPath moveToPoint:P(211.00, 31.00)];
    [theBezierPath addCurveToPoint:P(870.00, 191.00) controlPoint1:P(432.00, -11.00) controlPoint2:P(593.00, 209.00)];
    [theBezierPath addCurveToPoint:P(731.00, 28.00) controlPoint1:P(1061.95, 178.53) controlPoint2:P(944.69, 5.78)];
    [theBezierPath addCurveToPoint:P(189.00, 190.00) controlPoint1:P(529.00, 49.00) controlPoint2:P(450.00, 189.00)];
    [theBezierPath addCurveToPoint:P(211.00, 31.00) controlPoint1:P(-33.01, 190.85) controlPoint2:P(71.00, 37.00)];
}

i animuję na nim obiekt

anim = [CAKeyframeAnimation animationWithKeyPath:@"emitterPosition"];
anim.path = theBezierPath.CGPath;
anim.calculationMode = kCAAnimationCubicPaced;
anim.repeatCount = HUGE_VALF;
anim.duration = tme;

Chcę animować obiekt na ścieżce piksel po pikselu (za pomocą pozycji dotykowej). Chcę, aby obiekt „przyciągał” daną współrzędną dotyku do najbliższego punktu na krzywej, aby dotknął obiektu wzdłuż ścieżki.