点内圆angular矩形?

我有这个代码来绘制圆angular的矩形:

void ContextAddRoundedRect(CGContextRef ctx, CGRect rect, CGFloat radius) { CGFloat minX = CGRectGetMinX(rect); CGFloat maxX = CGRectGetMaxX(rect); CGFloat minY = CGRectGetMinY(rect); CGFloat maxY = CGRectGetMaxY(rect); CGContextMoveToPoint(ctx, minX + radius, minY); CGContextAddArcToPoint(ctx, maxX, minY, maxX, minY + radius, radius); CGContextAddArcToPoint(ctx, maxX, maxY, maxX - radius, maxY, radius); CGContextAddArcToPoint(ctx, minX, maxY, minX, maxY - radius, radius); CGContextAddArcToPoint(ctx, minX, minY, minX + radius, minY, radius); } 

考虑到圆angular ,我怎么知道给定的CGPoint是否在我的矩形内

不像这样直接将其构build到CGContextRef ,可以将其构build为UIBezierPath ,然后使用-[UIBezierPath containsPoint:]

当您准备好将path实际上渲染到上下文中时,您可以通过以下方式进行操作:

 CGContextAddPath(ctx, [myBezierPath CGPath]);