Tengo una región de coordenadas que he determinado que contiene los límites de lo que quiero mostrar para mi aplicación. Lo he configurado como una MKCoordinateRegion con punto central latitud, longitud y un lapso. ¿Cómo determino si el userLocation actual está dentro de mi región de coordenadas?¿Cómo puedo determinar si la ubicación actual del usuario está dentro de mi MKCoordinateRegion?
Respuesta
Utilice el mapa rects. Aquí hay un ejemplo usando el rect visible actual del mapa. Con respecto a su pregunta, puede usar convertRegion:toRectToView:
para primero convertir su región a MKMapRect
de antemano.
MKMapPoint userPoint = MKMapPointForCoordinate(mapView.userLocation.location.coordinate);
MKMapRect mapRect = mapView.visibleMapRect;
BOOL inside = MKMapRectContainsPoint(mapRect, userPoint);
Hay una solución simple para decidir si un punto está dentro de su área si el área está dada por un polígono usando el algoritmo de ray casting: Vea aquí http://en.wikipedia.org/wiki/Point_in_polygon
Como punto de partida utilizar un lugar garantizado para estar fuera su región, por ejemplo (geográfico) polo norte.
que en realidad estaba buscando algo en MapKit que hacer el trabajo para mí! –
Swift 3 versión de respuesta firstresponder 's:
let userPoint = MKMapPointForCoordinate(mapView.userLocation.coordinate)
let mapRect = mapView.visibleMapRect
let inside = MKMapRectContainsPoint(mapRect, userPoint)
Más o menos lo mismo. Esta API aún no se ha modificado rápidamente (es decir, se ha actualizado para cumplir con las directrices de diseño de la API Swift). Realmente debe ser ...
let userPoint = mapView.userLocation.coordinate.mapPoint
let inside = mapView.visibleMapRect.contains(userPoint)
- 1. Cómo determinar si una anotación está dentro de MKPolygonView (iOS)
- 2. Obtener la ubicación actual del usuario en PHP
- 3. ¿Cómo puedo determinar si mi texto TextBlock está siendo recortado?
- 4. Determinar la ubicación del usuario en los mapas de osm
- 5. Determinar la ubicación del icono de bandeja
- 6. ¿Mostrar la ubicación actual del usuario con MKMapView?
- 7. ¿Cómo centrar mi ubicación actual en MKMapView?
- 8. Compruebe si la ubicación del usuario está visible en el mapa iphone
- 9. Mi ubicación actual siempre devuelve null. ¿Cómo puedo arreglar esto?
- 10. Android: icono predeterminado para la ubicación actual del usuario?
- 11. Quiero encontrar la ubicación actual del usuario en php
- 12. ¿Cómo puedo determinar si document.referrer es de mi propio sitio?
- 13. ¿Cómo comprobar si la hora actual está dentro del rango en python?
- 14. Eclipse: ¿Obtiene la ubicación del archivo actual?
- 15. Determinar el país del usuario de iPhone
- 16. ¿Cómo puedo saber si mi página está configurada como página de inicio del usuario?
- 17. ¿Cómo puedo determinar si mi proceso se está ejecutando de forma interactiva?
- 18. ¿Cómo puedo obtener la ubicación actual de GPS?
- 19. ¿Cómo determinar si la ventana actual es la ventana activa?
- 20. ¿Cómo puedo determinar si un archivo está vacío?
- 21. Cómo determinar si la aplicación actual es de confianza media
- 22. ¿Cómo puedo determinar si un rectángulo está completamente contenido dentro de otro?
- 23. ¿Cómo verifica si hay una MKAnnotation disponible dentro de una MKCoordinateRegion
- 24. ¿Cómo puedo determinar si una casilla de verificación está marcada?
- 25. Determine si CGPoint está dentro del área de la imagen
- 26. Cómo obtener la ubicación actual de mi dispositivo
- 27. ¿Cómo puedo determinar mediante programación si mi estación de trabajo está bloqueada?
- 28. ¿Cómo puedo determinar cuánta memoria está usando mi programa .NET?
- 29. ¿Detecta moneda según la ubicación del usuario?
- 30. ¿Cómo puedo volver a la ubicación hash actual usando Passport.js?
¡Ja, gracioso para obtener una respuesta mucho más tarde! Gracias, una buena respuesta, así que seguiré adelante y te daré la marca: ConvertRegion: toRectToView es lo que me faltaba. –