我正在寻找一些算法或某种方式,甚至是一些可以让我从 CGPathRef 生成矩形集的参考。
考虑以下情况:
在路径中添加一个矩形
CGMutablePathRef pathref = CGPathCreateMutable(); CGPathAddRect(pathref, NULL, CGRectMake(10, 10, 200, 300)); CGPathCloseSubpath(pathref);
在上面的例子中,我们只有一个矩形存储在路径中,所以当我们填充它时,只有一个矩形被绘制,因此算法返回 1 个矩形。
将圆/椭圆添加到路径
CGMutablePathRef pathref = CGPathCreateMutable(); CGPathAddEllipseInRect(pathref, NULL, CGRectMake(10, 10, 500, 500)); CGPathCloseSubpath(pathref);
在这种情况下,我们将圆存储在路径中,因此当我们绘制它时,我们可以想象很多可重复对象被填充填充,因此算法返回 n 个矩形。
更复杂的路径
CGMutablePathRef pathref = CGPathCreateMutable();
CGPathAddRect(pathref, NULL, CGRectMake(10, 10, 200, 300));
CGPathAddEllipseInRect(pathref, NULL, CGRectMake(10, 10, 500, 500));
CGPathCloseSubpath(pathref);
等等。
在上面的问题中,我主要对填充感兴趣,可能以后我也会有中风的工作。希望与填充类似的方法应该有效。
有人可以指导我如何实现这一目标吗?