私は単純な塗りつぶし、同じ半径の2つの交差する円、および交差点だけを塗りつぶすことを試みています.以下は私が試したものです
- (void)drawRect:(CGRect)rect
{
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetLineWidth(context, 1.0);
CGContextSetFillColorWithColor(context, [UIColor redColor].CGColor);
CGContextSetStrokeColorWithColor(context, [UIColor yellowColor].CGColor);
// Draw first circle
CGContextAddArc(context, 150, 150, 50, 0, 2 * M_PI, 1);
CGContextStrokePath(context);
// Draw second circle
CGContextAddArc(context, 200, 150, 50, 0, 2 * M_PI, 1);
CGContextEOClip(context);
CGContextFillPath(context);
}
私のコードは、コンテキストで 2 番目の円をレンダリングしません。ここフォーラムで CGContextClip に関連する多くの質問をしましたが、それらのほとんどはサンプルで CGPath を使用しています。クリッピングできるのは CGpaths のみですか? 任意の提案やアイデアをいただければ幸いです。
ありがとうございました