adamwulf / ClippingBezier

ClippingBezier calculates intersection points, paths, and shapes between two UIBezierPaths
http://getlooseleaf.com/opensource/
MIT License
254 stars 34 forks source link

Incorrect difference with rounded rectangle #22

Open alexandre-g opened 3 years ago

alexandre-g commented 3 years ago

Hi there, thanks for open-sourcing the library.

I am trying to get a difference between a rounded rect and a stripe running through it but it ends up looking like so: image

If I use a normal rect, all is well - above I am expecting the same result but with the blue rectangle corners rounded image

Is this a limitation or a bug, and any way I can work around this?

UIBezierPath* path1 = [UIBezierPath bezierPathWithRect:CGRectMake(10, 10, 200, 100)];
UIBezierPath* path2 = [UIBezierPath bezierPathWithRect:CGRectMake(0, 40, 300, 30)];
NSArray<UIBezierPath*>* result = [path1 differenceWithPath:path2];
[[UIColor blueColor] setFill];
for (UIBezierPath* path in result) {
    [path fill];
}

Thanks

kunass2 commented 2 years ago

I experience the same issue described here