GNavigia/Gina

Ob­jek­te, Mel­dun­gen und Son­der­funk­tio­nen

Ob­jek­te: Sinn und Ge­brauch

Wir ha­ben bis­her nur je­nen Teil des Pro­gramms be­trach­tet, der die Ma­ni­pu­la­ti­on und die Vi­sua­li­sie­rung von Tracks um­fasst, wir kom­men jetzt zu dem der Ob­jekt­bil­dung. Ob­jek­te im Sin­ne die­ses Pro­gramms sind die­je­ni­gen GPS-Ele­men­te, die in der streng hier­ar­chi­schen Baum­struk­tur im Rei­ter Ob­jek­te an­ge­legt wer­den können. Ob­jek­te (können) be­ste­hen aus Ob­jek­ten, Text­ob­jek­ten, Ob­jek­tre­fe­ren­zen und Tracks. Streng hier­ar­chisch be­deu­tet, dass es nur ge­nau ei­nen obers­ten Kno­ten ge­ben kann.
Ob­jek­te fas­sen letzt­lich Tracks zu­sam­men, die so un­ter ei­nem an­de­ren Na­men präsen­tiert oder aus­ge­wer­tet wer­den können. Ist ei­nem Ob­jekt ein Track oder ei­ne Ob­jek­tre­fe­renz zu­ge­ord­net, kann ihm kein Ob­jekt mehr zu­ge­ord­net wer­den. Tracks und Ob­jek­tre­fe­ren­zen bil­den so­mit die Blätter des Baums.
«Wo­zu braucht man Ob­jek­te?», wer­den Sie fra­gen. Be­trach­ten wir hier­zu ei­nen An­wen­dungs­fall, der auch maßgeb­lich der Ob­jekt­ent­wick­lung zu­grun­de lag, nämlich das Be­stim­men der Länge ei­ner Ski­ab­fahrt. Wenn man z. B. in Zer­matt von Hohtälli abfährt zum Gant, trifft man nach et­wa der hal­b­en Stre­cke auf die Pis­te «Kel­le», die die Ab­fahrt Gor­ner­grat-Rif­fel­alp ein­lei­tet. Für ei­nen Ki­lo­me­ter lau­fen die Ab­fahr­ten zu­sam­men wei­ter, dann ga­beln sie sich zur Rif­fel­alp und zum Gant. Auf der nicht maßstäbli­chen Skiz­ze ist un­schwer zu er­ken­nen, dass hier ins­ge­samt vier Ab­fahr­ten (Hohtälli-Gant, Hohtälli-Rif­fel­alp, Gor­ner­grat-Gant und Gor­ner­grat-Rif­fel­alp) be­tei­ligt sind, für die man nur fünf Teil­ab­schnit­te, al­so Tracks, tatsächlich be­ar­bei­ten muss. Würde man die In­for­ma­ti­on durch Ko­pie­ren der Teil­ab­schnit­te zu je­weils ei­ner Ab­fahrt zu­sam­men­stel­len, hätte man zwar nur vier Tracks, aber dafür würde der Mit­tel­teil vier Mal auf­tre­ten. Wenn man nach Fer­tig­stel­lung der Ar­bei­ten ei­nen Feh­ler in die­sem Mit­tel­teil ent­deckt, muss man vier Ab­fahr­ten be­rich­ti­gen. Hat man statt des­sen vier Ob­jek­te er­zeugt, die auf die zu­gehöri­gen Teil­ab­schnit­te ver­wei­sen, ändern sich die be­trof­fe­nen Ob­jek­te beim Be­rich­ti­gen des ei­nen Tracks au­to­ma­tisch.
Ob­jek­tre­fe­ren­zen sind, was der Na­me so schön spre­chend sagt, Re­fe­ren­zen auf Ob­jek­te. Stel­len Sie sich vor, dass un­se­re Ab­fahrt Hohtälli-Gant aus den Pis­ten «Whi­te Ha­re» und «Grünsee» be­steht, wo­bei die «Whi­te Ha­re» be­reits zu­vor als Ob­jekt aus den Tracks «Whi­te Ha­re I» und «Whi­te Ha­re II», dem Mit­telstück, zu­sam­men­ge­stellt wur­de. Da­mit können wir ein Ob­jekt «Ab­fahrt Hohtälli-Gant» bil­den mit­tels ei­ner Ob­jek­tre­fe­renz «Re­fe­renz: Whi­te Ha­re» und dem Track «Pis­te Grünsee». Hat man die Pis­te «Grünsee» zu­vor be­reits als Ob­jekt de­fi­niert, stellt man die Ab­fahrt aus zwei Ob­jek­tre­fe­ren­zen zu­sam­men.
Ob­jek­tre­fe­ren­zen können auf be­lie­bi­ge Ob­jek­te zei­gen, die kei­ne Re­kur­si­on er­zeu­gen, d. h. dass es kei­ne Ob­jek­tre­fe­ren­zen auf di­rek­te Vor­fah­ren in der Ob­jekt­hier­ar­chie ge­ben kann.
Track­re­fe­ren­zen können in ih­rer Be­deu­tung Tracks gleich­ge­stellt wer­den, al­ler­dings kann man den Na­men des Tracks für die spe­zi­el­le An­for­de­rung über­schrei­ben. Hier­zu er­folgt ei­ne Ab­fra­ge, be­vor die Re­fe­renz hin­zu­gefügt wird. Ins­be­son­de­re für Lis­ten von HTML-Aus­ga­ben ist die Um­be­nen­nung für die Aus­ga­be manch­mal sinn­voll.
*
Track­re­fe­ren­zen ent­ste­hen ana­log zu Ob­jek­tre­fe­ren­zen da­durch, dass man aus der Aus­wahl, die man über die Schalt­fläche «Re­fe­renz» er­reicht, nicht ein Ob­jekt son­dern ei­nen Track auswählt. Das setzt vor­aus, dass der zu re­fe­ren­zie­ren­de Track be­reits un­ter ei­nem Ob­jekt ein­ge­tra­gen ist. Track- und Ob­jek­tre­fe­ren­zen sind aber auch nur sinn­voll, wenn sie gewöhn­li­che Aus­wer­tun­gen the­ma­tisch «ver­fei­nern», so­dass die so ge­nut­zen Tracks prak­tisch im­mer un­ter Ob­jek­ten auf­tre­ten soll­ten. Ist das nicht der Fall, bil­det man ein Pro-Forma-Objekt, un­ter dem al­le zu re­fe­ren­zie­ren­den Tracks zu­sam­men­ge­fasst sind. Tre­ten Tracks und Ob­jek­tre­fe­ren­zen ge­mischt auf, wird das beim La­den der Da­tei als Hin­weis aus­ge­ge­ben. Schädlich ist das zwar nicht, aber das Pro­gramm mag es nicht, weil nur Re­fe­ren­zen ei­ne sau­be­re und ein­heit­li­che Aus­ga­be als HTML-Datei ga­ran­tie­ren.
*
Ob­jek­te verfügen nur über sehr we­ni­ge At­tri­bu­te, na­ment­lich die Ak­tua­lität, die dar­stel­lungs­re­le­van­te Fach­be­deu­tung, die Lis­te der Fach­be­deu­tun­gen, die GUID, die Ob­jekt-ID, die Ob­jektlänge und die Ver­ti­kal­di­stanz (Höhen­un­ter­schied), so­wie Na­me und Be­schrei­bung. Der Na­me muss nicht ein­deu­tig sein und kann je­der­zeit geändert wer­den.
Ob­jek­te sind die Kno­ten des Baums und oh­ne Blätter (Tracks oder Ob­jek­tre­fe­ren­zen) nicht sinn­voll nutz­bar. Tracks un­ter­schei­det man durch die vor­an­ge­stell­te Track-ID, während Ob­jek­tre­fe­ren­zen durch die Be­zeich­nung «Re­fe­renz:» ein­ge­lei­tet wer­den.
*
Ob­jek­te wer­den dem Baum hin­zu­gefügt, in­dem ein Kno­ten, der «Be­zugs­kno­ten», se­lek­tiert und die Schalt­fläche «Ob­jekt» betätigt wird. Die Schalt­fläche ist nur dann sen­si­tiv, wenn der aus­gewähl­te Kno­ten dies zulässt, d. h. kei­ne Ob­jek­tre­fe­ren­zen oder Tracks auf­weist. Neue Kno­ten können ge­genüber dem ak­tu­ell se­lek­tier­ten Kno­ten als über-, un­ter­ge­ord­net oder gleich­be­rech­tigt ein­gefügt wer­den. Da Kno­ten mitt­ler­wei­le sehr ein­fach ver­scho­ben wer­den können und auch Un­do/Re­do da­durch nicht ein­fa­cher wird, wur­de die Op­ti­on "Als neu­er Zweig des Bau­mes ab hier" auf­ge­ge­ben. Dafür kann ein gleich­be­rech­tig­ter Kno­ten vor oder nach dem ak­tu­ell se­lek­tier­ten Kno­ten ein­gefügt wer­den. «Ver­ges­se­ne» Glie­de­rungs­stu­fen las­sen sich so recht ein­fach einfügen. Der Dia­log un­ter­schei­det die Op­tio­nen nach ih­rer Verfügbar­keit und graut sol­che aus, die ungülti­ge Kom­bi­na­tio­nen von Tracks und Ob­jek­ten er­ge­ben würden.
*
Tracks wer­den zu Ob­jek­ten hin­zu­gefügt, in­dem sie aus ei­nem Dia­log aus­gewählt wer­den, der nach den gülti­gen Re­geln der Mehr­fach­s­e­lek­ti­on ar­bei­tet. Tracks sind letzt­lich Fleisch und Blut der Ob­jek­te, da sie die mess­ba­ren Größen (Längen, Höhen­un­ter­schie­de etc.) rea­li­sie­ren. Wird mehr als ein Track se­lek­tiert, so er­gibt sich die Ge­samtlänge des Ob­jekts, die «Ob­jektlänge», aus der Sum­me der Ein­zellängen eben die­ser Tracks, ge­mes­sen über die nicht gelöschten Track­punk­te der­sel­ben in der je­wei­li­gen Kar­ten­pro­jek­ti­on un­ter Berück­sich­ti­gung der Höhen­un­ter­schie­de. Dass die UTM-Kar­ten­pro­jek­ti­on un­ter ungüns­ti­gen Umständen ei­nen Feh­ler von 40 Zen­ti­mer auf ei­nen Ki­lo­me­ter be­dingt, können wir im Rah­men der Mess­ge­nau­ig­keit ge­trost ver­nachlässi­gen. Wich­ti­ger ist da schon, dass die Tracks, die sich in der Sum­me möglichst feh­ler­frei zu ei­nem Ob­jekt­maß er­ge­ben sol­len, auch tatsächlich an­ein­an­der­stoßen. Um dies zu gewähr­leis­ten, soll­ten die Op­ti­ons­schalt­flächen «Er­geb­nis nach La­ge sor­tie­ren» und «Er­set­zen statt hin­zufügen» an­ge­schal­tet sein. Bit­te be­den­ken Sie, dass beim Auf­star­ten des Dia­logs be­reits die­je­ni­gen Tracks se­lek­tiert sind, die zum Ob­jekt gehören, auch wenn sie ggf. ge­ra­de nicht sicht­bar sind! Wenn Sie den Dia­log bestäti­gen, wer­den die Op­tio­nen aus­ge­wer­tet und die an­ge­ge­be­ne Dif­fe­renz da­zu be­nutzt, den Ab­stand der nach La­ge sor­tier­ten Tracks zu un­ter­su­chen. Wird die ma­xi­ma­le Dif­fe­renz über­schrit­ten, er­folgt ei­ne Feh­ler­mel­dung und das Er­geb­nis wird nicht über­nom­men.
*
Text­ob­jek­te bil­den ei­nen Son­der­fall des Ob­jekts. Sie tra­gen al­lein Tex­t­in­for­ma­tio­nen und können so zur Il­lus­tra­ti­on von Er­geb­nis­lis­ten die­nen. Wenn Sie ei­ne Po­si­ti­on im Ob­jekt­baum aus­gewählt ha­ben, er­zeu­gen Sie ein neu­es Text­ob­jekt durch Betäti­gen der «Text» Schalt­fläche. Im Dia­log können Sie die Po­si­ti­on fest­le­gen, an der das Text­ob­jekt in den Ob­jekt­baum ein­ge­tra­gen wer­den soll. Der Text­ob­jekt­na­me soll­te spre­chend sein. Wenn Sie nur we­nig Text ha­ben, soll­ten Sie den Text­ob­jekt­na­men und den Text iden­tisch hal­ten. Dies er­rei­chen Sie mit den Schalt­flächen «Ko­pie­ren» so­wie «HTML-fet­t/­kur­si­v/klein», die den Text mit der Ken­nung für ei­ne ent­spre­chen­de For­ma­tie­rung in das Text­feld über­neh­men. Die Auf­lis­tung «Zer­matt an ei­nem Tag» il­lus­triert an­schau­lich, was die Text­ob­jek­te leis­ten können. Sie do­ku­me­nie­ren die Auf­stiegs­hil­fen, die na­tur­gemäß nicht in die Ge­samt­zahl der Pis­ten­ki­lo­me­ter ein­fließen dürfen.
*
Das Ändern der Ob­jekt­hier­ar­chie ge­schieht durch «Zie­hen und Fal­len­las­sen». Sie können Ob­jek­te an­fas­sen und mit ge­drück­ter Maustas­te an ei­nen an­de­ren Ort ver­schie­ben. Das Pro­gramm über­prüft, was für ein Kno­ten ak­tu­ell un­ter der Maus liegt. Be­sitzt der Kno­ten be­reits Ob­jek­tre­fe­ren­zen oder Tracks, so wird das Ob­jekt auf der­sel­ben Ebe­ne vor das ak­tu­el­le Ob­jekt ver­scho­ben. Das Ko­pie­ren von Ob­jek­ten ist nicht möglich.
*
Sie löschen Ob­jek­te mit Hil­fe der gleich­na­mi­gem Schalt­fläche. Da­bei können Sie ent­schei­den, ob die un­ter­ge­ord­ne­ten Ob­jek­te eben­falls gelöscht wer­den sol­len, oder ob sie an­de­ren Kno­ten zu­ge­ord­net wer­den, was Sie vor al­lem dann nut­zen wer­den, wenn Sie ver­se­hent­lich ei­ne Hier­ar­chie­stu­fe zu­viel ge­bil­det ha­ben. In die­sem Fall wei­sen Sie die Kind­kno­ten dem über­ge­ord­ne­ten Ob­jekt zu. Der Dia­log un­ter­schei­det die Op­tio­nen nach ih­rer Verfügbar­keit und graut sol­che aus, die ungülti­ge Kom­bi­na­tio­nen von Tracks und Ob­jek­ten er­ge­ben würden. Da­bei kann es zu der Si­tua­ti­on kom­men, dass «al­le löschen» die ein­zi­ge ver­blei­ben­de Möglich­keit ist. Auch auf die­sen Sach­ver­halt wer­den Sie per Dia­log hin­ge­wie­sen, da Sie die Ak­ti­on im­mer noch ab­bre­chen können. Nur in die­sem ei­nen Fall ist die ers­te Op­ti­on be­reits aus­gewählt. In al­len an­de­ren Fällen wird bei ei­ner ungülti­gen Aus­wahl die Schalt­fläche OK aus­ge­graut.

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.
*
Auch die Navigation schreibt Angaben zum Verbindungsauf- und -abbau in das Meldungsfenster, das daher heute nicht mehr über den Reiter «Meldungen» sondern «Navigation» zu erreichen ist.