Я пытаюсь получить координату верхнего левого угла (North East
в форме CLLocationCoordinate2D
) из массива MKPointAnnotation
. Моя координатная геометрия немного слаба. Я написал два метода, но теперь я запутался, какой из них правильный. Это может быть повторный вопрос (я не смог найти конкретный вопрос), любая помощь будет признательна.
1-й код
- (CLLocationCoordinate2D)topLeftCoordinate {
double minLon = 180;
double minLat = 90;
for (MKPointAnnotation *annotation in annotations) {
MKPointAnnotation *coordinate = annotation.coordinate;
minLat = MIN(coordinate.latitude, minLat);
minLon = MIN(coordinate.longitude, minLon);
}
return CLLocationCoordinate2DMake(minLat, minLon);
}
2-й Код
- (CLLocationCoordinate2D)topLeftCoordinate {
double maxLat = -90;
double minLon = 180;
for (MKPointAnnotation *annotation in annotations) {
MKPointAnnotation *coordinate = annotation.coordinate;
maxLat = MAX(coordinate.latitude, maxLat);
minLon = MIN(coordinate.longitude, minLon);
}
return CLLocationCoordinate2DMake(maxLat, minLon);
}
Представьте, что у нас есть эти две координаты (широта, длинна) -> (-34, -54) и (34; -54), поэтому с 1-й код точка будет (-34; -54) с 2-й код метод вернет (34, -54), какой из них является правильным topLeftCoordinate? Я считаю (-34; -54) произведенным 1st Code правильно. Пожалуйста, поправьте меня, если я ошибаюсь.