8
मेरे पास CGPath
(दो सर्कल वाले पॉली) CAShapeLayer
पर किए गए हैं।CGPath से CGPath को ट्रिम/घटाएं?
क्या मैं इस तरह के पथों को ट्रिम/घटा सकता हूं?
मेरे पास CGPath
(दो सर्कल वाले पॉली) CAShapeLayer
पर किए गए हैं।CGPath से CGPath को ट्रिम/घटाएं?
क्या मैं इस तरह के पथों को ट्रिम/घटा सकता हूं?
गणित कर के बजाय, परिणाम kCGBlendModeClear
का उपयोग कर समय ड्राइंग पर प्राप्त किया जा सकता है।
// Create the poly.
CGContextBeginPath(context);
CGContextMoveToPoint (context, a_.x, a_.y);
CGContextAddLineToPoint (context, b_.x, b_.y);
CGContextAddLineToPoint (context, c_.x, c_.y);
CGContextAddLineToPoint (context, d_.x, d_.y);
CGContextClosePath(context);
// Draw with the desired color.
CGContextSetFillColorWithColor(context, self.color.CGColor);
CGContextFillPath(context);
// Create a circle.
CGContextBeginPath(context);
CGContextAddEllipseInRect(context, (CGRect){
b_.x - self.radius,
b_.y - self.radius,
self.radius * 2.0,
self.radius * 2.0 });
CGContextClosePath(context);
// Draw with Clear (!) blend mode.
CGContextSetBlendMode(context, kCGBlendModeClear);
CGContextSetFillColorWithColor(context, self.color.CGColor);
CGContextFillPath(context);
संक्षिप्त उत्तर: नहीं। लंबा उत्तर: आप इसे काफी कठिन बना सकते हैं। –
धन्यवाद :) मैं इसे फॉलबैक के रूप में लेयर मास्क जोड़कर कर सकता हूं, लेकिन मैं रास्टरराइजेशन पास को दबा देना चाहता था, गणित पसंद करूंगा। ड्राइंग – Geri
+1 धन्यवाद। यह डिजाइन प्रक्रिया के दौरान किया गया था, लेकिन इस सवाल के लिए एकदम सही फिट था। :) – Norbert