Announcement

Collapse
No announcement yet.

Delphi & GIS

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Delphi & GIS

    Ich habe als Diplomarbeit ehrenamtlich eine spezielle Software entwickelt, die in einer Feuerwehr-Einsatzzentrale als Einsatzverwaltungs- und Dispositionslösung eingesetzt wird. Klar, es gibt viele solche Programme auf dem Markt, aber unsere spezielle Lösung hat auch ihre Gründe, die hier NICHT diskutiert werden sollen. Schon öfters habe ich mich um ein Thema immer wieder herumgeschlichen: die Anzeige von geographischen Informationen zu den einzelnen Einsätzen. Aufgrund einer Erweiterung unseres Einsatzgebietes wird eine GIS-Integration jedoch immer unausweichlicher. Daher nun ein paar Fragen, in der Hoffnung, dass mir wer passende Antworten geben kann:

    1. Wer kann mir eine Art Howto bzw. ein Tutorial/Skript empfehlen, in dem einmal alle notwendigen Grundlagen von GIS und der Entwicklung von entsprechenden Anwendungen erklärt werden? Gerne auch Buchvorschläge... ich bin durchaus gewillt, mich mit dieser Materie ausführlich im Selbststudium auseinanderzusetzen.

    2. Wir wollen die Einsatzerfassung durch Stammdaten (Hauskoordinaten oder ATKIS?) unterstützen. Die Einsatzorte sollen in einer Karte (keine Orthophotos) angezeigt werden, nach Möglichkeit sollen in Zukunft auch Routingfunktionen (wie komme ich von einem bestimmten Ort zu der Einsatzstelle) integriert werden. In der Karte soll man Straßennamen und Hausnummern ein-/ausblenden können. Zu einer Straße oder bestimmten Objekten wollen wir die Daten aus dem Basis-DLM abrufen und anzeigen können (z.B. Straßenname, Nutzung, Breite usw...). Welche Daten brauche ich für diese Aufgaben alle vom Vermessungsamt (Bayern)? In welchen Formaten kommen diese?

    3. Wer kann mir für die o.a. Anforderungen passende Delphi-Komponenten nennen? Gerne auch DLL oder Active-X. Mit welchen Kosten muss man da rechnen, gibt es Spezialangebote für Hilfsorganisationen (NonProfit)? Gibt es gar OpenSource oder Freeware?

    Ich hoffe, mir kann da jemand weiterhelfen, damit ich mal schön langsam einen roten Faden gewinne, an dem ich mich orientieren kann ;-)

    Danke
    Thomas

  • #2
    Hallo Thomas,

    ich versuche mal auf deine Fragen zu antworten:

    1. (siehe auch 3.): Wenn Du dich mit Datenbankprogrammierung auskennst, dann sollte das kein großes Problem darstellen, denn die Daten werden in einer DB gespeichert, da abgefragt und angezeigt - fertig.

    Für das Problem von "räumlichen" Abfragen hat Oracle mit seinen Spezial-Aufsatz auf die Oracle-DB schon einiges gemacht, allerdings habe ich damit noch nie gearbeitet. Evtl. bieten auch andere, kostengünstigere Datenbanken diesen Aufsatz an, kann ich mir aber nicht so recht vorstellen. Du kannst Dir aber auf alle Fälle ein Buch über Oracle Spezial kaufen und dir das mal durchlesen.

    2. Stammdaten: Ja, die Daten bekommst Du vom Vermessungsamt, vermutlich auch für lau, da Du vermutlich auf Behördenhilfe pochen kannst (das gibts/gabs zumindest bei uns in BW). Allerdings hast Du da 2 Probleme: a. werden die Daten nicht sonderlich aktuell sein, d.h. da steht in der freien Wildbahn schon mal ein Haus und in der Karte ist nichts zu sehen, b. kannst Du diese Daten nicht ohne weiteres zur Routenplanung verwenden. Allerdings gibt es dafür wieder entsprechende Firmen mit den Datenbeständen, die aber richtig Geld kosten dürften.
    Über die Formate kannst Du dich einfach beim Landesvermessungsamt oder bei deinem nächstgelegenen Vermessungsamt/Vermessungsdienststelle mal erkundigen, vielleicht bieten die auch kostenlosen Demodaten an, dann kannst Du diese mal untersuchen. Ich bin leider schon ein paar Jahre aus dem Bereich raus und kann Dir deshalb kein bestimmtes Datenformat empfehlen, auch weil ich in BW wohne.

    3. Ich finde es schon mal gut, dass Du nicht vorhast, die grafische Anzeige selbst zu implementieren. Es gibt genügend CAD-Komponenten (such mal bei Torry.net), mit denen Du sicherlich was anfangen kannst. Ob du glücklich wirst, steht auf einem anderen Blatt.... Aber evtl. solltest Du dir auch überlegen ein fertiges System zu verwenden, wie z.B. AutoCAD, für das Du dann entpsrechende Plugins schreibst mit denen Du die Daten entsprechend auswerten kannst.

    Was mir jetzt noch einfällt: Bzgl. der Routenplanung: Ich kenne mich in der Feuerbekämpfungsszene nicht aus, denke aber, dass sich Feuerwehrleute eigentlich in Ihrem Bereich für den Sie zuständig sind, auskennen sollten. Wirklich Sinn würde dann eine Routenplannug erst dann machen, wenn aktuelle Daten (Baustellen, Staus,....) mit in das System einfließen.

    Ich war zudem der Meinung, dass die Polizei/Rettungskräfte für die EInsatzplanung das UTM-Koordinatensystem verwendet, die Vermessung in D aber das GK-Sytem im Einsatz hat. Eine Transformation der GK in UTM war zwar mal geplant, ist aber meines Wissens nie ausgeführt worden. Somit müsstest Du die amtlichen Daten (wenn Du auf diese zugreifst) erst mal transformieren (was aber ein kleineres Problem darstellen sollte).

    Grüße
    Wolfgan

    Comment


    • #3
      Hallo Wolfgang,
      danke für Deine doch recht ausführlichen Antworten. Seit dem ersten Posting ist doch schon vieles geschehen. Hier mal der aktuelle Stand, unten dann noch ein paar Fragen.

      Zunächst habe ich mir ein paar Skripten zum Thema durchgelesen, darüberhinaus auch die Spezifikationen von Autocad dxf und ESRI Shape Files. Ein bissl Grundwissen konnte ich somit schon erwerben. Die Daten (DOK, Atkis, usw... aber ohne Orthophots, die kosten) erhalten wir quasi über den "Dienstweg". Von der Bayer. Vermessungsverwaltung habe ich mir aber zunächst Testdaten zuschicken lassen, mit denen ich dann verschiedene Komponenten bzw. ActiveX-Komponenten (kommerziell und kostenlos) ausprobiert habe. Am allerbesten gefällt mir derzeit MapWinGIS, eine OpenSource(!)-ActiveX GIS-Komponente von mapwindow.org. Auf dieser Basis habe ich aufbauend auf der verfügbaren Delphi-Demo-App bereits ein System entwickelt, das mir neben der Digitalen Ortskarte auch die Orthophotos und Daten aus dem Basis-DLM von ATKIS visualisieren kann. Das ist für unserer Zwecke schon ziemlich ausreichend... Derzeit entwickle ich mir Funktionen zum Anzeigen der Einsatzstellen bzw. Eingabeunterstützungen für die Erfassung von Einsätzen.

      Hier noch ein paar Fragen:
      Wieso kann man auf Basis der o.a. Daten kein Routing machen? Welchen Algorithmus kann/sollte man dazu verwenden? Trifft hier TSP zu? Unsere Einsatzzentrale arbeitet landkreisweit, und ein Disponent kann nicht alle Straßen, Wege und Häuser kennen. Allerdings wäre das Routing zugegebenermaßen ein Schmankerl ;-)

      Gibt es gute Komponenten/Funktionen zur Umrechnung der Koordinaten von Lat/Long in UTM und zurück? Ich habe gelesen proj.4 wäre da passend, ich habs aber aus Zeitgründen noch nicht versucht...

      Danke und Gruss
      Thoma

      Comment


      • #4
        Hallo,

        meine Zeit auf dem Amt und mein Studium liegen jetzt schon ein paar Jahre zurück, kann sein, dass sich bei dem einen oder anderen Punkt was geändert hat...

        Thema Routing:

        Im Grund genommen funktioniert Routing so:

        Du hast ein "Modell" der Straßen (das sind Linien) und Punkte (wenn Du Hausnummerngenau willst, dann ist jede Hausnummer ein Punkt). Nun sind die Punkte und die Linien miteinander verbunden, so wie die Straßen die Gebäude miteinander verbinden. Du hast damit ein schönes Netz, mit dem Du jetzt prüfen kannst, wie Du von einem Punkt zum nächsten kommst. Die Linien haben dabei dann noch Zusatzinformationen, wie erlaubte Höchstgeschwindigkeit, Belastung durch Verkehr, Ausbau,..., die sich auf das Ergebnis auswirken.

        Erst jetzt habe ich nachgeschaut was "TSP" bedeutet... hätte ich mir viel schreibarbeit sparen können :-))

        http://de.wikipedia.org/wiki/Problem_des_Handlungsreisenden

        Ja, das ist das Problem. Wobei Dein Problem eher darin besteht die Daten aufzubereiten:
        Die Daten die Du vom Vermessungsamt bekommst, stammen aus der Vermessung direkt vor Ort und beinhalten die Grenzpunkte und -linien und evtl. topographische Gebilde (wie Böschungen, Nutzungsarten (Acker, Grünland), Gebäude,...). Damit hast Du das Problem, dass Deine Daten viel zu detailliert sind und in manchen Punkten (Ausbauzustand, Höchstgeschwindigkeit) keinerlei Informationen haben!
        Du müsstest also die Daten generalisieren um Dein Knoten-Kantenmodell für das Routing zu bekommen.

        Es gibt sicherlich genügend Funktionen / Komponenten die die Umrechnung von GK - Geographisch - UTM ermöglichen. Ich habe in dem Bereich nie groß was gesucht, bin aber immer wieder über Bibliotheken gestolpert (die ich dann nie ausprobiert habe)... Schau doch einfach mal bei Torry nach:

        http://www.torry.net/quicksearchd.php?String=geo&Title=Yes

        Da lässt sich mit einem entsprechend besseren Suchstring als Geo sicherlich noch manches finden.....

        Was mir gerade einfällt: Du solltest mal bei den Herstellern von Navigationsprogrammen nachschauen, ob die evtl. eine API bereitstellen, auf die Du zugreifen kannst, dann hättest Du das Routingproblem elegant und kostengünstig erledigt.

        Grüße
        Wolfgan

        Comment

        Working...
        X