如何使用CAShapeLayer绘制内径和外径的完美甜甜圈?
或者更好地问:如何绘制一个带有洞的圆圈,以便笔划是两条单独的线条。一个在内圈,一个在外圈。到目前为止我所取得的成就是内圈和外圈的笔划是连接的,我想避免这种情况:
CGPathAddArc( _path, NULL, _center.x, _center.y, 100, 0, M_PI * 2.0f, NO);
CGPathRef temp = CGPathCreateCopyByStrokingPath(_path, &_transform, 10, kCGLineCapButt, kCGLineJoinMiter, 10);
_path = CGPathCreateMutableCopy(temp);
答案 0 :(得分:4)
您可以创建一个添加了两个圆(外半径和内半径)的路径。然后,您可以将形状图层的fillMode
设置为kCAFillRuleEvenOdd
。