Как получить масштаб, значения широты / долготы и центр карты при увеличении / уменьшении? - PullRequest
1 голос
/ 19 августа 2010

Я реализую приложение на основе MapKit, используя iPhone SDK. Теперь мне просто нужен метод, чтобы получить событие, когда мы перетаскиваем, увеличиваем или уменьшаем масштаб карты. Метод такой:

-(void)mapView:(MKMapView *)mapView regionDidChangeAnimated:(BOOL)animated

Теперь мне нужно получить следующее:

  • Значения широты и долготы в верхнем левом и нижнем правом углу.
  • Центр карты.
  • Уровень масштабирования.

Пожалуйста, дайте мне предложения по решению вышеуказанных 3 вариантов использования.

Ответы [ 2 ]

1 голос
/ 19 августа 2010

Используя следующий код, я получил ответ, чтобы получить значения центра, вершины и нижнего правого значения широты и долготы вида карты. Мне нужно найти решение и для вопроса с ответом (т.е. уровень зоопарка на карте). Если у вас, ребята, есть идея, чтобы получить уровень масштабирования, пожалуйста, напишите мне. Заранее спасибо.

- (void)mapView:(MKMapView *)mapView regionDidChangeAnimated:(BOOL)animated
{

       double centerLatitude= mapView.centerCoordinate.latitude;
       double centerLongitude= mapView.centerCoordinate.longitude;

       double topLeft Latitude= (mapView.centerCoordinate.latitude)+(mapView.region.span.latitudeDelta)/2;

       double topLeft Longitude= (mapView.centerCoordinate.latitude)-(mapView.region.span.longitudedeDelta)/2;


       double bottom Right Latitude= (mapView.centerCoordinate.latitude)-(mapView.region.span.latitudeDelta)/2;

       double bottom Right Longitude= (mapView.centerCoordinate.latitude)+(mapView.region.span.longitudedeDelta)/2;


}
0 голосов
/ 30 июня 2011
-(void)mapView:(MKMapView *)mapView regionWillChangeAnimated:(BOOL)animated{
        MKZoomScale currentZoomScale = mapView.bounds.size.width / mapView.visibleMapRect.size.width;
        NSLog(@"current zoom scale is %f",currentZoomScale);
}

Чтобы получить текущий уровень увеличения, вы можете использовать getZoomLevel метод mapview как это:

NSLog(@"i am class regiondidchange   %f", [mapView getZoomLevel]);

как я могу влиять на радиус окружности на карте.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...