我目前正在使用类似于显示by Rob's answer here的方法绘制角度渐变。我已经为CGContext添加了一个扩展来绘制一个角度渐变,并希望它能够处理剪切路径,这样调用者可以像fillPath(using:)
这样的方法一样对待它。
我尝试在CGContext上使用func pathContains(CGPoint, mode: CGPathDrawingMode)
,在上下文返回的CGPath上使用func contains(CGPoint, using: CGPathFillRule, transform: CGAffineTransform)
。
这两个似乎都没有使用剪切路径,因此我的绘图超出剪裁区域。
有没有办法让路径已被剪切或当前剪切路径的副本,所以我也可以检查该路径中是否也包含像素?
答案 0 :(得分:0)
您应该能够检查该点是否在未剪辑路径中,并检查该点是否在剪切路径内。剪切路径是剪切路径和路径的交点,因此一个点位于剪切路径内,只有它在未剪切路径内和剪切路径内。