Как я могу добавить 2 мили к viewRegion.span.latitudeDelta?

Как я могу добавить 2 мили к viewRegion.span.latitudeDelta? Как я могу рассчитать kTwoMiles?

MKCoordinateRegion viewRegion;
viewRegion.center = coordinateCentre;
viewRegion.span.latitudeDelta = latitudeMax - latitudeMin + kTwoMiles;  
viewRegion.span.longitudeDelta = longitudeMax - longitudeMin + kTwoMiles;

MKCoordinateRegion adjustedRegion = [mapView regionThatFits:viewRegion];
[mapView setRegion:adjustedRegion animated:YES];

2 ответа

Решение

Я решил добавить 2 мили только в широте Delta. Возможно regionThatFits изменит размер долготы Delta.

double kTwoMiles = (double)2/69; 
MKCoordinateRegion viewRegion;
viewRegion.center = coordinateCentre;
viewRegion.span.latitudeDelta = latitudeMax - latitudeMin + kTwoMiles;  
viewRegion.span.longitudeDelta = longitudeMax - longitudeMin;

MKCoordinateRegion adjustedRegion = [mapView regionThatFits:viewRegion];
[mapView setRegion:adjustedRegion animated:YES];`enter code here`

В основном это относительно сложно, потому что у каждой степени есть различная дельта.
На экваторе Земли у вас будет 111 км на градус, а на полюсах 0 км. ( http://en.wikipedia.org/wiki/Longitude)

Другие вопросы по тегам