Mam region współrzędnych, który ustaliłem, zawiera ograniczenia tego, co chcę pokazać dla mojej aplikacji. Ustawiłem to jako MKCoordinateRegion z punktem centralnym, długością i rozpiętością. Jak ustalić, czy bieżąca lokalizacja użytkownika znajduje się w moim regionie współrzędnych?Jak określić, czy bieżące położenie użytkownika znajduje się w moim MKCoordinateRegion?
Odpowiedz
Użyj map rects. Oto przykład użycia aktualnego widocznego rect mapy. Jeśli chodzi o twoje pytanie, możesz najpierw użyć convertRegion:toRectToView:
, aby najpierw przekształcić swój region na MKMapRect
.
MKMapPoint userPoint = MKMapPointForCoordinate(mapView.userLocation.location.coordinate);
MKMapRect mapRect = mapView.visibleMapRect;
BOOL inside = MKMapRectContainsPoint(mapRect, userPoint);
Jest to proste rozwiązanie, aby zdecydować, czy punkt jest wewnątrz obszaru, jeśli obszar jest podana przez wielokąt stosując algorytm rozstrzygający ray: patrz tutaj http://en.wikipedia.org/wiki/Point_in_polygon
Jako punkt wyjścia użyć lokalizację gwarancją zewnątrz twój region, np (geograficzny) biegun północny.
Byłem naprawdę szuka czegoś w MapKit że do pracy dla mnie! –
Swift 3 wersja firstresponder „s odpowiedź:
let userPoint = MKMapPointForCoordinate(mapView.userLocation.coordinate)
let mapRect = mapView.visibleMapRect
let inside = MKMapRectContainsPoint(mapRect, userPoint)
niemal tak samo. Ten interfejs API nie był jeszcze Swift-ified (tj. Zaktualizowany zgodnie z wytycznymi projektowania interfejsu API Swift). To naprawdę powinny być ...
let userPoint = mapView.userLocation.coordinate.mapPoint
let inside = mapView.visibleMapRect.contains(userPoint)
- 1. Android ListView bieżące położenie przewijania Y piksele
- 2. Czy skrypt Ruby może określić, w którym katalogu się znajduje?
- 3. Czy mogę określić położenie schematu w kompaktowym schemacie RELAX NG?
- 4. Pobierz bieżące położenie widoku w Mobile (iPhone) Safari
- 5. określić, czy punkt znajduje się wewnątrz dowolnego kształtu?
- 6. Dlaczego między komórkami w moim UITableView znajduje się spacja
- 7. Jak programowo określić bieżące ustawienie Bazy opcji w VBA
- 8. Powiększyć, aby dopasować bieżące położenie i adnotację na mapie
- 9. Android: jak ustalić, czy wydarzenie dotykowe znajduje się w kręgu?
- 10. PHP - jak najlepiej określić, czy bieżące wywołanie pochodzi z interfejsu CLI czy z serwera WWW?
- 11. Jak sprawdzić, czy MKCoordinateRegion zawiera CLLocationCoordinate2D bez używania MKMapView?
- 12. jak wykryć, czy klawiatura użytkownika znajduje się w AZERTY w Javie?
- 13. Ustal, czy punkt znajduje się w ramce ograniczającej
- 14. Ustalenie, czy zmienna znajduje się w zasięgu?
- 15. Czy w IDEA znajduje się adnotacja @NonNullByDefault?
- 16. jak zdobyć bieżące położenie w szerokości i długości geograficznej w Objective C
- 17. Czy można określić, czy punkt GeoJSON znajduje się wewnątrz wieloboku GeoJSON przy użyciu JavaScriptScript?
- 18. określić, czy punkt na ekranie znajduje się w określonym podglądzie UIScrollView
- 19. Jak sprawdzić, czy tekst znajduje się w kolumnie w Kątomierz
- 20. Jak znaleźć położenie repozytorium svn?
- 21. Ustal, czy lokalizacja pamięci znajduje się w pamięci podręcznej CPU
- 22. xcodebuild - jak określić katalog, w którym znajduje się projekt, bez tworzenia w nim cd
- 23. Jak ustalić, czy samolot znajduje się w aparacie Three.js Frustum
- 24. Jena - Jak sprawdzić, czy konkretny zasób znajduje się w modelu?
- 25. Jak sprawdzić, czy element jQuery znajduje się w DOM?
- 26. Jak ustalić, czy punkt współrzędnych GeoCom znajduje się w granicach
- 27. Focus MKMapView na NSString Współrzędne z MKCoordinateRegion
- 28. Jak znaleźć dane, gdy zestaw wyników znajduje się w tablicy?
- 29. Obecne położenie w symulatorze
- 30. Sprawdź, czy punkt wielokątny znajduje się wewnątrz innej ulotki
Ha, zabawne, aby uzyskać odpowiedź dużo później! Dzięki, dobra odpowiedź, więc pójdę do przodu i dam ci znak - convertRegion: ToRectToView to rzecz, której mi brakowało. –