Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save StuartFarmer/d398d66ebe64968e767e to your computer and use it in GitHub Desktop.
Save StuartFarmer/d398d66ebe64968e767e to your computer and use it in GitHub Desktop.
The following converts the coordinate to a CGPoint in the polygon view and uses CGPathContainsPoint to test if that point is in the path (which may be non-rectangular)
CLLocationCoordinate2D mapCoordinate = ...; //user location or annot coord
MKMapPoint mapPoint = MKMapPointForCoordinate(mapCoordinate);
MKPolygonView *polygonView =
(MKPolygonView *)[mapView viewForOverlay:polygonOverlay];
CGPoint polygonViewPoint = [polygonView pointForMapPoint:mapPoint];
BOOL mapCoordinateIsInPolygon =
CGPathContainsPoint(polygonView.path, NULL, polygonViewPoint, NO);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment