Namen eines Rollmaterials mit Lua auslesen

Achte bitte darauf, dass Du mit deinem Thema bzw. mit deiner Frage im richtigen Bereich bist.
Die Bereiche sind: Einstellungen im Forum, EEP aktuell ab EEP7 , Splines, Rollmaterialien, Immobilien, Landschaftselemente, Signale und Schaltung, Anlagenvorstellungen, Schnappschüsse Konstrukteure, EEP Treffen , Laberecke, Online - Handbuch EEP Vielen Dank für die Unterstützung das Forum übersichtlich zu halten.
Bilder/Fotos aus dem Internet sind nur als Link gestattet. Eigene Fotos, also Fotos aus dem realen Leben, sind erstens mit Eigenes Bild als Quellenangabe zu kennzeichnen und zweitens nur als Dateianhang im Beitrag zulässig. Bilder ohne Quellenangaben und Bilder dessen Quelle das Internet wie z. B. Google ist, werden gelöscht.
  • Hallo EEP'ler,

    Ich habe im Lua-Handbuch kein Thema gefunden um den Namen eines stehenden Rollmaterials auszulesen.

    Daher meine Fragen:

    Habe ich das übersehen?

    Es gibt ja im EEP-Steuerdialog für den Zugnamen zwei Möglichkeiten der Darstellung. die eine ist der Modellname und die andere der vergebene Lua-Name (mit # davor)

    Gibt es eine Möglichkeit den Modellnamen mit Lua auszulesen und dann abzufragen wie das Rollmaterial in Lua heißt?

    Szenario für das ich das brauchen würde:

    Ich fahre einen Güterzug zu einem Signal. Dieses steht auf Halt. Die Wagen werden abgekuppelt. Daher bekommt die Lokomotive, die den Güterzug gezogen hat den Zusatz ",001"

    Da die Lokomotive beim Signal stehen bleibt, kann ich sie nicht über einen Kontakt fahren lassen und den neuen Lua-Namen in einen Speicherslot schreiben, um ihr weitere Befehle per Lua zu schicken.

    Da der Modellname ja gleich blieb, habe ich gedacht, dass es einfach wäre ( wenn es einen solche Befehl gibt) den Modellnamen abzufragen und daraus den Lua-Namen in einen Speicherslot zu schreiben.

    Oder wie löst man so etwas sonst?

    Gut ich könnte, wenn es so eine Möglichkeit nicht gibt, die Güterzuglok nach dem Abkuppeln ein Stück von den Wagons wegfahren lassen und dabei den Lua-Namen abfragen und speichern.

    Schönen Tag

    wegu1

    Hardware:

    Lenovo P330 - Intel Core i7-8700K - 32 GB RAM - Win 11 Prof 64 Bit

    Grafikkarte NVIDIA Quadro P2000 - 5GB, 2 Bildschirme (24", LG Ultrawide)

    EEP-Software:

    EEP 7-17 Expert - Home Nostruktor 14-17 - Modellkatalog - EEP BildScanner

  • Hallo zusammen,

    du kannst den Namen wahlweise über einen Funktionsaufruf in einem Kontakt oder über die folgende Fahrwegfunktion ermitteln:

    Code
     hResult, Besetzt , Name = EEPIsRailTrackReserved(1 , true)

    Es kommt allerdings auf die verwendete EEP-Version an. Schau einfach mal in dein EEP Lua-Handbuch unter dem Menüpunkt "Hilfe" nach.

    Ray

  • Danke,

    Habe in einem anderen Dokument inzwischen das gefunden, was ich brauche.

    hResult , ZV = EEPRollingstockGetTrainName(RM)

    Das EEPForum ist sehr reichhaltig:aa_1:

    Hardware:

    Lenovo P330 - Intel Core i7-8700K - 32 GB RAM - Win 11 Prof 64 Bit

    Grafikkarte NVIDIA Quadro P2000 - 5GB, 2 Bildschirme (24", LG Ultrawide)

    EEP-Software:

    EEP 7-17 Expert - Home Nostruktor 14-17 - Modellkatalog - EEP BildScanner

  • EEPRollingstockGetTrainName(RM)

    Wenn du diesen Befehl zur Verfügung hast, dann hast du EEP 15.

    Für Fragen wie deine hier wäre es wirklich gut, die genutzte EEP Version anzugeben. Am besten in der Signatur!

    Wenn du EEP 15 hast, dann hast du auch den Befehl EEPOnTrainLooseCoupling("Zug_A","Zug_B","Zug_alt")

    Diese Funktion wird automatisch dann aufgerufen, wenn ein Zug geteilt wird. Und sie liefert den alten und die beiden neuen Zugnamen gleich mit. Du musst nur noch definieren, was jetzt und mit diesen Informationen passieren soll.

    Beachte bitte das On in Fumktionsnamen! Das ist die Funktion, die EEP aufruft wenn das Ereignis eintritt.

    Im Gegensatz zu EEPTrainLooseCoupling("#Name",boolean,Pos,"#Name") ohne das "On" im Funktionsnamen. Diese Funktion rufst du auf, wenn du den Zug per Lua trennen willst.

  • Ich fahre einen Güterzug zu einem Signal.

    Hallo,
    dafür gibt es in EEP 15 auch einen geeigneten Befehl:

    EEPGetSignalTrainName (ID , Positionsnr.)

    Hier wird dir der Name des RM geliefert.

    Gruß

    Dieter

    Gruß
    Dieter

    -----------------------------------------------------------------------------------

    Sie haben Lua? :ad_1: Ist das ansteckend?

    Bleibt alle schön EEP-besessen :ae_1:

    Hardeware und Software

    __________________________________________
    EEP alle Versionen ab EEP6 mit allen Plugins,
    Homenos5, Homenos8,...,HomeNos17 DEV...
    Intel I7 4790k 4x 4Ghz, 32 GB RAM, NVidia GTX 1080 ti 11GB, Direct x V11, Windows 10 pro 64 Bit,
    Laptop Medion Erazer, 16GB RAM, 500GB SSD, 2 TB HDD, GT 850 von Nvidia, Windows 10 Home 64bit

  • sondern der Name des ZV (Zugverbands)

    schon richtig Götz, aber wenn er abgekuppelt hat bildet die Lok ja einen eigenen Zugverband :ae_1:

    Gruß
    Dieter

    -----------------------------------------------------------------------------------

    Sie haben Lua? :ad_1: Ist das ansteckend?

    Bleibt alle schön EEP-besessen :ae_1:

    Hardeware und Software

    __________________________________________
    EEP alle Versionen ab EEP6 mit allen Plugins,
    Homenos5, Homenos8,...,HomeNos17 DEV...
    Intel I7 4790k 4x 4Ghz, 32 GB RAM, NVidia GTX 1080 ti 11GB, Direct x V11, Windows 10 pro 64 Bit,
    Laptop Medion Erazer, 16GB RAM, 500GB SSD, 2 TB HDD, GT 850 von Nvidia, Windows 10 Home 64bit

  • wenn er abgekuppelt hat bildet die Lok ja einen eigenen Zugverband

    und auch da bekommst du nicht den Namen der Lok, sondern den Namen dieses neuen Zugverbands!

    Der kann mit dem Namen der Lok in Teilen übereinstimmen. Oder auch nicht.

  • da bekommst du nicht den Namen der Lok, sondern den Namen dieses neuen Zugverbands!

    Aber genau den will er ja wohl haben, denn EEPRollingstockGetTrainName(RM) liefert ja genau den Namen des Zugverbands :ae_1:

    Gruß

    Dieter

    Gruß
    Dieter

    -----------------------------------------------------------------------------------

    Sie haben Lua? :ad_1: Ist das ansteckend?

    Bleibt alle schön EEP-besessen :ae_1:

    Hardeware und Software

    __________________________________________
    EEP alle Versionen ab EEP6 mit allen Plugins,
    Homenos5, Homenos8,...,HomeNos17 DEV...
    Intel I7 4790k 4x 4Ghz, 32 GB RAM, NVidia GTX 1080 ti 11GB, Direct x V11, Windows 10 pro 64 Bit,
    Laptop Medion Erazer, 16GB RAM, 500GB SSD, 2 TB HDD, GT 850 von Nvidia, Windows 10 Home 64bit

  • Aber genau den will er ja wohl haben

    Ja, sicher.

    Ich habe ja auch nur deine falsche Aussage richtig gestellt, dass man mit EEPGetSignalTrainName() den Namen des Rollmaterials bekäme.

    Hier wird dir der Name des RM geliefert.

  • Hallöchen,

    Ok ich werde die Signatur demnächst entsprechend erweitern. Ich habe gelesen, dass dieser Befehl ab Version EEP14.2 mit Plugin 2 funktioniert.

    Ja man sieht schon - LUA ist sehr mächtig. Ich habe das jetzt so gelöst:

    -- Zugname Gueterzuglok

    ZV2 = ""

    RM2 = "DB_296_022-7"

    hResult, ZV2 = EEPRollingstockGetTrainName(RM2)

    rangierzn2 = ZV2

    EEPSaveData(122, rangierzn2)

    print("Speicher 122: ", rangierzn2)

    uns es funktioniert hervorragend. Ich lese den Speicherinhalt vor jeder Aktion mit der Güterzuglok aus und speichere den aktuellen Lua-Namen.

    Danke nochmals und gut EEP-Play

    Schönen Tag

    Günter

    Hardware:

    Lenovo P330 - Intel Core i7-8700K - 32 GB RAM - Win 11 Prof 64 Bit

    Grafikkarte NVIDIA Quadro P2000 - 5GB, 2 Bildschirme (24", LG Ultrawide)

    EEP-Software:

    EEP 7-17 Expert - Home Nostruktor 14-17 - Modellkatalog - EEP BildScanner

  • Ich habe gelesen, dass dieser Befehl ab Version EEP14.2 mit Plugin 2 funktioniert.

    Hallo Günter :)

    Update 2 und Plugin 2 waren ursprünglich angedacht, sind dann aber nicht erschienen (siehe z.B. hier). Die vorgesehenen Features (siehe z.B. in Plug-In 2 zu EEP 14 - erste Eindrücke und Plug-In 2 zu EEP 14 - neue Lua Befehle) sind in EEP 15 enthalten.

    Gruß Ingo

  • Hallo Schlingo,

    So stand es in dem Dokument, das ich im Forum gefunden hatte.

    Ist aber egal, wichtig ist dass es läuft.

    Schönen Tag

    Hardware:

    Lenovo P330 - Intel Core i7-8700K - 32 GB RAM - Win 11 Prof 64 Bit

    Grafikkarte NVIDIA Quadro P2000 - 5GB, 2 Bildschirme (24", LG Ultrawide)

    EEP-Software:

    EEP 7-17 Expert - Home Nostruktor 14-17 - Modellkatalog - EEP BildScanner

  • So stand es in dem Dokument, das ich im Forum gefunden hatte.

    Hallo Günter :)

    richtig, siehe dazu Lua Handbuch im Ordner Handbuch.

    wichtig ist dass es läuft.

    Schönen Tag

    Genau. Danke gleichfalls.

    Gruß Ingo