Wie schneidet man eine Ellipse? - IOS, Kaspellayer

Ich zeichne Puzzle mit CAShapeLayer.Zeichnen einer Linie, die einfach ist und ich tat es auch. Aber jetzt möchte ich Ellipse mit dem Schneiden eines Teils dieser Ellipse zeichnen.Now meine Frage ist, wie kann ich Ellipse mit CGPathAddEllipseInRect schneiden? Hier ist mein Code:

CAShapeLayer *shapeLayer = [CAShapeLayer layer];
[shapeLayer setBounds:self.bounds];
[shapeLayer setPosition:self.center];
[shapeLayer setFillColor:[[UIColor clearColor] CGColor]];
[shapeLayer setStrokeColor:[[UIColor blackColor] CGColor]];
[shapeLayer setLineWidth:3.0f];

// Setup the path
CGMutablePathRef path = CGPathCreateMutable();
CGPathMoveToPoint(path, NULL, 10, 10);
CGPathAddLineToPoint(path, NULL, 75,10);
CGPathAddEllipseInRect(path, NULL, CGRectMake(75, 10, 50, 20));
[shapeLayer setPath:path];
CGPathRelease(path);

[[self layer] addSublayer:shapeLayer];

Tipp wird geschätzt.

Antworten:

1 für die Antwort № 1

Benutze es nicht CGPathAddEllipseInRectStattdessen müssen Sie die Start- und Endpositionen berechnen und verwenden CGPathAddArcToPoint oder, wahrscheinlicher, CGPathAddQuadCurveToPoint.


Speisekarte