0

Я хочу, чтобы получить текущее местоположение CGPoint values.I может получить текущие значения местоположения, от того, я стараюсь, чтобы получить его, но его не давая правильные точки началаКоординаты местоположения, дающие неправильные значения CGPoint?

-(void)addCircleToUserLocation{ 
    CLLocationCoordinate2D center = CLLocationCoordinate2DMake(_locationManager.location.coordinate.latitude, _locationManager.location.coordinate.longitude); 
    MKCoordinateRegion region = MKCoordinateRegionMakeWithDistance(center, 50, 50); 
    CGRect rect = [mapView convertRegion:region toRectToView:mapView]; 
// CGRect rect; 
// CGPoint point=[mapView convertCoordinate:center toPointToView:mapView]; 
// rect.origin.x=point.x; 
// rect.origin.y=point.y; 
// rect.size.width=100; 
// rect.size.height=100; 
    NSLog(@"%f,%f",rect.origin.x,rect.origin.y); 

} 

консоли: х-700.736190, y- 329.035629

Здесь я хочу показать местоположение пользователя, добавив следующую строку

mapView.showsUserLocation = YES; 
     mapView.userTrackingMode = MKUserTrackingModeFollow; 

добавление аннотаций на MAP

#define ARC4RANDOM_MAX  0x10000000000 
- (void)createAnnotations:(NSMutableArray *)arrayList 
{ 
    PinAnnotation* pinAnnotation; 
    [mapView removeAnnotations:mapView.annotations]; 
    CLLocationCoordinate2D coordinates; 
    for (int i=0; i<=[arrayList count]; i++) { 
     CLLocationCoordinate2D cor; 
     double latDelta = ((double)arc4random()/ARC4RANDOM_MAX); 
     double lonDelta = ((double)arc4random()/ARC4RANDOM_MAX); 
     cor.latitude=[latitude doubleValue]+latDelta; 
     cor.longitude=[longitude doubleValue]+lonDelta; 
     pinAnnotation = [[PinAnnotation alloc] init]; 
     pinAnnotation.tag=i; 
     pinAnnotation.coordinate = cor; 
     if (i==[arrayList count]-1) { 
      coordinates=cor; 
     } 
     [mapView addAnnotation:pinAnnotation]; 
     ; 
    } 
    //[self setRoot:&coordinates]; 

    //[self zoomMapViewToFitAnnotations:mapView animated:YES]; 
} 

Я добавляю булавку вокруг текущего местоположения случайным образом. Я хочу получить CGPoint текущих значений местоположения.

+0

Пожалуйста, убедитесь, что ваша карта была полностью загружена. Это означает, что если вы пытаетесь получить точку в Viewdidload(), пожалуйста, используйте ее в ViewwillAppear() –

ответ

0

Try ниже код:

CLLocationCoordinate2D center = CLLocationCoordinate2DMake(_locationManager.location.coordinate.latitude, _locationManager.location.coordinate.longitude); 

CGPoint Centerpoint = [mapView convertCoordinate:center toPointToView: mapView]; 
+0

, который также возвращает неправильные значения, x-700.736190, y-329.035629 – karthikeyan

 Смежные вопросы

  • Нет связанных вопросов^_^