Frage

Ich habe meine aktuelle Position über Corelocation fixiert. Jetzt möchte ich diese Orte erhalten (aus einer bestehenden Datenbank), die in den in der Nähe (etwa 100 Meter) sind es.

Wie soll ich anfangen?


Update: Hier ist eine Implementierung der Haversine Formel: http://www.jaimerios.com /? p = 39 (sehr nützlich)

War es hilfreich?

Lösung

CLLocation stellt ein Verfahren hierfür:

- (CLLocationDistance)getDistanceFrom:(const CLLocation *)location

Sie werden die Breite und die Länge von jedem Ihrer Aufzeichnungen haben müssen, und dann sortiert nach der Entfernung von dieser Methode zurückgegeben.

Andere Tipps

Hochschul Geometrie FTW:

dist = sqrt(pow((x2-x1), 2) + pow((y2-y1), 2))

Eines der Dinge, die Sie tun können diese einfacher zu SQL Query zu machen, ist die Karte in „Kacheln“ aufgeteilt, dh eine 2 km x 2 km Fläche, so dass Sie bis auf die Kachel abfragen können, dann die Schleife durch die Ergebnisse mit dieser Formel.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top