OpenGeoDB - FAQ

OpenGeoDB & GISWiki - Das freie Portal für Geoinformatik (GIS)
Version vom 20. Dezember 2005, 14:49 Uhr von Zimbo (Diskussion | Beiträge)

(Unterschied) ← Nächstältere Version | Aktuelle Version ansehen (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche

FAQ


Woher stammen die hier veröffentlichten Daten?

Den Grundstock (ca. 13.250 Orte inkl. Koordinaten) hat Thomas Mack bis zum Jahr 2003 gelegt.

Seit August 2003 wird die Datenbank von einem Team von Freiwilligen korrigiert und fortgeschrieben.


Wie zuverlässig sind die Daten?

Die Ortsdaten sind bislang nur mäßig getestet, wesentliche Fehler dürfte es noch in der Größenordnung von bis zu ein- oder zweihundert geben. Ungenauigkeiten der Koordinaten in der Größenordnung von 1 bis 4 Bogenminuten (bis zu 2 km) sind allerdings sehr viel häufiger zu vermuten. Das gilt für Deutschland, und auch nur für die eigenständigen Gemeinden. Ortschaften, die nicht eigenständig sind, fehlen zu weit über 90%. Die vielen Änderungen der Gemeindezugehörigkeiten der letzten Jahre in den östlicheren Bundesländern sind noch NICHT eingearbeitet (Stand Dezemeber 2005).

Bei Gemeinden sind i.A. die Koordinaten eines gleichnamigen Hauptortes angegeben, gelegentlich aber abweichend von dieser Regel der ungefähre Gemeindemittelpunkt ermittelt aus den Koordinaten aller beteiligter Ortschaften, was von der Logik her eh konsistenter erscheint.


Darf ich die Daten auch für kommerzielle Projekte nutzen?

Selbstverständlich! Denn das Ziel dieses Projektes war und ist der Aufbau einer möglichst umfassenden Geo-Datenbank, die kostenfrei genutzt werden kann.


Gibt es ein Wiki für die Daten/ Ich möchte ein Wiki-Projekt für die OpenGeoDB starten

Es gibt eine Reihe von Projekten die sich mit dem Thema derzeit beschäftigen. Die aktiven sind aufgelistet unter den Projekt-Links. Schreibt am Besten eine Mail an die Mailingliste und fragt nach bestehenden Projekten und deren Status. Hilfe ist immer willkommen.


Was kann ich tun, um mein schlechtes Gewissen zu beruhigen?

Wenn Sie ein moralisches Problem damit haben, von der Arbeit anderer Menschen zu profitieren, können Sie dagegen gerne etwas unternehmen:

  • Helfen Sie mit, Schnittstellen zur Ergänzung und Korrektur der OpenGeoDB zu definieren und zu implementieren.
  • Oder helfen Sie mit, indem Sie selbst Daten korrigieren bzw. ergänzen.


Was ist OpenGeoDB und was ist GeoClassPHP

Arne Klempert und Thomas Mack haben 2003 mit der OpenGeoDB begonnen eine Datenbasis aufzubauen. Ebenfalls Arne Klempert und Stefan Motz hatten danach das GeoClassPHP-Projekt begonnen, eine PHP-Classe mit PEAR.

Lange Zeit war es so, das das OpenGeoDB-Projekt und das GeoClassPHP-Projekt praktisch zusammenhängend war. Die OpenGeoDB, die Datenbank, wurde für den Gebrauch mit der GeoClass designed und umgekehrt. Mit der zunehmenden Verbreitung der OpenGeoDB sind aber die Wünsche hinsichtlich der OpenGeoDB vielfältiger geworden, insbesondere was die Datenstruktur angeht.


Wie berechne ich die Entfernung zwischen zwei Orten?

Kurze Antwort:

 arccos(sin(B_lat)*sin(A_lat)+cos(B_lat)*cos(A_lat)*cos(B_lon - A_lon)) * Erdradius

Mit dem Erdradius von etwa 6380 km. Die Längengrade und Breitengrade müssen in das Bogenmaäß konvertiert werden, wenn die sin() und cos() Funktionen es so erwarten. Das geschieht durch die Multiplikation der Werte aus der Datenbank mit PI/180. In PHP ist PI als Konstante M_PI definiert.

Eine ausführlichere Antwort (eigentlich eine Frage ;) ) mit weiteren Lösungen wurde vom Martin Trautmann vorgestellt, und darf mit seiner Erlaubnis hier betrachtet werden.


Kann ich das php-Skript "entfernung.php" von opengeodb.de irgendwo herunterladen?

Kurze Antwort: Nein.

Etwas ausführlicher: dieses Skript basiert ebenso wie das ladbare Skript opengeodb.php auf der GeoClass. Dort gibt es eine Funktion getDistanceFormula($geoObject), die für SQL-Anfragen benutzt werden kann. Alternativ kann man die Funktion unter Punkt 1) der FAQ direkt benutzen.

Alles, was man sonst noch braucht, ist der Auswahldialog für die Orte und die Ausgabe der Resultate. Beides hängt wesentlich von der gewünschten optischen Erscheinung ab. Beides ist auch im etwas anderen Kontext im Beispielskript opengeodb.php vorgestellt. Das Selberschreiben einer solchen Funktion sollte kein zu großer Aufwand sein.

Trotzdem und wegen der großen, d.h. der regelmäßgen Nachfragen: Falls jemand ein solches Skript zur Verfügung stellen möchte, würde ich es hier mit veröffentlichen.