I have a set of CGPoints which make up a polygon shape, how can I detect if a single CGPoint is inside or outside of the polygon?
Say, the shape was a triangle and the CGPoint was moving hoizontally, how could I detect when it crossed the triangle line?
I can use CGRectContainsPoint
when the shape is a regular 4-sided shape but I can't see how I would do it with an odd shape.
You can create a CG(Mutable)PathRef
(or a UIBezierPath
that wraps a CGPathRef
) from your points and use the CGPathContainsPoint
function to check if a point is inside that path. If you use UIBezierPath
, you could also use the containsPoint:
method.