Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
stellwerksim:erbauer:zugbau:namensmuster [2015/03/02 11:46] – Externe Bearbeitung 127.0.0.1 | stellwerksim:erbauer:zugbau:namensmuster [2022/06/04 23:55] (aktuell) – Rechtschreibung Lenkradfreek | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ==== Namensmuster ==== | + | {{indexmenu_n> |
+ | ====== Namensmuster | ||
- | Mit dem Namensmuster wird jedem erzeugten Zug ein Name zugewiesen. | + | Mit dem Namensmuster wird jedem erzeugten Zug ein Name zugewiesen. |
- | Die Zugnamen bzw. die Namensmuster zu deren Berechnung können entweder im Feld Namensmuster oder dem [[erbauer:zuege: | + | Die Zugnamen bzw. die Namensmuster zu deren Berechnung können entweder im Feld Namensmuster oder dem [[stellwerksim: |
+ | |||
+ | <note warning> | ||
+ | TFN65380+$ti*2 ist also falsch geschrieben und muss korrekterweise TFN 65380+$ti*2 lauten, um keine Probleme im ZSL zu verursachen.</ | ||
Mit folgenden Variablen kann gerechnet werden: | Mit folgenden Variablen kann gerechnet werden: | ||
^ Variable ^ Bedeutung ^ | ^ Variable ^ Bedeutung ^ | ||
- | ^ $i | Laufende Nummer über alle Züge des aktuellen Scriptlaufs (von 0 an gezählt) | | + | ^ $zi | Laufende Nummer über alle erzeugten |
- | ^ $zi | Laufende Nummer über alle Züge des Zugtemplates (von 0 an gezählt) (Verwendung im Namensmusterfeld) | | + | ^ $ti | Laufende Nummer über alle erzeugten |
- | ^ $ti | Laufende Nummer über alle Züge des aktuellen takt()-Befehls (von 0 an gezählt) (Verwendung nur im Taktbefehl) | | + | ^ $zid | Die vom System vergebene eindeutige ID des Zuges (ungleich der Zugtemplate-ID (TID)) | |
- | ^ $zid | Die vom System vergebene eindeutige ID des Zuges (ungleich der Template ZID) | | + | |
^ $sec | Die Minutenzahl seit 0:00, welche der Abfahrtszeit am ersten Halt im ersten Stellwerk entspricht. | | ^ $sec | Die Minutenzahl seit 0:00, welche der Abfahrtszeit am ersten Halt im ersten Stellwerk entspricht. | | ||
^ $time | Abfahrtszeit des Zuges am Referenzbahnsteig als vierstellige Zahl (z. B. 1252) | | ^ $time | Abfahrtszeit des Zuges am Referenzbahnsteig als vierstellige Zahl (z. B. 1252) | | ||
- | Zusätzlich zu den Variablen | + | Zusätzlich zu den variablen |
<note warnung> | <note warnung> | ||
- | <note gefahr> | + | <note gefahr> |
+ | |||
+ | Wird ein %-Zeichen eingefügt, wird alles dahinter im Fahrplan nicht dargestellt. | ||
+ | |||
+ | ==== Beispiele ==== | ||
+ | |||
+ | '' | ||
+ | RB 12101 | ||
+ | |||
+ | '' | ||
+ | RB 12101 | ||
+ | RB 12103 | ||
+ | RB 12105 | ||
+ | |||
+ | '' | ||
+ | RB 12101 | ||
+ | RB 12103 | ||
+ | RB 12105 | ||
+ | |||
+ | '' | ||
+ | S 1 % A-B 0915 | ||
+ | S 1 % A-B 0935 | ||
+ | S 1 % A-B 0955 | ||
+ | S 1 % A-B 1015 | ||
+ | S 1 % A-B 1035 | ||
+ | \\ | ||
+ | |||
+ | ===== Einbindung des Namensmusters im ZugScript ===== | ||
+ | |||
+ | Im Feld Namensmuster kann ein Namensmuster festgelegt werden, welches dann für alle Züge des Zugtemplates gilt. | ||
+ | |||
+ | Alternativ kann das Namensmuster auch direkt im [[stellwerksim: | ||
+ | |||
+ | * Das Feld Namensmuster der [[stellwerksim: | ||
+ | * Es muss für alle takt()-Befehle ein Namensmuster angegeben werden. | ||
+ | * In jeder Takt-Befehl-Zeile kann der Parameter NAME nur einmal vorkommen | ||
+ | |||
+ | Bei der Verwendung von Namensmustern im takt()-Befehl sollte als Variable für die laufende Nummer '' | ||
+ | |||
+ | ==== Beispiele ==== | ||
+ | |||
+ | Im folgenden Beispiel werden die nur zweistündig verkehrenden Zwischenzüge (06:30...) in das Nummernschema der stündlich verkehrenden Züge eingereiht: | ||
+ | takt(60, | ||
+ | takt(120, | ||
+ | |||
+ | Es würden folgende Züge entstehen: | ||
+ | RB 2000 (06:00) ($ti = 0) | ||
+ | RB 2004 (07:00) ($ti = 1) | ||
+ | RB 2008 (08:00) ($ti = 2) | ||
+ | RB 2012 (09:00) ($ti = 3) | ||
+ | RB 2016 (10:00) ($ti = 4) | ||
+ | RB 2020 (11:00) ($ti = 5) | ||
+ | |||
+ | RB 2002 (06:30) ($ti = 0) | ||
+ | RB 2010 (08:30) ($ti = 1) | ||
+ | RB 2018 (10:30) ($ti = 2) | ||
+ | |||
+ | Die Verwendung von **$zi** würde hier unerwartete Ergebnisse produzieren: | ||
+ | takt(60, | ||
+ | takt(120, | ||
+ | |||
+ | Es würden folgende Züge entstehen: | ||
+ | RB 2000 (06:00) ($zi = 0) | ||
+ | RB 2004 (07:00) ($zi = 1) | ||
+ | RB 2008 (08:00) ($zi = 2) | ||
+ | RB 2012 (09:00) ($zi = 3) | ||
+ | RB 2016 (10:00) ($zi = 4) | ||
+ | RB 2020 (11:00) ($zi = 5) | ||
+ | |||
+ | RB 2050 (06:30) ($zi = 6) !!! | ||
+ | RB 2058 (08:30) ($zi = 7) !!! | ||
+ | RB 2066 (10:30) ($zi = 8) !!! | ||
+ | \\ | ||
+ | |||
+ | Die laufenden Nummern beziehen sich auf die im Zugscriptlauf erzeugten Züge und sind damit nicht unbedingt zeitlich geordnet: | ||
+ | takt(60, | ||
+ | |||
+ | RB 2000 (10:00) ($zi = 0) | ||
+ | RB 2004 (05:00) ($zi = 1) | ||
+ | |||
+ | ===== Berechnungen auf Basis der Stunde ===== | ||
+ | Die folgenden Hinweise sollen denen dienen, die sich schon mit den grundlegenden Funktionen des Namensmusters vertraut gemacht haben und auch vor komplexeren Namensmustern nicht zurückschrecken. | ||
+ | |||
+ | Die Division (/) ist normalerweise beim Namensmuster nicht zugelassen, da hier Zahlen entstehen können, die keine ganze Zahl sind. Diese sind als Zugname nicht zulässig. In Zusammenhang mit dem Befehl floor() ist sie jedoch zulässig. Dieser Befehl schneidet die Nachkommastellen ab, so dass sich immer ganze Zahlen ergeben. | ||
+ | Bei der Nutzung der Division sind zwei Punkte zu beachten: | ||
+ | * Die Division darf nur __innerhalb__ des floor()-Befehls erfolgen. | ||
+ | * Es darf nicht zweimal das gleiche Ergebnis entstehen. | ||
+ | |||
+ | Sinnvoll ist diese Möglichkeit z. B., wenn der Name anhand der Stunde berechnet werden soll, zu der er verkehrt. Der Befehl '' | ||
- | Wird ein %-Zeichen eingefügt wird alles dahinter im Fahrplan nicht dargestellt. | + | Das Namensmuster '' |
+ | IC 803 (07:05) | ||
+ | IC 811 (09:05) | ||
+ | IC 819 (11:05) | ||
+ | IC 843 (17:05) | ||
+ | IC 851 (19:05) | ||
+ | IC 859 (21:05) | ||
+ | Am Beispiel des ersten Zuges sei das Verfahren erläutert: | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | Weitere Informationen zu diesem Berechnugnsverfahren gibt es im [[http:// | ||
{{tag> | {{tag> |