2012-06-14 89 views
1

我使用CGPathCreateMutable()和CGPathAddArcToPoint繪製自定義形狀。正如預期的那樣,當我關閉並填充自己的路徑時,我得到了我剛畫出的形狀。然而,我期望做的是填補我剛剛繪製的路徑的反面。也就是說,如果我繪製了一條圓形路徑,我想填充除了我剛畫出的這個圓的所有東西。iOS Core Graphics填充路徑的反轉?

有什麼辦法可以做一個逆填充?或者,如果可能的話,如果我可以填充2條路徑,另一個解決方案是?這樣我就可以創建我的邊界框的矩形路徑,然後填充它和我的自定義路徑。

+1

看起來像[UIBezierPath Subtract Path](http://stackoverflow.com/questions/8859285/uibezierpath-subtract-path) – user1118321

回答

1

如果您繪製路徑並使用偶數奇數(EO)填充來填充它們,那麼應該得到您想要的(填充內部部分)。

默認填補OSX(和iPhone)是非零卷(NZW)填寫
你可以使用非零卷也可能得到同樣的效果,通過改變不同部分的繞組因此(在「順時針」參數),但使用奇數會更簡單。