Laden...

Entfernung zwischen zwei Postleitzahlen berechnen

Erstellt von der_claude vor 15 Jahren Letzter Beitrag vor 15 Jahren 9.081 Views
D
der_claude Themenstarter:in
6 Beiträge seit 2008
vor 15 Jahren
Entfernung zwischen zwei Postleitzahlen berechnen

Hallo Leute,

bin relativ neu hier

ich will ja nicht, dass hier jemand meine "Hausafgaben" macht (sind wirklich keine Hausaufgaben 😉)

Aber ich steh grad vor dem Problem, die Entfernung zweier Orte anhand der PLZ zu berechnen.
Man muss in ne Textbox seine PLZ eingeben und dann soll berechnet werden, wie weit diese person von einem bestimmten Ort weg ist (in km)
Gibts da ne Formel, die diese PLZ erst in die Koordinaten umrechnet und dann ne Art Gleichung, die mit den Koordinaten die Entfernung ausrechnet?

Sorry, wenn das alles jetzt sehr allgemein klingt, aber vll kann mir jemand hier doch helfen...

Danke
Der Claude

YOU THINK YOU KNOW ME..........

I
1.739 Beiträge seit 2005
vor 15 Jahren

Postleitzahlen sind einfach nur willkürliche Zahlen. D.h. du benötigst Datensammlungen als Basis, die PLZs auf Geodaten oder ähnliches mappen.
Verfügst du über eine solche Datenbasis? Wenn Nein, keine Chance, falls Ja sind PLZ-Bereiche teilweise grosszügig und die Entfernung daher bestenfalls ungenau(ok, besser als keine).

664 Beiträge seit 2005
vor 15 Jahren

Die Koordinaten für eine PLZ kannst du z.B. hierüber [1] herausbekommen.

[1] http://www.geonames.org/

1.361 Beiträge seit 2007
vor 15 Jahren

Hallo der_claude,

erst einmal Hallo im Forum.

Aber wie ikaros gesagt hat, stecken hinter des Postleitzahlen keine sofort herleitbaren Informationen über die realen Abstände der Orte.

Du benötigst dafür eine Datenbank, die es eben ermöglicht zu einer Postleitzahl die grobe Position auf dem Erdball zurückzugeben (Breiten/Längengrad)

Damit kannst du dann über Formel, wie bei Wiki-Seemeile die echte Entfernung ausrechnen.

Es ist eben ein Umrechnung nötig und im Grunde müsste man wegen der Kugeloberfläche der Erde (die bloß bei kleinen Entfernungen als Ebene angesehen werden kann) eine noch kompliziertere Formel verwenden.
Da man aber einer PLZ eh keine "exakte" Position zuordnen kann, sollte das keine Rolle spielen.

Wie kommst du an solche Datensätze?
Die Anbieter von Online-Karten mit Suchen bietet häufig auch Webservices an, sodass du in ner URL (Anfrage) verpackt dein ort/PLZ hinschickst und als Seite n XML-Dokument zurückbekommst, wo die Koordinaten drinne sind.

Google-Earth bietet Schnittstellen an.
Yahoo-Maps auch
und Microsofts Local.Live sicherlich auch

Wobei ein Kontingent an monatlichen Anfragen kostet.
Allerdings ist es (wenn ich mich nicht irre) bei Yahoo möglich, bis zu einer bestimmen Anzahl Anfragen gratis zu schicken, wenn man sich (kostenlos) registriert.
Eine kommerzielle Nutzung ist dort dann aber ausgeschlossen.
Ohne Geld geht eben nix 🙂

Aber für kleine Spielereien gehts allemal.

beste Grüße
zommi

1.361 Beiträge seit 2007
vor 15 Jahren

Noch ein Beispiel hintendran:

Wie hier beschrieben,
liefert:

http://local.yahooapis.com/MapsService/V1/geocode?appid=YD-9G7bey8_JXxQP6rxl.fBFGgCdNjoDMACQA--&street=701+First+Ave&city=Sunnyvale&state=CA
<ResultSet xsi:schemaLocation="urn:yahoo:maps [URL]http://api.local.yahoo.com/MapsService/V1/GeocodeResponse.xsd[/URL]">

<Result precision="address">
<Latitude>37.416402</Latitude>
<Longitude>-122.025078</Longitude>
<Address>701 1st Ave</Address>
<City>Sunnyvale</City>
<State>CA</State>
<Zip>94089-1019</Zip>
<Country>US</Country>
</Result>
</ResultSet>

<!--
 ws02.search.re2.yahoo.com compressed/chunked Sun Jun 22 12:45:04 PDT 2008 
-->
3.825 Beiträge seit 2006
vor 15 Jahren

Der SQL-Server 2008 bietet einige Funktionen für Geo-Daten. Sowohl mit Flächen- als auch mit Kugel-Modell.

Ob man damit aus der PLZ auf die Entfernung schließen kann weiss ich allerdings nicht.

Grüße Bernd

Workshop : Datenbanken mit ADO.NET
Xamarin Mobile App : Finderwille Einsatz App
Unternehmenssoftware : Quasar-3

K
231 Beiträge seit 2005
vor 15 Jahren

moin,

vllt hilft das weiter http://opengeodb.hoppe-media.com/index.php

raik

Gelöschter Account
vor 15 Jahren

bei map24.de gibt es auch eine api die man kostenlos nutzen darf (nicht kommerziell) oder auch gegen entgeld auch kommerziell.

hier stellt sich mir die frage ob du die entfernung in luftlinie oder in abzufahrender strecke mit einem pkw haben willst. das kann unter umständen recht größere unterschiede geben.

für ersteres benötigst du nur die reinen geo-daten.
für letzteres wirst du wohl eher auf dienste wie map24 zugreifen müssen, da das recht komplexe sachen sind.

ps: auf map24 sind auch beispiele zur nutzung in c# vorhanden.