Is there any way to get center coordinate of a set of CLLocationsCoordinate2D in iOS?
Hmm... it depends how you define the centre of the points. Does it depend on the distribution etc...
An easy way to do it is as follows...
//find rect that encloses all coords
float maxLat = -200;
float maxLong = -200;
float minLat = MAXFLOAT;
float minLong = MAXFLOAT;
for (int i=0 ; i<[locations count] ; i++) {
CLLocationCoordinate2D location = [locations objectAtIndex:i];
if (location.latitude < minLat) {
minLat = location.latitude;
}
if (location.longitude < minLong) {
minLong = location.longitude;
}
if (location.latitude > maxLat) {
maxLat = location.latitude;
}
if (location.longitude > maxLong) {
maxLong = location.longitude;
}
}
//Center point
CLLocationCoordinate2D center = CLLocationCoordinate2DMake((maxLat + minLat) * 0.5, (maxLong + minLong) * 0.5);
This will give the center of the rect covering all the points. However it does not take the spread into account.
i.e.
. = point
X = centre
..... X .
EDIT
Corrected some of the maths.