点内圆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]);