Autor Nachricht
Brillant
BeitragVerfasst am: 18. Feb 2017 16:33    Titel:

Hallo Marco,

as_string hat Folgendes geschrieben:
Ehrlich gesagt kommt mir Deine Frage als reichlich konfus vor.
Sind wir einer Meinung, dass die Breitengrade einen gleichbleibenden Abstand voneinander haben?

Falls ja, möchte ich dieses über die Erde gelegte "Ringsystem" kopieren und um 90 Grad drehen. Und zwar um die Achse, die von 0,0 über den Erdmittelpunkt nach 0,180 geht (Breitengrad,Längengrad). Der "Nordpol" wird also auf den Äquator geklappt.

Sind wir einer Meinung, dass der Abstand der "Ringe" nach dem Drehen so konstant ist wie zuvor der Abstand der Breitengrade, also 10.000 km / 90 ° = 111,11... km/°?

Wenn ich nun nach Orten suche, die von einem gegebenen Ort max. 111,11... km entfernt sind, also in einem Quadrat der Seitenlänge 111,11... km liegen, gehe ich bei den Breitengraden eins nach oben und eins nach unten. Und bei den Neu-Graden ebenfalls eins nach oben und eins nach unten. Mit diesen Vergleichswerten gehe ich in die Datenbank.

Falls ich einen Denkfehler habe, freue ich mich über Hinweise. Aber warum das "konfus" sein soll, verstehe ich nicht.

Bisher habe ich in der Datenbank die Entfernung (Großkreis) sämtlicher Orte in Bezug auf den Quell- Ort berechnet und dann 99% ausgeschlossen. Nun möchte ich die Menge der Orte in dem Quadrat definieren und nur von dieser Menge die Entfernung (Großkreis) berechnen. Ich erwarte einen deutlichen Zeitgewinn.
as_string
BeitragVerfasst am: 18. Feb 2017 16:06    Titel:

Ehrlich gesagt kommt mir Deine Frage als reichlich konfus vor. Vielleicht hilft Dir die Seite über sphärische Geometrie oder sphärische Trigonometrie auf Wikipedia weiter?

Gruß
Marco
Brillant
BeitragVerfasst am: 18. Feb 2017 14:24    Titel: Re: Globus: Nachbarorte bestimmen

jh8979 hat Folgendes geschrieben:
Breitegrad hat einen Umfang von .
Der Umfang der Breitengrade hat am Äquator ca. 40.000 km, an den Polen 0 km.

Wenn ich nach einer Entfernung von 100 km suche, ist das hoch im Norden/Süden nicht machbar. Bzw. auf einem Breitengrad, der 100 km Umfang hat, bin ich mir selbst 100 km entfernt.

Um auf die roten Linien in meiner Skizze zurückzukommen: Wie berechne ich den Winkel eines Ortes, bezogen auf den Großkreis 0° / 180° Länge? Den Wert möchte ich für jeden Ort errechnen und speichern.
jh8979
BeitragVerfasst am: 07. Feb 2017 18:24    Titel: Re: Globus: Nachbarorte bestimmen

Brillant hat Folgendes geschrieben:

Beispiel: Ich habe einen Ort im Norden, sagen wir Langesund (59.0033,9.74139). dann könnte ich die Längengrade im Abstand x km auf dem Breitengrad 59.0033 bestimmen. Aber die Fläche sieht aus wie ein Trapez, weil die Längengrade nach Norden enger zusammenlaufen. Unten breiter als gewünscht und oben schmäler.

Das hab ich schon verstanden, aber die Rechnung, um das zu korrigieren ist nicht besonders schwierig.

Breitegrad hat einen Umfang von . Ein Abschnitt von der Länge auf diesem Umfang, umschliesst also eine Längengraddifferenz für die gilt . Modulo Rechenfehlern sollte es stimmen.
Brillant
BeitragVerfasst am: 07. Feb 2017 18:13    Titel: Re: Globus: Nachbarorte bestimmen

jh8979 hat Folgendes geschrieben:
Brillant hat Folgendes geschrieben:

Doch mit Längengraden funktioniert das nicht, die Entfernung wird vom Äquator zu den Polen immer kleiner.
Vielleicht versteh ich Dein Problem nicht richtig, aber auszurechnen, auf welchen Längengraden zwei Punkte eines Breitengrades bei vorgegebenem Abstand liegen, ist keine besonders schwierige Übung.
Das ist nicht so ganz das Problem.

Beispiel: Ich habe einen Ort im Norden, sagen wir Langesund (59.0033,9.74139). dann könnte ich die Längengrade im Abstand x km auf dem Breitengrad 59.0033 bestimmen. Aber die Fläche sieht aus wie ein Trapez, weil die Längengrade nach Norden enger zusammenlaufen. Unten breiter als gewünscht und oben schmäler.

Auf der Südhalbkugel oben breiter, unten schmäler.

Auf dieser vorselektierten Fläche möchte ich in der Datenbank die Kreisformel für die Entfernung anwenden. Es ist leicht erkennbar, dass der Kreis westlich und östlich über das Trapez hinausragt, also nicht alle Orte erfasst werden.
jh8979
BeitragVerfasst am: 07. Feb 2017 16:31    Titel: Re: Globus: Nachbarorte bestimmen

Brillant hat Folgendes geschrieben:

Doch mit Längengraden funktioniert das nicht, die Entfernung wird vom Äquator zu den Polen immer kleiner.

Vielleicht versteh ich Dein Problem nicht richtig, aber auszurechnen, auf welchen Längengraden zwei Punkte eines Breitengrades bei vorgegebenem Abstand liegen, ist keine besonders schwierige Übung.
Brillant
BeitragVerfasst am: 07. Feb 2017 15:24    Titel: Globus: Nachbarorte bestimmen

Moin,

wenn von einem Ort auf der Erdoberfläche der Breiten- und Längengrad bekannt ist, und ich die Nachbarorte in einem Quadrat von 20 km Seitenlänge suche, ist das nach Nord und Süd keine Zauberei.

Zwei Breitengrade sind 40.000 km / 360 = 111,11... km voneinander entfernt. Für 20 km muss ich also 0,18 Grad addieren (nach Nord) und subtrahieren (nach Süd).

Doch mit Längengraden funktioniert das nicht, die Entfernung wird vom Äquator zu den Polen immer kleiner.

Weil die richtige Abstandsformel selbst für eine Datenbank extrem kompliziert und aufwändig zu rechnen ist, denke ich darüber nach, neben Breiten- und Längengraden eine dritte Art von Kreisen (rot) über den Globus zu legen, die voneinander immer denselben Abstand haben wie die Breitenkreise.

Diese Kreise kreuzen sich mit den Breitenkreisen zweimal oder haben genau einen (tangentialen) gemeinsamen Berührungspunkt. Oben rechts tangiert der rote den grünen Kreis, sie haben aber keinen Kreuzungspunkt.

Frage: Wie kann ich aus Längen- und Breitengrad den "Neu"-Grad errechnen? Damit ich in der Datenbank nach 20 km suchen kann?

Powered by phpBB © 2001, 2005 phpBB Group