ich würde gerne, am liebsten mit php, eine adresse in Längengrad/Breitengrad umrechnen lassen.
Das würde ich gerne ohne Google machen (unser Prof ist ein echter Open Software Fan), gibt es da etwas für mich?:rolleyes:
Ach so, es müßte schon ein Script sein, kein externer Anbieter, da ich in einer Schleife n Adressen in Längengrad/Breitengrad umrechnen lassen will.
Das Ganze müßte nicht einmal wirklich laufen, ich würde nur gerne den Weg dahin beschreiben. (also reine Theorie, das würde schon reichen)
Ja, den Nominatim habe ich auch schon gefunden, danke für Deine Bestätigung. Den URL-Aufruf und das anschließende parsen des JSON-Ergebnisses bekomme ich hin.
Ja, danke! Genau darüber habe ich gestern Nominatim gefunden.
Kennt jemand ein fertiges PHP(oder Perl)-Skript, was aus eine Adresse eine Suchanfrage an Nominatim erstellt und eine Antwort parsen kann? So müsste ich das Rad nicht neu erfinden. Ansonsten würde ich es selbst programmieren.
Nominatim liefert dir ja eine BBOX, auf welchen Zoomlevel die Karte dann gezoomt wird, ist Sache der Anwendung. Also: Nominatim als reiner Geocoder weiss nix von Zoomleveln und Maßstäben, die Seite nominatim.openstreetmap.org/search.php?q=Zeil%2C+Frankfurt+am+Main macht einfach nur
function panToLatLonBoundingBox(lat,lon,minlat,maxlat,minlon,maxlon,wkt) {
vectorLayer.destroyFeatures();
var proj_EPSG4326 = new OpenLayers.Projection("EPSG:4326");
var proj_map = map.getProjectionObject();
map.zoomToExtent(new OpenLayers.Bounds(minlon,minlat,maxlon,maxlat).transform(proj_EPSG4326, proj_map));
var lonLat = new OpenLayers.LonLat(lon, lat).transform(proj_EPSG4326, proj_map);
map.panTo(lonLat, 2);
...
zoomToExtent auf der Karte, d.h. zoomt die Karte so, das alle Ergebnisse draufpassen. Das ist also ne Funktion aus deiner Mapping-Bibliothek.
Wie due genau da implementiert ist kann man im Source nachlesen, ist ja alles Open Source. Lefalet hat so ne Funktion auch, aber k.p. wie die genau heißt.