現在の場所の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);
}
コンソール: x-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を取得したいです。