Koordinaten Einzugsbereich

Hallo Leute
Ich bin heute auf ein Problem gestoßen.
Ich glaube das Mathematik die Lösung ist. Allerdings bin ich kein Mathe Genie darum wollt ich euch mal fragen.

Aufgabe ist:

Ich steh an einem bestimmten Ort in Deutschland. Ich hab meine genaue Koordinate. Weitere 25 Leute meines Teams stehen auch in Deutschland und haben auch ihre genauen Koordinaten (GPS).
Nun soll anhand der Koordinaten ausgerechnet werden wer alles im Umkreis von 100km, 250km und 500km ist.

Danke schon mal für eure Hilfe und Mühe.

Gruß Lamer

Hallo,

Ich bin heute auf ein Problem gestoßen.
Ich glaube das Mathematik die Lösung ist.

herrlich! :smile: Jawoll, Deine Vermutung stimmt.

Ich steh an einem bestimmten Ort in Deutschland. Ich hab meine
genaue Koordinate. Weitere 25 Leute meines Teams stehen auch
in Deutschland und haben auch ihre genauen Koordinaten (GPS).
Nun soll anhand der Koordinaten ausgerechnet werden wer alles
im Umkreis von 100km, 250km und 500km ist.

Dafür gibts ne Fertigformel. Zwei beliebige Orte auf der Erdoberfläche mit den geographischen Breiten b1 und b2 und den geographischen Längen l1 und l2 sind

d = R arccos( cos(l2 – l1) cos(b1) cos(b2) + sin(b1) sin(b2) )

weit voneinander entfernt, wobei R der Erdradius ist (R = 6371 km). Mit dieser Entfernung ist die Länge des Weges auf der Oberfläche gemeint (Fachbegriff: „Großkreis“), also nicht die Länge eines geraden Tunnels durch den Kugelkörper.

Die Formel folgt unmittelbar aus dem Skalarprodukt in Kugelkoordinaten. Du musst sie für jeden Deiner Freunde separat anwenden, wobei b1 und l1 (= Deine Koordinaten) immer gleich bleiben.

Kommst Du damit klar? Sonst nochmal nachhaken.

Gute Nacht
Martin

http://de.wikipedia.org/wiki/Gro%C3%9Fkreis

Hi Martin

Das hab ich soweit nachvollziehen können.

Allerdings dauert dies ziemlich lange wenn ich dsa für jeden einzeln machen muß.
Wie machen das denn die großen Webseiten.
Da kann man manchmal angeben „ich such im Umkreis von 10 Km alle Schlosser mit Nachtdienst“ und bekommt dann eine Liste. Die gehen doch nicht wirklich jeden einzelnen Schlosser durch um dann die Liste zu generieren?

Hast du eine Idee wie man das umsetzen könnte in eine Mathematische Formel?

Gruß Lamer

Hallo,
ich vermute, die suchen mehrheitlich nur nach der Postleitzahl oder ähnlichen Kriterien, die die Datenbank selbst vorhält.
So ein ordentlicher großer Datenbankserver ist, vorsichtig gesagt, sauschnell. Schau mal, wie schnell dir google Millionen Treffer liefert.
Zu deinen Problem. Ich würde das erstmal nicht in Kugelkoordinaten sondern in einem kartesischen System wie z.B. Gauß-Krüger machen. Für D sollten die Fehler vernachlässigbar sein und die Entfernung ist ein einfacher Pythagoras. Die (rechenintensive) Wurzel da drin kann man sich schenken, wenn man einfach die Quadrate vergleicht.
Nun noch (und schon wieder Datenbank) aus der Datenbank nur die Elemente abgefragt, die in Frage kommen können. Bei einer Entfernung von z.B. 100km kann man solche, die bereits in einer Koordinate weiter entfernt sind gleich ignorieren, da die andere sein kann, was sie will.
Wenn einem das immer noch nicht schnell genug ist, muß man sich noch ein paar einfache Kriterien zur Vorauswahl einfallen lassen. Mir fällt spontan nicht mehr ein.

Cu Rene

Hallo Lamer,

Allerdings dauert dies ziemlich lange wenn ich dsa für jeden
einzeln machen muß.

damit diese Feststellung eine Aussagekraft hat, musst Du auch die „Randbedingungen“ dazusagen. Was hast Du denn (real oder in Deiner Vorstellung) gemacht, was lange gedauert hat oder Deiner Einschätzung nach lange dauern soll? Wenn Du die Formel 100 mal in Deinen Taschenrechner eintippst, dann braucht das wahrhaftig seine Zeit, aber wenn sie von einem Programm, das auf einem Pentium-PC läuft, in einer Schleife 10000 mal berechnet wird, dann geht das so schnell, dass Du davon praktisch nichts merkst.

Wie machen das denn die großen Webseiten.
Da kann man manchmal angeben „ich such im Umkreis von 10 Km
alle Schlosser mit Nachtdienst“ und bekommt dann eine Liste.
Die gehen doch nicht wirklich jeden einzelnen Schlosser durch
um dann die Liste zu generieren?

Doch, natürlich. Sie gehen nur nicht jeden einzelnen Schlosser auf der ganzen Welt durch, sondern beschränken sich auf die betreffende Großregion. Dazu gibt es in der Datenbank Tabellen mit gewissen regionalen Grobsortierungen, z. B. alle Schlosser in einer bestimmten größeren Stadt oder in einem kommunalen Kreis. Suchst Du dann z. B. einen Schlosser im Umkreis von 10 km um Wilhelmshaven, dann entnimmt der Algorithmus der Datenbank alle 5278 Schlosser in Ostfriesland und geht sie durch (was rechenzeitmäßig überhaupt kein Problem ist), lässt aber die Schlosser im Schwarzwald unberücksichtigt.

Hast du eine Idee wie man das umsetzen könnte in eine
Mathematische Formel?

Wie soll ich die Frage verstehen – ich habe Dir die Formel doch schon angegeben (d = R arccos(…))?

Gruß
Martin

Danke ihr beiden. Mit den Antworten kann ich erstmal arbeiten. Ich werde mal den Taschenrechner wegpacken und mich in ein Programm Knien was das dann ausrechnet.

Vielen Dank … verneig …

Lamer