我在我的mapview
上添加了一个MKCircle
覆盖层,我想知道一个点(在屏幕上的点击)是否在圆内。这是我的代码:
- (BOOL)pointInsideOverlay:(CLLocationCoordinate2D )tapPoint overlay:(id<MKOverlay>)overlay {
BOOL isInside = FALSE;
MKPolygonView *polygonView = (MKPolygonView *)[self.mapView viewForOverlay:overlay];
MKMapPoint mapPoint = MKMapPointForCoordinate(tapPoint);
CGPoint polygonViewPoint = [polygonView pointForMapPoint:mapPoint];
BOOL mapCoordinateIsInPolygon = CGPathContainsPoint(polygonView.path, NULL, polygonViewPoint, NO);
if (mapCoordinateIsInPolygon) {
isInside = TRUE;
}
return isInside;
}
viewForOverlay
,pointForMapPoint
和path
已经过时了。这是问题所在吗?
谢谢。