0

Ich habe eine Firebase-Datenbank, wo der Benutzer seine Standorte aktualisiert (Breite und Länge), wenn er App verwendet. In der gleichen Zeit sieht der Benutzer alle Orte anderer Benutzer, die ihre Standorte auf die gleiche Weise odieren.Nur die nächstgelegenen Standorte aus DB filtern

Ich möchte alle Standorte von Benutzern anzeigen, die in X-Abstand vom Benutzer sind. Gibt es irgendein Algorithm oder etwas, um das zu filtern? Momentan wird der Benutzer alle Orte sehen, wenn er in den USA ist. Er kann Standorte von aktiven Benutzern aus Frankreich sehen.

Ich verwende MapKit und Corelocation

Antwort

1

Sie die distance auf einem CLLocation Objekt verwenden können, und aus denen, drucken, die im gewünschten Abstand sind.

Etwas wie folgt aus:

let userLocation = CLLocation(latitude: userLat, longitude: userLong) 
let anotherLocation = CLLocation(latitude: anotherLat, longitude: anotherLong) 
let distance = anotherLocation.distance(from: userLocation) 

if distance < desiredDistance { 
    // within range 
} 
+0

Sieht aus wie eine gute Lösung. Danke – OMGImOut

+0

Np, froh zu helfen! –

Verwandte Themen