Veröffentlicht 6. August 200817 j Hallo, ich hatte gerade eine Idee für eine kleine neue Webseite bei der ich u.a. die Distanz zwischen Postleitzahlen bräuchte. Also als Bsp.: Wie weit ist 61440 von 60313 entfernt ? Habe da schon einen kostenpflichtigen Webservice gefunden, aber in Zeiten von OpenStreetMap und Co müsste es doch bessere Lösungen geben, oder ?
6. August 200817 j Autor Ok, vielleicht sollte ich die Idee etwas erklären. Es gibt einen User, der hinterlegt die PLZ seines Wohnortes. Dann gibt es Events, die haben auch eine PLZ. Wenn eine Event im Umkreis von x Km stattfindet soll der Nutzer eine Nachricht bekommen. Das müsste also im Hintergrund und via Script laufen. Oder gibt es eine Google-Maps-API ? Kenn mich mit dem großen, bösen G nicht aus
6. August 200817 j Hallo, ich hatte gerade eine Idee für eine kleine neue Webseite bei der ich u.a. die Distanz zwischen Postleitzahlen bräuchte. Also als Bsp.: Wie weit ist 61440 von 60313 entfernt ? Habe da schon einen kostenpflichtigen Webservice gefunden, aber in Zeiten von OpenStreetMap und Co müsste es doch bessere Lösungen geben, oder ? Moin, ich kann dir gerne ein SQL-Script mit ca. 9000 Koordinaten schicken, das auf Open GeoDB basiert und das zugehörige Statement das die Entfernung (Luftlinie, ungefähr) zwischen 2 Einträgen errechnet. Sag Bescheid, wenn das von Interesse ist. Reinhold
6. August 200817 j Autor Hmmm... habe mir mal GoogleMaps API angesehen, schon ganz nett. Ich würde das allerdings gerne in Perl lösen, da gibt es aber wohl leider kein passendes Modul :cool:
6. August 200817 j Autor Ok, falls das mal jemand machen möchte/muss, so gehts: #!/usr/bin/perl use Geo::Ellipsoid; use Geo::Coder::GoogleMaps; $srcaddr = '60313, Germany'; $dstaddr = '61440, Germany'; my $geo = Geo::Ellipsoid->new(ellipsoid=>'WGS84', units=>'degrees', distance_units=>'kilometer'); my $geocoder = Geo::Coder::GoogleMaps->new(apikey => 'DeinGeheimerGoogleMapsAPIKey'); $location = $geocoder->geocode(location => $srcaddr); @src = ($location->latitude, $location->longitude); $location = $geocoder->geocode(location => $dstaddr); @dst = ($location->latitude, $location->longitude); print $geo->range( @src, @dst )." km\n"; exit;
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.