This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
en:traffic:timetable:makro [2018/09/23 13:08] bahnfrank65 [Macros] |
en:traffic:timetable:makro [2018/09/23 13:19] (current) bahnfrank65 [Besondere Verwendungszwecke] |
||
---|---|---|---|
Line 3: | Line 3: | ||
There are macros in Traffic both in the [[en:traffic:vehicle_list:start|vehicle list]] ([[en:traffic:vehicle_list:vehicle_macro:start|see also there]]) and in [[en:traffic:timetable:start|timetable]]. However, they each have slightly different meanings and are handled even more differently. | There are macros in Traffic both in the [[en:traffic:vehicle_list:start|vehicle list]] ([[en:traffic:vehicle_list:vehicle_macro:start|see also there]]) and in [[en:traffic:timetable:start|timetable]]. However, they each have slightly different meanings and are handled even more differently. | ||
- | ==== Verwendung ==== | + | ==== Usage ==== |
- | Im Fahrplan erleichtern sie z. B. die Zugbildung erheblich, wenn bestimmte Fahrzeuge oder Fahrzeuggruppen sich wiederholen. Was auch immer in der [[en:traffic:timetable:motion:start|Fahrzeugbewegung]] hinter [[en:traffic:timetable:motion:consist:start|C=]] eingetragen werden kann, kann auch in einem Makro verwendet werden. | + | In the timetable they facilitate z. As the train formation considerably when certain vehicles or vehicle groups are repeated. Whatever can be entered in [[en:traffic:timetable:motion:start|vehicle motion]] after [[en:traffic:timetable:motion:consist:start|C =]] can also be used in a macro. |
- | Ein einmal definiertes Makro kann beliebig oft in einem Fahrplan eingesetzt werden, aber natürlich nur in Zeilen hinter seiner Definition. | + | Once a macro has been defined, it can be used as often as required in a timetable, but of course only in lines behind its definition. |
==== Definition ==== | ==== Definition ==== | ||
- | Die Definiton eines Makros erfolgt auf einer dieser Weisen: | + | The definition of a macro is done in one of these ways: |
- | <code>$DEF <Name des Makros>=<Inhalt des Makros></code> | + | <code>$DEF <name of macro>=<content of the macro></code> |
- | <code>$DEFINE <Name des Makros>=<Inhalt des Makros></code> | + | <code>$DEFINE <name of macro>=<content of the macro></code> |
- | <code>$DEFINE_MACRO <Name des Makros>=<Inhalt des Makros></code> | + | <code>$DEFINE_MACRO <name of macro>=<content of the macro></code> |
- | In der Praxis dürfte sich die erste, kürzeste Schreibweise durchsetzen, die Funktionsweisen sind aber gleich. | + | In practice, the first, shortest spelling is likely to prevail, but the functioning is the same. |
- | Konkret sähe es beispielsweise so aus: | + | Specifically, for example, it would look like this: |
<code>$DEF V188=DB_V188R|V188~SO</code> | <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. | + | Whenever V188 is entered in a vehicle series or another macro, Traffic triggers it to its actual content, ie to one of the two V188ers taken from the vehicle list. |
- | Wenn ein Makro eine Reihe von Fahrzeugen enthält, kann diese von der [[en: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: | + | If a macro contains a number of vehicles, it can be made independent of the [[en:traffic:timetable:motion:direction|travel]] by inserting either a small or a greater sign after the equation. For example: |
<code>$DEF DB_624=<BR624OL~LIP,BR924O~LIP,BR624O~LIP</code> | <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. | + | If only a part of the macro is to be independent of the direction of travel, this is placed in parentheses and the smaller or larger character is included in the parenthesis. |
<code>$DEF TEE_WR=(<ARDUMH105L,WRUMH132_TEEL)|(>ARDUMH105,WRUMH132_TEE)|ARUMZ217BL|ARUMZ217B</code> | <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. | + | Macros can, as I said, contain everything that can also contain a row of vehicles in a movement line, be it random vehicle selections, be it vehicle groups, macros or any combinations. You can z. For example, if you combine certain car types in one macro, use this macro in a macro that defines a train, enter the train macro into another macro that contains other similar trainings, and so on. |
- | 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. | + | But you can also override macros, giving them new content when the old content is no longer needed in the course of the roadmap - and you can even use macros in yourself. |
<code>$DEF Schuerzenwagenzug=DRG_AB4U38_2C,(3-5)*DRG_C4U38_2CL|DRG_C4U38_2C | <code>$DEF Schuerzenwagenzug=DRG_AB4U38_2C,(3-5)*DRG_C4U38_2CL|DRG_C4U38_2C | ||
$DEF Schuerzenwagenzug=DRG_PW4U37,Schuerzenwagenzug</code> | $DEF Schuerzenwagenzug=DRG_PW4U37,Schuerzenwagenzug</code> | ||
- | Oder auch mit nachträglicher Richtungsunabhängigkeit: | + | Or also with subsequent directional independence: |
<code>$DEF Schuerzenwagenzug=DRG_AB4U38_2C,(3-5)*DRG_C4U38_2CL|DRG_C4U38_2C | <code>$DEF Schuerzenwagenzug=DRG_AB4U38_2C,(3-5)*DRG_C4U38_2CL|DRG_C4U38_2C | ||
$DEF Schuerzenwagenzug=DRG_PW4U37,(<Schuerzenwagenzug)|(>Schuerzenwagenzug)</code> | $DEF Schuerzenwagenzug=DRG_PW4U37,(<Schuerzenwagenzug)|(>Schuerzenwagenzug)</code> | ||
- | Makros dürfen an beliebiger Stelle des Fahrplans definiert werden, aber immer vor ihrer Verwendung. | + | Macros may be defined anywhere on the timetable, but always before they are used. |
- | ==== Zu beachten ==== | + | ==== Attention ==== |
- | 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. | + | Certain characters should not be used in macro names. Although they may begin with digits and consist entirely of numbers, umlauts are to be avoided as far as possible, for example. |
+ | ==== Special Uses ==== | ||
- | ==== Besondere Verwendungszwecke ==== | + | Macros can not only contain vehicles, but also [[en:traffic:timetable:foreground_background|foreground and background images]] or [[en:traffic:timetable:additional_parameters|additional parameters]]. These can also be nested, so in one macro a foreground sequence can be defined, in a second a background sequence, and a third unites the two into an additional parameter. |
- | Makros können nicht nur Fahrzeuge enthalten, sondern auch [[en:traffic:timetable:foreground_background|Vorder- und Hintergrundbilder]] oder [[en: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 macros, even [[en:traffic:timetable:pool|POOLs]] can be entered. However, it must be ensured that movements take place in all registered POOLs. Otherwise, Traffic will give an error message that a POOL was not found. |
- | In Makros können sogar [[en: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. | + | Worth mentioning here is the [[en:traffic:timetable:include_require|integration of external timetables using $INCLUDE or $REQUIRE]]. You can define macros in such timetables, then include these timetables in the timetable that should currently run in traffic, and use the macros as if they were in the current timetable. |
- | + | ||
- | Zu erwähnen wäre hier noch die [[en: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. | + | |