Benutzer-Werkzeuge

Webseiten-Werkzeuge


de:traffic:timetable:makro

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

Nächste Überarbeitung
Vorherige Überarbeitung
de:traffic:timetable:makro [2018/09/15 12:34]
127.0.0.1 Externe Bearbeitung
— (aktuell)
Zeile 1: Zeile 1:
-====== Makros ====== 
- 
-Makros gibt es in Traffic sowohl in der [[de:​traffic:​vehicle_list:​start|Fahrzeugliste]] ([[de:​traffic:​vehicle_list:​vehicle_macro:​start|siehe auch dort]]) als auch im [[de:​traffic:​timetable:​start|Fahrplan]]. Sie haben allerdings jeweils etwas unterschiedliche Bedeutungen und werden noch unterschiedlicher gehandhabt. 
- 
-===== Verwendung ===== 
- 
-Im Fahrplan erleichtern sie z. B. die Zugbildung erheblich, wenn bestimmte Fahrzeuge oder Fahrzeuggruppen sich wiederholen. Was auch immer in der [[de:​traffic:​timetable:​motion:​start|Fahrzeugbewegung]] hinter [[de:​traffic:​timetable:​motion:​consist:​start|C=]] eingetragen werden kann, kann auch in einem Makro verwendet werden. 
- 
-Ein einmal definiertes Makro kann beliebig oft in einem Fahrplan eingesetzt werden, aber natürlich nur in Zeilen hinter seiner Definition. 
- 
-===== Definition ===== 
- 
-Die Definiton eines Makros erfolgt auf einer dieser Weisen: 
- 
-<​code>​$DEF <Name des Makros>​=<​Inhalt des Makros></​code>​ 
- 
-<​code>​$DEFINE <Name des Makros>​=<​Inhalt des Makros></​code>​ 
- 
-<​code>​$DEFINE_MACRO <Name des Makros>​=<​Inhalt des Makros></​code>​ 
- 
-In der Praxis dürfte sich die erste, kürzeste Schreibweise durchsetzen,​ die Funktionsweisen sind aber gleich. 
- 
-Konkret sähe es beispielsweise so aus: 
- 
-<​code>​$DEF V188=DB_V188R|V188~SO</​code>​ 
- 
-Wann immer nun in einer Fahrzeugreihung oder einem anderen Makro V188 eingetragen wird, löst Traffic es zu seinem eigentlichen Inhalt auf, also zu einer der beiden aus der Fahrzeugliste übernommenen V188ern. 
- 
-Wenn ein Makro eine Reihe von Fahrzeugen enthält, kann diese von der [[de:​traffic:​timetable:​motion:​direction|Fahrtrichtung]] unabhängig gemacht werden, indem hinter dem Gleichzeichen entweder ein Kleiner- oder ein Größer-Zeichen eingesetzt wird. Zum Beispiel: 
- 
-<​code>​$DEF DB_624=<​BR624OL~LIP,​BR924O~LIP,​BR624O~LIP</​code>​ 
- 
-Soll nur ein Teil des Makros fahrtrichtungsunabhängig sein, wird dieser in Klammern gesetzt und das Kleiner- bzw. Größerzeichen mit in die Klammer übernommen. 
- 
-<​code>​$DEF TEE_WR=(<​ARDUMH105L,​WRUMH132_TEEL)|(>​ARDUMH105,​WRUMH132_TEE)|ARUMZ217BL|ARUMZ217B</​code>​ 
- 
-Makros können, wie gesagt, alles enthalten, was auch eine Fahrzeugreihung in einer Bewegungszeile enthalten kann, seien es zufällige Fahrzeugauswahlen,​ seien es Fahrzeuggruppen,​ seien es Makros oder beliebige Kombinationen. Man kann z. B. bestimmte Wagenbauarten in einem Makro zusammenfassen,​ dieses Makro in einem Makro einsetzen, das einen Zug definiert, das Zugmakro wiederum in ein anderes Makro eintragen, das andere ähnliche Zugreihungen enthält usw. 
- 
-Man kann aber auch Makros überschreiben,​ ihnen also einen neuen Inhalt geben, wenn der alte Inhalt im Laufe des Fahrplans nicht mehr gebraucht wird – und man kann Makros sogar in sich selbst verwenden. 
- 
-<​code>​$DEF Schuerzenwagenzug=DRG_AB4U38_2C,​(3-5)*DRG_C4U38_2CL|DRG_C4U38_2C 
-$DEF Schuerzenwagenzug=DRG_PW4U37,​Schuerzenwagenzug</​code>​ 
- 
-Oder auch mit nachträglicher Richtungsunabhängigkeit:​ 
- 
-<​code>​$DEF Schuerzenwagenzug=DRG_AB4U38_2C,​(3-5)*DRG_C4U38_2CL|DRG_C4U38_2C 
-$DEF Schuerzenwagenzug=DRG_PW4U37,​(<​Schuerzenwagenzug)|(>​Schuerzenwagenzug)</​code>​ 
- 
-Makros dürfen an beliebiger Stelle des Fahrplans definiert werden, aber immer vor ihrer Verwendung. 
- 
-===== Zu beachten ===== 
- 
-Bestimmte Zeichen sollten in Makronamen nicht verwendet werden. Sie dürfen zwar mit Ziffern anfangen und komplett aus Ziffern bestehen, Umlaute sind aber beispielsweise nach Möglichkeit zu vermeiden. 
- 
-===== Besondere Verwendungszwecke ===== 
- 
-Makros können nicht nur Fahrzeuge enthalten, sondern auch [[de:​traffic:​timetable:​foreground_background|Vorder- und Hintergrundbilder]] oder [[de:​traffic:​timetable:​additional_parameters|Zusätzliche Parameter]]. Auch diese können verschachtelt werden, so kann in einem Makro eine Vordergrundsequenz definiert werden, in einem zweiten eine Hintergrundsequenz,​ und ein drittes vereint die beiden zu einem Zusätzlichen Parameter. 
- 
-In Makros können sogar [[de:​traffic:​timetable:​pool|POOLs]] eingetragen werden. Hierbei ist aber darauf zu achten, daß in allen eingetragenen POOLs tatsächlich Bewegungen stattfinden. Andernfalls gibt Traffic eine Fehlermeldung aus, daß ein POOL nicht gefunden wurde. 
- 
-Zu erwähnen wäre hier noch die [[de:​traffic:​timetable:​include_require|Einbindung externer Fahrpläne mittels $INCLUDE oder $REQUIRE]]. Man kann in solchen Fahrplänen Makros definieren, diese Fahrpläne dann in dem Fahrplan einbinden, der aktuell in Traffic laufen soll, und die Makros nutzen, als stünden sie im aktuellen Fahrplan. 
  
de/traffic/timetable/makro.1537007680.txt.gz · Zuletzt geändert: 2018/09/15 12:34 von 127.0.0.1