Knoten - Kanten - Server Features

Zusammenfassung der Features

  • Import eines Kantennetzes per Geopackage oder Shape
  • Topologieermittlung des importierten Netzes
  • Nutzung mehrerer Arbeitsbereiche in verschiedenen Regionen
  • getrennte Darstellung der Netztypen im Arbeitsbereich
  • lokale geometrische Veränderungen per Maus auf der Karte für das Importnetz (Kanten ziehen, Knoten verschieben) unter Einhaltung der Topologie
  • lokale topologische Veränderungen per OnClick-Aktion auf der Karte
  • Zugriff auf Informationen der Netzelemente per OnClick-Aktion auf der Karte und ggf. Anpassung von Benamungen
  • Nutzung vorkonfigurierter Aktionen aus einer Vorschlagsliste
    • Teilen
    • Knoten vereinen
    • ggf. unnötige Kanten entfernen
  • optische Anzeige von möglichen Aktionsregionen (Regionen in welchen Aktionen an Netzelementen möglich sind)
  • Ermittlung von übereinstimmenden Elementen zwischen Importnetz und Referenznetz, sowie Eliminierung dieser Dopplungen
    • gezielte Auswahl der zu entfernenden Elemente
    • Möglichkeit zur nachträglichen Bearbeitung von Benamungen an Importelementen
  • Download des Referenznetzes in den cardo-weiten Formaten für den Export von tabellarischen Daten
    • kompletter Download
    • Download innerhalb der Ausdehnung des Arbeitsbereichs
  • Download der importierten Elemente
    • zusätzlich mit Bezug auf den ID-Spaltenwert der Importdaten
  • Webservice-Funktionen zu Kontrolle von Änderungen an Referenznetzelementen ähnlich dem Knotenserver

Im Detail

Import (Nutzerhandlung)

  • Import von Kanten aus Shape - und Geopackage - Daten
  • Es wird folgende fixe Datenstruktur geparst
    • Geometrie (Linestring)
    • ID
    • VNK (VNP)
    • NNK (NNP)
  • Die Id wird als external_id bei den Arbeitsbereichselementen mitgeführt
  • Die Daten werden topologisch aufbereitet
    • Es werden Knoten als geometrische Objekte erstellt (aus den Kantenendpunkten) und die VNK- bzw. NNK - Spaltenwerte in einen vorher gewählten Namensraum eingebunden

Ein Import ist gleichzusetzen mit der Erstellung eines Arbeitsbereichs. Dafür muss der Nutzer noch folgende Angaben machen:

  • Namingprovider (Namensraum)
    • der "Namensraum" welchem die Knotennamen zugewiesen werden
  • Genauigkeit
    • Geschätzt, Gemessen
  • Administrative Einheit
    • für zukünftige Funktionen
    • diese Information wird im Verlauf auch den entstehenden Referenzelementen beigefügt
  • Titel
    • aktuell rein informeller Nutzen

Arbeitsbereiche (Erstellung ausgelöst durch Import)

  • ein Arbeitsbereich ist eine Zusammenfassung von importierten Elementen (Knoten, Kanten) und Referenzelementen (s. nächster Punkt)
  • beim Import wird die Ausdehnung der Geometrien ermittelt und in diesem Bereich die Elemente des Referenznetzes in den Arbeitsbereich kopiert

  • alle Elemente werden auf einer Karte angezeigt
  • es lassen sich verschiedene Hintergrundkarten (wie bei der Kartenanwendung) anzeigen
  • Referenzelemente und Importelemente können ein - und ausgeblendet werden
  • es lässt sich jeweils auf die Import- oder Referenzelemente sowie auf alle angezeigten Elemente zoomen
  • es lässt sich das Referenznetz komplett herunterladen
    • ein Namensraum muss gewählt werden (für die zu exportierenden Namen der Knoten)
  • es lässt sich das Referenznetz in der Region des Arbeitsbereichs herunter laden (Namensraum wird vom Arbeitsbereich abgeleitet - siehe Auswahl des Namensraums beim Import)
    • Folgende Spalten werden zusätzlich zur Geometriespalte erzeugt:
      • laenge
      • vnk (Knotenname)
      • nnk (Knotenname)
      • uid (die eindeutige ID des Elements im Referenznetz)
      • vnk_uid (die eindeutige ID des Elements im Referenznetz)
      • nnk_uid (die eindeutige ID des Elements im Referenznetz)
  • es besteht die Möglichkeit nur die importierten "neuen" Elemente des aktuellen Arbeitsbereichs herunter laden (Namensraum wird vom Arbeitsbereich abgeleitet - siehe Auswahl des Namensraums beim Import)
    • hierbei wird die externe ID, welche beim Import der Elemente ermittelt wurde, wieder mit exportiert
    • sonst analog obiger Spaltenangaben
  • ein Arbeitsbereich sperrt das Gebiet welches seiner Ausdehnung entspricht
    • folglich ist es nicht möglich einen weiteren Arbeitsbereich in einem Gebiet zu erstellen, welches ein gesperrtes Gebiet schneidet
    • der Nutzer wird drauf hingewiesen
  • Es lassen sich mehrere Arbeitsbereiche (in, sich nicht schneidenden, Gebieten erstellen)
  • Die Arbeitsbereiche des Nutzers werden tabellarisch dargestellt
  • Man kann zwischen den Arbeitsbereichen wechseln
  • Arbeitsbereiche lassen sich löschen (unabhängig vom Bearbeitungsstand)

Netzbearbeitung (in einem geladenen Arbeitsbereich)

Detaillierte Schritte zur Bearbeitung von Netzen, sind gesondert im Dokument "Verknüpfen von Netzen" beschrieben.

Hinweise durch die Anwendung

  • Zu jedem Element über welches die Maus bewegt wird, werden Zusatzinformationen in der Karte gezeigt

    • Netzherkunft (Import, Referenz)
    • Eindeutige ID
    • Eindeutige ID der Knoten (im Falle einer Kante)
    • alle vergebenen Namen des Knotens (im Falle eines Knotens)
  • es werden tabellarisch Hinweise zu Regionen gezeigt in welchen Interaktionen zwischen Netzelementen möglich sind

  • diese bestehen, grob beschrieben, aus den Schnittmengen der gepufferten Geometrien der beiden Netztypen (Referenz, Import)

    • diese werden optisch in der Karte dargestellt

    • diese weisen darauf hin, dass der Nutzer hier prüfen sollte,

      • ob es sich um redundante Informationen handelt, die bereinigt werden müssen
      • ob es sich um Stellen handelt, wo Bestandteile des Imports in das Referenznetz eingebunden werden müssen
    • es lässt sich jeweils in die Region des betreffenden Hinweises auf der Karte navigieren

  • es werden tabellarisch Hinweise zu möglichen Integrations-Interaktionen angezeigt

    • diese werden vom Server erstellt und basieren auf dem aktuellen, in der Anwendung dargestellten Datenstand
    • die Aktionen lassen sich einzeln ausführen
    • man kann jeweils zum betroffenen Bereich in der Karte navigieren
    • folgende Aktionen sind möglich:
      • Kante teilbar
        • Fall: eine Kante liegt mit einem Endpunkt auf einer anderen Kante (zwischen den Endpunkten der zweiten Kante)
        • anwendbar auf alle Netztypen
      • Knoten vereinen
        • Fall: mehrere Knoten liegen übereinander
        • Notwendig: Auswahl eines Masterknotens für die anliegenden Kanten
          • wird vom Nutzer aus einer Auswahl von möglichen Knoten gewählt oder von der Anwendung vorgegeben (falls die Elementkonstellation eine automatische Vorgabe bedingt)
      • Kanten reduzieren
        • Fall: eine oder mehrere Imporkanten teilen sich das gleiche Knotenpaar wie eine Referenzkante
          • dies kann gewünscht sein, oder aber eine Kante verläuft nahezu parallel einer anderen und sollte dieser im Grunde auch entsprechen
          • Notwendig: gegebenenfalls Auswahl einer zu entfernenden Kante

Lokale On-Click Aktionen auf der Karte

  • an den Netzelementen selbst lassen sich je nach Element und Netzart zusätzliche lokale Aktionen ausführen
  • diese werden live erstellt bei Rechtsklick auf das Element in der Karte
  • Folgende Aktionen sind möglich:
    • Kante löschen (Importkanten)
    • Kante teilen (Importkanten - geteilt wird am nächsten Vertex bezogen zum Klickpunkt)
    • Kante konvertieren (Importkante - markiert die Kante als Referenznetzkante - für die spätere Integration werden nur noch Referenzelemente benötigt)
      • als Hilfe für den Nutzer "diese Kante nicht mehr betrachten" - es werden nur noch eingeschränkt Vorschläge für diese Kante unterbreitet
    • Informationen zur Kante anzeigen
      • es werden Zusatzinformationen zur Kante in einem Dialog gezeigt
        • UID
        • Genauigkeit
        • Länge
      • es werden Zusatzinformationen zu den der Kante zugehörigen Knoten angezeigt
        • UID
        • Genauigkeit
        • Namen (bei Importknoten änderbar)
    • Informationen zum Knoten anzeigen
      • es werden Zusatzinformationen zum Knoten in einem Dialog gezeigt
        • UID
        • Genauigkeit
        • Namen (bei Importknoten änderbar)

Lokale geometrische Aktionen auf der Karte

  • Importgeometrien sind per Maus veränderbar
  • Importkanten lassen sich über das Kontextmenü löschen
  • Importkanten lassen sich über das Kontextmenü teilen

Jegliche Veränderung an einer Geometrie auf der Karte führt zu einem Anpassung des Attributs "Genauigkeit" (falls Wert = Eingemessen, dann Wert = geschätzt) des Elements

Knotenbenamung

  • zieht sich partiell durch die Anwendung, wo immer ein neuer Knoten entsteht
  • der Nutzer wählt einen Namensraum
    • teilweise eingebaute Namensprovider, welche automatisiert Namen vergeben
    • wenn gewünscht auch generische Provider zur Wahl - hier muss manuell ein Name vergeben werden
  • es darf in einem Namensraum nur einen Namen geben
  • noch nicht zugewiesene Namen in einem der automatisierten Namensräume werden bei Integration des Arbeitsbereichs in das Referenznetz erstellt
  • falls ein Knoten aus einem Arbeitsbereich einen Eintrag eines Namensraums besitzt welcher ebenfalls im Referenznetz vorhanden ist, wird der Referenznetzname bevorzugt und der des Arbeitsbereichs verworfen (eine Möglichkeit zur Information über solche Diskrepanzen besteht und der Nutzer kann ebenfalls Namen ändern / entfernen / hinzufügen)

Arbeitsbereichsaktionen

  • Fall: partielle Netzübereinstimmung (wenn der Nutzer ein "bekanntes" Netz erweitert hat, wobei die "bekannten" Elemente schon im Referenznetz vorhanden sind)
    • die Anwendung kann Elemente, welche mit dem Referenznetz übereinstimmen, auflisten (geometrisch relativ gleiche Geometrien, welche eventuell minimal voneinander abweichen können)
    • in der Auflistung wird dem Nutzer auch eine mögliche Diskrepanz von Benamungen der Knoten dargestellt
    • die Elemente des Arbeitsbereichs, welche mit dem, zum Arbeitsbereich hinzugefügten Referenznetzausschnitt übereinstimmen, lassen sich entfernen
      • etwaige zusätzliche Benamungen werden dabei in den Referenzteil des Arbeitsbereichs übernommen
    • es lassen sich gezielt einzelne oder mehrere Elemente von der Eliminierung ausschließen - somit lassen sich etwa Überführungen realisieren
    • für die gefundenen übereinstimmenden Elementpaare lassen sich jeweils die Zusatzinformationen und Lokalisierung auf der Karte zeigen
    • für einen Erstimport entfällt dieser Schritt
    • Prüfung ist jederzeit ausführbar

Informationen der Nutzer über Änderungen

  • ähnlich dem Knotenserver Webservice
    • Methoden
      • RegisterNodeUsage(string identificator, bool updateGenerationToCurrent)
      • RegisterEdgeUsage(string identificator, bool updateGenerationToCurrent)
      • UnRegisterNodeUsage(string nodeIdentificator)
      • UnRegisterEdgeUsage(string edgeIdentificator)
      • ReportChangesOnMyUsedNodes(bool onlyUnreported)
      • ReportChangesOnMyUsedEdges(bool onlyUnreported)
    • der Nutzer wird bei geometrischen und topologischen Änderungen informiert
    • eine Information zur Historie bei Kantenteilungen ist aktuell nicht implementiert

Zuletzt geändert: 21.03.2024 09:46:22 (erstmals erstellt 04.11.2020)