zurück zu Peter&Basti's Userpage Index
Stand März 2018
Das RocDisplay macht vor allem Freude, wenn dieses durch RocRail auch automatisch angesteuert wird.
Durch die Entwicklung des Fahrplananzeigers werden auch die wesentlichen Daten für die Bahnsteigdisplays nun nativ in Rocrail vorbereitet. Dies ermöglicht eine neue Art der Informationsbereitstellung auf Basis der identischen Daten aus dem Fahrplananzeiger.
Grundlage ist prinzipiell der gleiche Demoplan wie im ersten Beispiel.
Folgende Anpassungen wurden durchgeführt:
Vorausgesetzt wird, dass der Fahrplananzeiger angelegt wurde, also mit Ortschaft und zugeordneten Bahnsteigblöcken, sowie alle zusätzlichen (Fake) Informationen eingetragen sind.
Aus den Bahnhofsblöcken werden durch Textvariablen folgende Informationen bereitgestellt:
%calleruserdata% ….. Die Abfahrtszeit inkl. allfälliger Verspätungen
%callertext% ………… Zugziel, Zwischenziele, Zusatzinformation (aus der FP Zeile)
%callerdesc% ……….. Zugnummer (aus dem FP)
Es werden getrennte Textfelder mit diesen Informationen versorgt, der %callertext% noch in ein zusätzliches Zwischenfeld, weil für den Bahnsteiganzeiger nur das Zugziel relevant und die weiteren Informationen welche nur für den FPA relevant sind, abgetrennt werden müssen.
Für die drei Bahnsteiggleise resultieren nun 9 Text-Update-Aktionen (3 Gleise x 3 Textfelder)
Diese Aktionen sind wie folgt in die Ortschaft einzutragen:
Somit sind alle Informationen für die Bahnsteiganzeiger bereits grundsätzlich vorhanden, in die Textfelder eingestellt und werden auch automatisch (jede Modellminute) synchron zum Fahrplananzeiger aktualisiert.
Hiermit das (hoffentlich) selbsterklärende Script:
<?xml version="1.0" encoding="UTF-8"?> <xmlscript> <!-- Dieses Script separiert das Fake Ziel aus dem Fahrplan-Textfeld --> <!-- und generiert aus der Zugnummer des FP für RocDisplay eine Anzeige mit Symbol und Nummer --> <!-- Die Zugnummer muss der Nomenklatur entsprechen--> <!-- Diese Script wird per Aktion aufgerufen, in den Textfeldern BB1-BA bis BB3-BA (Zwischentextfeld) bei Update --> <!-- (c) peter&basti 02/2018 --> <!-- 1. Separieren des Fake Zieles aus dem Text --> <vr id="%callerid%VAR" text="@%callerid%"/> <tx id="%callerid%-Z" format="@@0%callerid%VAR"/> <!-- (nur das Zugziel wird in das Textfeld xxxxx-Z ausgegeben) --> <!-- --> <!-- 2. Aufbereitung der Ausgabe auf RocDisplay mit Symbol und Nummer --> <!-- Abfrage erste Stelle der Zugnummer --> <vr id="%callerid%VAR-N0" text="@%callerid%-N" start="0" length="1"/> <if condition="@%callerid%VAR-N0 = S"> <then> <!-- Schnellbahn Symbol Schnellbahn B0 --> <vr id="%callerid%VAR-N1" text="{EB0}"/> <vr id="%callerid%VAR-N2" text="@%callerid%-N" start="1"/> <tx id="%callerid%-A" format="@%callerid%VAR-N1 @%callerid%VAR-N2 {F1}{T0L1F0} @%callerid%-Z {T1L0B10L1F2} @%callerid%-T {P}"/> <exit/> </then> </if> <!-- Abfrage erste drei Stellen der Zugnummer --> <vr id="%callerid%VAR-N0" text="@%callerid%-N" start="0" length="3"/> <if condition="@%callerid%VAR-N0 = REX"> <then> <!-- Regional-Express Symbol REX B7 --> <vr id="%callerid%VAR-N1" text="{EB7}"/> <vr id="%callerid%VAR-N2" text="@%callerid%-N" start="3"/> <tx id="%callerid%-A" format="@%callerid%VAR-N1 @%callerid%VAR-N2 {F1}{T0L1F0} @%callerid%-Z {T1L0B10L1F2} @%callerid%-T {P}"/> <exit/> </then> </if> <!-- Abfrage erste Stelle der Zugnummer --> <vr id="%callerid%VAR-N0" text="@%callerid%-N" start="0" length="1"/> <if condition="@%callerid%VAR-N0 = R"> <then> <!-- Regionalzug - nur Buchstabe R --> <vr id="%callerid%VAR-N1" text="R"/> <vr id="%callerid%VAR-N2" text="@%callerid%-N" start="1"/> <tx id="%callerid%-A" format="@%callerid%VAR-N1 @%callerid%VAR-N2 {F1}{T0L1F0} @%callerid%-Z {T1L0B10L1F2} @%callerid%-T {P}"/> <exit/> </then> </if> <!-- mit weiteren Abfragen beliebig erweiterbar für RJ, ICE, IC, westbahn, etc. fuer alle verfuegbaren Symbole --> </xmlscript>