我在Core Graphics中創建了一個繪製心臟形狀的路徑,但是,爲此,我創建了一個菱形圖形和2個圓圈,此圖像看起來很棒,但我只想知道是否可以從此CGPath/CGContext獲取「實際」心臟形狀。獲取僅合併Core圖形路徑的外部路徑
這裏是畫一個心臟(有興趣的人士)的代碼,這種形狀是一個我想創建作爲和尖三角形心臟「拱」之間的連接都順利:
CGPathAddEllipseInRect(heartPath, NULL, CGRectMake(0, 0, 20, 20));
CGPathAddEllipseInRect(heartPath, NULL, CGRectMake(20, 0, 20, 20));
CGPathMoveToPoint(heartPath, NULL, 37.5, 16.5);
CGPathAddLineToPoint(heartPath, NULL, 37.5, 16.5);
CGPathAddLineToPoint(heartPath, NULL, 20, 37.5);
CGPathAddLineToPoint(heartPath, NULL, 2.5, 16.5);
CGPathAddLineToPoint(heartPath, NULL, 20, 10);
CGPathCloseSubpath(heartPath);
而這種代碼:
CGPathAddArc(heartPath, NULL, 10, 10, 10, M_PI, 0, false); // Left hump
CGPathAddArc(heartPath, NULL, 30, 10, 10, M_PI, 0, false); // Right hump
CGPathAddLineToPoint(heartPath, NULL, 20, 37.5); // Pointy end
CGPathCloseSubpath(heartPath);
這是否可能且易於實現?如果是這樣如何?
在此先感謝!
是的,最初這是我試圖做的事(儘管'CGPathAddArc'讓我感到困惑!我唯一的問題是,這會在心臟上創建兩個半圓而不是使它看起來完全圓整 - 更新代碼以顯示差異 –