Umkreis um eine Koordinate berechnen und alle Koordinaten in DB suchen

Noch mal langsam: Du multiplizierst deinen Suchradius (35km) mit 1,45? Und dann? Was machst du mit dem Wert? Was klappt dann? :confused:
Sorry, aber du musst dich ein bischen konkreter ausdrücken...
 
Hallo nochmal,

ich habe das ganze jetzt mal mit meinem Atlas getestet und einfach mal um einen Ort einen 30Km-Radius mit dem Zirkel gezogen.
Jetzt habe ich folgendes festgestellt:

1. Wenn ich nach meiner "alten" Berechnung rechne dann habe ich eine Eiform - das heisst nach Norden und Süden habe ich in jede Richtung je 30km Ausdehnung und nach Ost und West weniger (wieviel kann ich nicht genau sagen).
2. Wenn ich jetzt nach der "neuen" Berechnung rechne dann bekommt mein Kreis auch eine Eiform aber diesesmal genau umgekehrt. Jetzt habe ich zwar immer noch 30Km nach Norden und nach Süden - nach Osten und Westen habe ich jedoch jetzt knapp über 50km ausdehnung.

Das kann kann doch der Weisheit letzter Schluss noch nicht sein - ODER?
 
Und nochmal - habe deinen Post von 14.03 erst jetzt gesehen.

Ja ich multipliziere die Entfernung mit 1,45 und rechne dann mit diesem "fehlerkorrigierten" Wert weiter. Die 1,45 habe ich mir zu recht getestet ;)

Hier der entsprechende Quelltextabschnitt:
PHP:
$entf = 35; // max. Km-Entfernung von Startort
$fehlerquote = 1.45; // Ausgleich der Fehlerqoute in der Berechnung
echo "Folgende grössere Orte liegen im Radius von $entf km um $ort:<br><br>";

$alpha = 180*$entf*$fehlerquote/(6378137/1000*3.14159);
 
So ich habe mir jetzt mal die Arbeit gemacht, um einen Ort einen 20km-Radius zu ziehen und alle Orte mir dann auf eine Karte zu legen.
Ich habe dabei die Berechnung mit 180° auf der Breíte und 360° auf der Länge genommen.
Siehe da es ist genauso wie ich es befürchtet habe.
Es gibt einen breiteren Radius nach West und Ost - die Nord/Süd-Ausrichtung stimmt auffallend. Das Bild unter http://www.dwex.de/wartenberg-20km.jpg hat Nordausrichtung.
Der blaue Punkt ist der Ausgangsort und der rote Kreis wäre dann der 20km-Radius - die roten Punkte sind die gefundenen Orte

Was sagst du dazu?
 
Hossa,

was nicht passt wird passend gemacht, oder :eek:

Wie gesagt, die längen und breitengrad Skala ist unterschiedlich, was dazu führt, dass du ein Rechteck statt einem Quadrat erhältst.
Mit deinem Faktor 1.45 machst du das Ding einfach größer, wie ich schon geschrieben habe.
Eine Elipse (auch liebevoll "Ei" genannt :) ) würdest du jedoch nur erhalten, wenn du deine Abstandsberechnung mit variablem, periodisch veränderndem Abstand durchführen würdest. Nehm ich aber mal nicht an :) . Was du eher hast ist ein Kreis, an dem man links und rechts bzw. oben und unten einen Kreisabschnitt entfernt hat. Das passiert, wenn der Umkreisdurchmesser größer ist, als die kurze Seite deines Rechtecks (eigentlich sollten sie ja identisch sein)
Tja, der Fehlerteufel steckt halt doch immer im Detail...

Good Luck
Dr. Gonzzo
 

Anhänge

  • Unbenannt.JPG
    Unbenannt.JPG
    9,1 KB · Aufrufe: 154
Hallo,

schau dir bitte mal meinen Kreis nochmal an - da ist nichts entfernt - da ist vielmehr was zuviel :confused:
 
Hi dwex,

ok, also fals du die "Fehlerquote" bei der Abstandsberechnung mit einbeziehst kriegst du natürlich dadurch auch mehr Treffer. Anderst kann ich mir das ja fast nicht erklären :confused:
Kannst du vielleicht nochmal deinen gesamten Code posten, dann fällt es mir leichter den Fehler zu suchen. Wie gesagt, bei mir läuft es mit dem gleichen Prinzip sehr zufriedenstellend, was mich annehmen lässt, dass bei deiner Implementierung was nicht stimmt.
Wäre doch gelacht, wenn wir das nicht hinkriegen, oder?

Bis dann
Dr.Gonzzo
 
Hallo, ich möchte dieses Thema nochmal aufgreifen, weil mir einiges noch nicht klar ist.

Es geht hier zwar hauptsächlich um die Umkreissuche von Städten, doch wollte ich wegen meiner Frage kein neues Thema aufmachen: Ich habe eine Deutschlandkarte (auch die von OpenGeoDb) und wollte nun die Punkte der Städte auf die Karte eintragen.

Ich habe die Polarkoordinaten und die Breiten- sowie Längengrade der Städte. Wie bekomm ich das nun auf die Karte. Wenn ich die Erde als Kugel missachte und linear die Koordinaten auf Deutschland zeichnen lasse, ist es je weiter ich nach Süden und/oder Osten gehe immer ungenauer.

Kann mir einer helfen?

Danke im Vorraus
 
Ja ich weis, ist über ein Jahr her dieses Thema, aber ich stehe vor dem gleichen Problem.
Ort in 15 km Entfernung werden bei einer 20 km-Radius Suche nicht mit einbezogen.
Stelle ich den Radius auf 25-30 km sind die Orte mit 15 km Entfernung ebenfalls enthalten.
Ich habe den hier vorgeschlagenen Fehlerfaktor bisher nicht berücksichtigt.

Mich würde viel mehr interessieren, ob es vielleicht in der Zwischenzeit eine "genauere" Lösung gibt, als mit dem Fehlerfaktor zu arbeiten ?

Grüße

Torsten.E
 

Neue Beiträge

Zurück