Soy nuevo en la programación de iPhone. Quiero escribir una aplicación usando CoreLocation y Mapkit API. Pude encontrar y agregar pines para la ubicación actual. Ahora, estoy tratando de dibujar un círculo alrededor de la ubicación, pero no estoy seguro de cómo hacerlo. Agradecería cualquier sugerencia, gracias.
[iPhone] dibuja el círculo alrededor de una ubicación en el mapa de google
fuente por usuario Sinh Nguyen
En otros idiomas...
Pensé que tengo la misma pregunta contigo. Y encontré esta respuesta a las preguntas, me ayudó mucho, espero que esto sea de ayuda para usted. Dibujando un punto, línea, polígono en la parte superior de MKMapview
Sé que esto era originalmente etiquetada iOS SDK 3.0 , pero supongo que era porque en ese momento, que era el SDK actual. Si alguien está buscando la respuesta a esto, pero puede usar iOS 4.0+, entonces aquí está mi solución.
Por lo tanto, se supone que tiene una UIViewController, que posee una MKMapView.
@interface MapViewController : UIViewController<MKMapViewDelegate> {
@private
MKMapView* mapView;
}
@property (nonatomic, retain) IBOutlet MKMapView* mapView;
@end
y configurar sus conexiones en el Interface Builder (XCode ahora) para conectar el real MKMapViewa la mapViewsalida. Y luego tienes alguna variable que contiene la ubicación que desea para dibujar un círculo en torno a: location. Usted sólo tendrá que crear una MKCircle, y añadirlo a su mapViewcomo una superposición :
CLLocationCoordinate2D location = [self getTheLocationSomehow];
CLLocationDistance radius = 50.0; // in meters
MKCircle* circle = [MKCircle circleWithCenterCoordinate: location radius: radius];
[mapView addOverlay:circle];
Si desea personalizar el aspecto de su círculo, el controlador de vista podría implementar MKMapViewDelegatey poner en práctica mapView:viewForOverlay:este modo:
- (MKOverlayView *)mapView:(MKMapView *)mapView viewForOverlay:(id <MKOverlay>)overlay {
MKCircle* circle = overlay;
MKCircleView* circleView = [[[MKCircleView alloc] initWithCircle: circle] autorelease];
// make the circle red with some transparency and stroke
circleView.fillColor = [UIColor colorWithRed:1.0 green:0.0 blue:0.0 alpha:0.25];
circleView.strokeColor = [UIColor redColor];
circleView.lineWidth = 2.0;
return circleView;
}
Recuerde establecer mapView.delegate = selfen el código controlador de vista (por ejemplo viewDidLoad) o gráficamente a través de Interface Builder .