How to know whether MKMapView visibleMapRect contains a Coordinate?

ios, ios5, mapkit, mkmapview

Solution

The fastest way is to use the inbuilt Apple functions which will make this sort of thing super quick!

if(MKMapRectContainsPoint(mapView.visibleMapRect, MKMapPointForCoordinate(coordinate)))
{
    //Do stuff
}

Where coordinate is your CLLocation2D.

This will be much faster than working out coordinates with a bulk if statement. Reason is that Apple use a Quadtree and can do fast lookups for you.

Problem

If I have a MKMapView and a CLLocationCoordinate2D how do you test whether the map's visible area contains the coordinate?

Original source