Artikel mit dem Tag "Geografie"

HTML-Input für Koordinaten

Das HTML5 <input>-Element mit seinen praktischen neuen Typen wie z.B. number, date oder tel erleichtert Frontend-HTML-Entwicklern viel Hebearbeit. Neben einer automatischen Validierung gibt es kleinen Helferlein bei der Eingabe (z.B. einen Kalender oder eine passende Tastatur). Einen Eingabetyp vermisse ich aber immer wieder.

Weiter lesen…

Der kleinste PHP-Geocoder der Welt

Mittels eines kleinen Dreizeilers und der Hilfe von OpenStreetMap kann man mit PHP Adressen in WGS84-Geokoordinaten verwandeln:

/**
 * Convert address into WGS84 geo coordinates.
 * @see http://wiki.openstreetmap.org/wiki/Nominatim
 * @param string $address
 * @return array with lat / lon
 */
function getCoordinates($address)
{
    $url = 'https:/'+'/nominatim.openstreetmap.org/search?q=' . urlencode($address) . '&format=json&limit=1';
    $json = json_decode(file_get_contents($url), true);
    return (!empty($json[0])) ? $json[0] : null;
}

Diese Lösung ignoriert natürlich ein paar Komplikationen, die beim Anfragen der Schnittstelle auftreten können. Für eine einfache Anfrage mit geringer Frequenz und ggf. auch längerer Antwortzeit liefert die o.a. Funktion ein ganz passables Ergebnis.

Wie finde ich ähnliche Artikel in einem CMS?

So ziemlicher jeder Artikel, den man in ein CMS einträgt, verfügt über drei Eigenschaften, mit denen sich ähnliche Artikel finden lassen. Bei einer geschickten Verknüpfung dieser drei Eigenschaften bzw. Achsen kann man so als Redakteur dem Leser des Artikels sehr einfach verwandte Artikel anzeigen.

Weiter lesen…

Genauigkeit bei Geo-Koordinaten

Im Urlaub haben wir unsere Ferienwohnung nicht mit Hilfe einer Adresse gefunden, sondern mit Hilfe von Geo-Koordinaten. In diesem Falle waren dass die allgemein üblichen WGS84-Koordinaten (wie man sie z.B. von Google Maps kennt), gerundet auf die letzten zwei Dezimalstellen.

Die interessante Frage war: Wie viele Nachkommastellen braucht man eigentlich, um eine halbwegs genaue Positionsangaben zu bekommen.


Beim Breitengrad (Latitude) ist die Antwort relativ einfach: Der Abstand zwischen jedem Breitenkreis beträgt 111,11… Kilometer. Also:

Dezimalstellen Beispiel Präzision
0 52° 111,1km
1 52.5° 11,1km
2 52,54° 1,1km
3 52,540° 111m
4 52,5406° 11m
5 52,54061° 1m

Beim Längengrad (Longitude) dagegen ist die Antwort abhängig vom Abstand zum Äquator. Je näher man sich den Polen nähert, desto geringer wird der Abstand zwischen den Längenkreisen. Am Äquator beträgt er die rechnerischen 111,11… Kilometer, in Deutschland sind das im Mittel eher so wie 70 Kilometer. Das bedeutet:

Dezimalstellen Beispiel Präzision
0 13° 70km
1 13,4° 7km
2 13,40° 700m
3 13,408° 70m
4 13,4086° 7m
5 13,40867° 70cm

Kurz gesagt: Eine halbwegs präzise Koordinate zum Finden eines bestimmten Hauses sollte also mindestens vier Stellen haben, schöner wären fünf.

Generell gilt: Wenn eine WGS84-Koordinate kommentarlos abgedruckt wird, ist sie normalerweise im Format „Breitengrad, Längengrad“, bzw. „Latitude, Longitude“. Und wenn an einer Koordinate nicht dran steht, ob sie West, Ost, Nord oder Süd ist, gilt bei positivem Vorzeichen nördlich vom Äquator respektive östlich vom Meridian, bei negativem Vorzeichen entsprechend südlich vom Äquator respektive westlich vom Meridian.

Übrigens habe ich auch ein paar Überlegung zur Genaugikeit des Maidenhead-Locators angestellt.