GNavigia

Objekte, Meldungen und Sonderfunktionen

Objekte: Sinn und Gebrauch

Wir haben bisher nur jenen Teil des Programms betrachtet, der die Manipulation und die Visualisierung von Tracks umfasst, wir kommen jetzt zu dem der Objektbildung. Objekte im Sinne dieses Programms sind diejenigen GPS-Elemente, die in der streng hierarchischen Baumstruktur im Reiter Objekte angelegt werden können. Objekte (können) bestehen aus Objekten, Textobjekten, Objektreferenzen und Tracks. Streng hierarchisch bedeutet, dass es nur genau einen obersten Knoten geben kann.
   Objekte fassen letztlich Tracks zusammen, die so unter einem anderen Namen präsentiert oder ausgewertet werden können. Ist einem Objekt ein Track oder eine Objektreferenz zugeordnet, kann ihm kein Objekt mehr zugeordnet werden. Tracks und Objektreferenzen bilden somit die Blätter des Baums.
   «Wozu braucht man Objekte?», werden Sie fragen. Betrachten wir hierzu einen Anwendungsfall, der auch maßgeblich der Objektentwicklung zugrunde lag, nämlich das Bestimmen der Länge einer Skiabfahrt. Wenn man z. B. in Zermatt von Hohtälli abfährt zum Gant, trifft man nach etwa der halben Strecke auf die Piste «Kelle», die die Abfahrt Gornergrat-Riffelalp einleitet. Für einen Kilometer laufen die Abfahrten zusammen weiter, dann gabeln sie sich zur Riffelalp und zum Gant. Auf der nicht maßstäblichen Skizze ist unschwer zu erkennen, dass hier insgesamt vier Abfahrten (Hohtälli-Gant, Hohtälli-Riffelalp, Gornergrat-Gant und Gornergrat-Riffelalp) beteiligt sind, für die man nur fünf Teilabschnitte, also Tracks, tatsächlich bearbeiten muss. Würde man die Information durch Kopieren der Teilabschnitte zu jeweils einer Abfahrt zusammenstellen, hätte man zwar nur vier Tracks, aber dafür würde der Mittelteil vier Mal auftreten. Wenn man nach Fertigstellung der Arbeiten einen Fehler in diesem Mittelteil entdeckt, muss man vier Abfahrten berichtigen. Hat man statt dessen vier Objekte erzeugt, die auf die zugehörigen Teilabschnitte verweisen, ändern sich die betroffenen Objekte beim Berichtigen des einen Tracks automatisch.
   Objektreferenzen sind, was der Name so schön sprechend sagt, Referenzen auf Objekte. Stellen Sie sich vor, dass unsere Abfahrt Hohtälli-Gant aus den Pisten «White Hare» und «Grünsee» besteht, wobei die «White Hare» bereits zuvor als Objekt aus den Tracks «White Hare I» und «White Hare II», dem Mittelstück, zusammengestellt wurde. Damit können wir ein Objekt  «Abfahrt Hohtälli-Gant» bilden mittels einer Objektreferenz «Referenz: White Hare» und dem Track «Piste Grünsee». Hat man die Piste «Grünsee» zuvor bereits als Objekt definiert, stellt man die Abfahrt aus zwei Objektreferenzen zusammen.
   Objektreferenzen können auf beliebige Objekte zeigen, die keine Rekursion erzeugen, d. h. dass es keine Objektreferenzen auf direkte Vorfahren in der Objekthierarchie geben kann.
*
Objekte verfügen nur über sehr wenige Attribute, namentlich die Aktualität, die darstellungsrelevante Fachbedeutung, die Liste der Fachbedeutungen, die GUID, die Objekt-ID, die Objektlänge und die Vertikaldistanz (Höhenunterschied), sowie Name und Beschreibung. Der Name muss nicht eindeutig sein und kann jederzeit geändert werden.
   Objekte sind die Knoten des Baums und ohne Blätter (Tracks oder Objektreferenzen) nicht sinnvoll nutzbar. Tracks unterscheidet man durch die vorangestellte Track-ID, während Objektreferenzen durch die Bezeichnung «Referenz:» eingeleitet werden.
*
Objekte werden dem Baum hinzugefügt, indem ein Knoten, der «Bezugsknoten», selektiert und die Schaltfläche «Objekt» betätigt wird. Die Schaltfläche ist nur dann sensitiv, wenn der ausgewählte Knoten dies zulässt, d. h. keine Objektreferenzen oder Tracks aufweist. Neue Knoten können gegenüber dem aktuell selektierten Knoten als über-, untergeordnet oder gleichberechtigt eingefügt werden oder auch den Baum ab dem ausgewählten Knoten abwärts als Nachfahren erben, wodurch sich «vergessene» Gliederungsstufen einfügen lassen. Diese Option ist wegen der Möglichkeit, Objekte innerhalb des Baums zu verschieben, aber nur noch von nachrangiger Bedeutung. In diesem Dialog kann nicht nur der Name des neuen Knotens definiert sondern auch der des ausgewählten Knotens geändert werden.
*
Tracks werden zu Objekten hinzugefügt, indem sie aus einem Dialog ausgewählt werden, der nach den gültigen Regeln der Mehrfachselektion arbeitet. Tracks sind letztlich Fleisch und Blut der Objekte, da sie die messbaren Größen (Längen, Höhenunterschiede etc.) realisieren. Wird mehr als ein Track selektiert, so ergibt sich die Gesamtlänge des Objekts, die «Objektlänge», aus der Summe der Einzellängen eben dieser Tracks, gemessen über die nicht gelöschten Trackpunkte derselben in der jeweiligen Kartenprojektion unter Berücksichtigung der Höhenunterschiede. Dass die UTM-Kartenprojektion unter ungünstigen Umständen einen Fehler von 40 Zentimer auf einen Kilometer bedingt, können wir im Rahmen der Messgenauigkeit getrost vernachlässigen. Wichtiger ist da schon, dass die Tracks, die sich in der Summe möglichst fehlerfrei zu einem Objektmaß ergeben sollen, auch tatsächlich aneinanderstoßen. Um dies zu gewährleisten, sollten die Optionsschaltflächen «Ergebnis nach Lage sortieren» und «Ersetzen statt hinzufügen» angeschaltet sein. Bitte bedenken Sie, dass beim Aufstarten des Dialogs bereits diejenigen Tracks selektiert sind, die zum Objekt gehören, auch wenn sie ggf. gerade nicht sichtbar sind!  Wenn Sie den Dialog bestätigen, werden die Optionen ausgewertet und die angegebene Differenz dazu benutzt, den Abstand der nach Lage sortierten Tracks zu untersuchen. Wird die maximale Differenz überschritten, erfolgt eine Fehlermeldung und das Ergebnis wird nicht übernommen.
*
Textobjekte bilden einen Sonderfall des Objekts. Sie tragen allein Textinformationen und können so zur Illustration von Ergebnislisten dienen. Wenn Sie eine Position im Objektbaum ausgewählt haben, erzeugen Sie ein neues Textobjekt durch Betätigen der «Text» Schaltfläche. Im Dialog können Sie die Position festlegen, an der das Textobjekt in den Objektbaum eingetragen werden soll. Der Textobjektname sollte sprechend sein. Wenn Sie nur wenig Text haben, sollten Sie den Textobjektnamen und den Text identisch halten. Dies erreichen Sie mit den Schaltflächen «Kopieren» sowie «HTML-fett/kursiv/klein», die den Text mit der Kennung für eine entsprechende Formatierung in das Textfeld übernehmen. Die Auflistung «Zermatt an einem Tag» illustriert anschaulich, was die Textobjekte leisten können. Sie dokumenieren die Aufstiegshilfen, die naturgemäß nicht in die Gesamtzahl der Pistenkilometer einfließen dürfen.
*
Das Ändern der Objekthierarchie geschieht durch «Ziehen und Fallenlassen». Sie können Objekte anfassen und mit gedrückter Maustaste an einen anderen Ort verschieben. Das Programm überprüft, was für ein Knoten aktuell unter der Maus liegt. Besitzt der Knoten bereits Objektreferenzen oder Tracks, so wird das Objekt auf derselben Ebene vor das aktuelle Objekt verschoben. Das Kopieren von Objekten ist nicht möglich.
*
Sie löschen Objekte mit Hilfe der Schaltfläche unterhalb des Objektbaums. Dabei können Sie entscheiden, ob die untergeordneten Objekte ebenfalls gelöscht werden sollen, oder ob sie anderen Knoten zugeordnet werden, was Sie vor allem dann nutzen werden, wenn Sie versehentlich eine Hierarchiestufe zuviel gebildet haben. In diesem Fall weisen Sie die Kindknoten dem übergeordneten Objekt zu.

Objektfachbedeutungen bestimmen

Fachbedeutungen für Objekte lassen sich manuell vergeben oder anhand derjenigen der zugehörigen Tracks bestimmen. Hat man Tracks bereits mit Fachbedeutungen attributiert, kann GNavigia den Übertrag auf die Objekte vornehmen. Die Steuerung ist, wie man sich leicht vorstellen kann, wegen der Vielzahl der Bedingungen entsprechend undurchsichtig - und zurzeit auch noch nicht vollständig implementiert. Drei Parametergruppen bestimmen das Ergebnis der Berechnung, wobei die dritte Gruppe zurzeit allein hinsichtlich  der Festlegung «nur wenn eindeutig» implementiert ist.
  • Zu bearbeitende Objekte: Die Bestimmung der Objektfachbedeutungen kann über den gesamten Baum vorgenommen werden oder ab dem selektierten Knoten, dessen aktueller Pfad angegeben wird. Interessanter ist aber die Frage, was mit den Objektreferenzen geschehen soll, die selbst keine Fachbedeutung tragen sondern nur auf Objekte verweisen. Wird die Option zur Anwendung der Ergebnisse auf referenzierte Objekte eingeschaltet, werden auch die referenzierten Objekte bearbeitet.
  • Wenn bereits eine Fachbedeutung existiert, kann festgelegt werden, wie mit der neu ermittelten Fachbedeutung verfahren werden soll. Dabei beutet «untergeordnet hinzufügen», dass die Fachbedeutung an die Liste der Fachbedeutungen angehängt wird und damit die Darstellung des Objekts nicht verändert, während «übergeordnet hinzufügen» besagt, dass die Fachbedeutung an den Anfang der Liste rückt und damit die Darstellung des Objekts bestimmt.
  • Neue Fachbedeutungen werden nur dann in die Ergebnisse eingestellt, wenn sie der gewählten Bedingung gehorchen. Besteht ein Objekt aus mehreren Fachbedeutungen, so ist eine Zuordnung nicht eindeutig. Dabei kann die Frage, welche Fachbedeutung für das Objekt relevant ist, nicht ohne Kenntnis der Gesamtsituation entschieden werden. Nehmen wir wieder unser Beispiel mit den Skipisten: Eine Piste möge sich aus mehreren Tracks zusammensetzen, wovon 5% der Gesamtstrecke eine mörderische Buckelpiste ist und 95% flach wie die norddeutsche Tiefebene. Sie werden dieses Objekt doch nicht allen Ernstes als «besonders einfache Piste» markieren wollen, oder?

Objektfachbedeutungen löschen

Objektfachbedeutungen werden, wie andere Fachbedeutungen  auch, nicht pauschal gelöscht, sondern müssen mit der Auswahl aus der Liste der Fachbedeutungen übereinstimmen, da immer nur die angegebene Fachbedeutung aus der Liste der dem Objekt zugeordneten Fachbedeutungen entfernt wird.

Meldungen

Meldungen treten in der aktuellen Programmversion eher selten auf. Einer der Fälle ist die Ausgabe der Meldungen zum Export von Tracks, die als Information angesehen werden kann. ein weiterer Fall ist die Ausgabe doppelter Identifizierer (IDs), die vor allem dann von Interesse sein dürfte, wenn Sie von Hand in die Datendateien eingegriffen oder Daten über einen Datenbankzugriff bereitgestellt haben. GNavigia selbst sollte in dieser Hinsicht weitgehend fehlerfrei Arbeiten. Das Meldungsfenster wird bei Bedarf in den Vordergrund geschaltet.


Startseite, Impressum und Rahmen