hmclay Geschrieben Sonntag um 06:51 Uhr Geschrieben Sonntag um 06:51 Uhr I would like to have the function of "subroutine call & return" in 3D-Modellbahn Studios as implemented in other languages.
BahnLand Geschrieben Sonntag um 12:08 Uhr Geschrieben Sonntag um 12:08 Uhr Hallo / hello @hmclay, definiere im Modellbahn-Studio ein Benutzer-definiertes Ereignis und rufe dieses in einem anderen Ereignis mit der Aktion "Benutzer-definiertes Ereignis auslösen" auf. Define a user-defined event in the Train Studio and call it up in another event with the "User-defined event" action. Beachte aber bitte, dass das Verhalten einer Subroutinen mit Rückkehr zum Aufrufer nach Beendigung der Subroutine nur dann funktioniert, wenn die Subroutine (das Benutzer-definierte Ereignis) keine Aktion "Ausführung verzögern" enthält. Betrachte hierzu das beigefügte Anlagen-Beispiel: Please note, however, that the behavior of a subroutine with return to the caller after completion of the subroutine only works if the subroutine (the user-defined event) does not contain a "Defer execution" action. Please refer to the attached example: Subroutine Demo.mbp Schalte bitte das Ereignisprotokoll ein, um den Ablauf beim Drücken des obigen Buttons verfolgen zu können: Please activate the event trace to be able to follow the process when pressing the above button: Wird der Button aktiviert, ergibt sich der im obigen Bild links dargestellte Ablauf: Das Hauptereignis ruft das Benutzer-definierte Ereignis "Subroutine 1" auf, das wiederum ein weiteres Ereignis "Subroutine 2" aufruft. Nach Beendigung des jeweiligen Benutzer-definierten Ereignisses kehrt der Ablauf in das aufrufende Ereignis zurück und wird dort fortgesetzt. If the button is activated, the sequence shown in the above image on the left results: The main event calls the user-defined event "Subroutine 1", which in turn calls another event "Subroutine 2". Once the respective user-defined event has been completed, the sequence returns to the calling event and is continued there. Wir der Button deaktiviert, durchläuft das Benutzer-definierte Ereignis "Subroutine 1" eine Zeitverzögerung (siehe den Ablauf rechts). Diese bewirkt, dass das Ereignis "Subroutine 1" an dieser Stelle beendet und nach Ablauf der Wartezeit in einem neuen Prozess fortgesetzt wird. Die Beendigung der "Subroutine 1" bewirkt eine sofortige Rückkehr zum aufrufenden Hauptereignis, dessen Ablauf somit ohne Abwarten der Zeitverzögerung fortgesetzt und beendet wird (siehe die Uhrzeit [12:24:38]). Subroutine 1 wird dagegen erst nach Ablauf der Wartezeit 5 Sekunden später ([12:24:43]) fortgesetzt, wo das aufrufende Hauptereignis längst beendet ist. If the button is deactivated, the user-defined event "Subroutine 1" runs through a time delay (see the process on the right). This has the effect that the "Subroutine 1" event ends at this point and is continued in a new process after the delay time has elapsed. The termination of "Subroutine 1" causes an immediate return to the calling main event, whose process is thus continued and terminated without waiting for the time delay (see the time [12:24:38]). Subroutine 1, on the other hand, is only continued after the delay time has expired 5 seconds later ([12:24:43]), when the calling main event has long since ended. Die Nachbildung einer synchronen Subroutine mithilfe des Benutzer-definierte Ereignisses funktioniert also nur, wenn in der Subroutine keine Zeitverzögerung eíngebaut ist. The simulation of a synchronous subroutine using the user-defined event therefore only works if no time delay is built into the subroutine. Viele Grüße / many greetings BahnLand
EASY Geschrieben Sonntag um 12:50 Uhr Geschrieben Sonntag um 12:50 Uhr (bearbeitet) Hello, ... I deleted the text because I misinterpreted something... ... ich habe den Text gelöscht, da ich etwas falsch interpretiert habe... Gruß / greetings EASY Bearbeitet Sonntag um 12:55 Uhr von EASY
Goetz Geschrieben Sonntag um 12:58 Uhr Geschrieben Sonntag um 12:58 Uhr Hallo @EASY, as implemented in other languages heißt frei übersetzt: "So, wie ich es aus anderen Sprachen kenne." Er will schon bei Lua bleiben.
EASY Geschrieben Sonntag um 13:24 Uhr Geschrieben Sonntag um 13:24 Uhr Hallo, @Goetz, ... das habe ich dann auch gemerkt und habe den Text gelöscht... Du warst nur schneller. Gruß EASY
hmclay Geschrieben Dienstag um 21:19 Uhr Autor Geschrieben Dienstag um 21:19 Uhr I would like to have subroutine call/return in 3D Train Studio . Guessing it may be quite an involved undertaking. But sure would be a welcomed addition. Put a request in the supplied forum here ...
Neo Geschrieben Dienstag um 21:24 Uhr Geschrieben Dienstag um 21:24 Uhr 3D Train Studio already supports subroutines. What are you trying to achive and what have you already tried? Kind regards, Neo
EASY Geschrieben Dienstag um 21:34 Uhr Geschrieben Dienstag um 21:34 Uhr What is the difference between the example from BahnLand and what you want? EASY
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto besitzen, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen.
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden