Anlagendesigner Posted June 7 Posted June 7 Gibt es eine Möglichkeit in der EV auf eine änderbare Beschriftung eines Modells zuzugreifen. Diese auszulesen und weiter zu bearbeiten? Mir fällt aktuell leider nur umgehrt eine Möglichkeit ein.
Eggu Posted June 7 Posted June 7 (edited) In Lua: $("Objekt_Bezeichner").name = "neuer_Name" , ... aber das meintest du wohl gar nicht. Edited June 7 by Eggu
Phrontistes Posted June 7 Posted June 7 (edited) Hallo @Anlagendesigner, vor 29 Minuten schrieb Anlagendesigner: Gibt es eine Möglichkeit in der EV auf eine änderbare Beschriftung eines Modells zuzugreifen Ja bzw. mit Lua $("Objekt").labels["Labelname"].text = "" Nachtrag: Auslesen und Bearbeiten nur mit Lua. -- auslesen - aber wozu? txt = $("Objekt").labels["Labelname"].text -- neuen Text zuweisen txt = "Neue Beschriftung" -- und reinschreiben $("Objekt").labels["Labelname"].text = txt Beste Grüße Phrontistes Edited June 7 by Phrontistes Nachtrag
Goetz Posted June 7 Posted June 7 (edited) Hallo @Anlagendesigner, Mit Phrontistes Vorschlag bist du fast am Ziel. Du musst nur noch das, was er vor das = Zeichen gesetzt hat, stattdessen dahinter setzen um den Text wie gewünscht auszulesen. Der folgende Code übertrug die Fahrzeugnummer des Triebwagens auf das Textfeld daneben $("Textfeld").text = $("BR 628.4").labels["Fahrzeugnummer"].text Viele Grüße Götz Edited June 7 by Goetz Ergänzungen
Anlagendesigner Posted June 7 Author Posted June 7 Ok, danke. Wie schon mal an anderer Stelle geschrieben, habe ich mich bisher nie mit LUA beschäftigt. Wie sähe denn der Code aus, wenn das Objekt nicht feststeht, sondern durch einen Auslöser angesprochen wird. Hintergrund: Ich möchte beispielsweise gerne bei der Bahnhofseinfahrt die Zugnummer auslesen und diese in einem GBS anzeigen lassen. Das ginge natürlich mit einer Objektvariablen, doch wenn der Text eh schon in einer Beschriftung vorhanden ist, ist es ja wenig sinnig das mit einer Objektvariablen zu doppeln.
BahnLand Posted June 7 Posted June 7 (edited) Hallo @Anlagendesigner, der Name des Modells kann selbstverständlich auch mit der grafischen EV ausgelesen werden. Bild durch Anklicken vergrößern Jedes Objekt (unabhängig vom Typ) besitzt insbesondere die Eigenschaft "Name". Im obigen Beispiel ist das Objekt, dessen Name als Eigenschaft ausgelesen wird, das Fahrzeug, welches das Ereignis beim Betreten des Gleiskontakts ausgelöst hat. Das Beispiel stammt aus meiner Anlage "Bahnhofsmodul-Anlage 20211026" mit der Content-ID 8DE83A85-E844-482C-AD3C-E2C18633EFCA, in der ich die Zugnummer genauso wie Du es haben möchtest in das Gleisbildstellput übertrage, Viele Grüße BahnLand Edited June 7 by BahnLand
Goetz Posted June 7 Posted June 7 vor 15 Minuten schrieb Anlagendesigner: Wie sähe denn der Code aus, wenn das Objekt nicht feststeht, sondern durch einen Auslöser angesprochen wird. das kommt auf den Auslöser an. Wenn es sich um ein Fahrzeug handelt, dann benutzt du anstelle des Objektbezeichners vehicle $("Textfeld").text = vehicle.labels["Fahrzeugnummer"].text Du kannst solche Schreibweisen ganz leicht herausfinden, indem du Befehle aus der grafischen EV in Lua wandelst. Die Sprache Lua schreibt man übrigens bitte nicht in Versalien, weil die Buchstaben keine Abkürzung sind. siehe hier "What's in the name?"
Goetz Posted June 7 Posted June 7 vor 1 Minute schrieb BahnLand: der Name des Modells kann selbstverständlich auch mit de grafischen EV ausgelesen werden. Der Name, ja. Aber nicht die Beschriftungen. Und um die geht es hier.
Phrontistes Posted June 7 Posted June 7 vor 24 Minuten schrieb Anlagendesigner: die Zugnummer auslesen Wo steht die bei Dir?
Goetz Posted June 7 Posted June 7 vor 4 Minuten schrieb Phrontistes: Wo steht die bei Dir? Dort, wo in meinem Beispielbild das Wort "Beispiel" steht Also auf einem beschriftbaren Texturfeld: vor 30 Minuten schrieb Anlagendesigner: ... doch wenn der Text eh schon in einer Beschriftung vorhanden ist ...
BahnLand Posted June 7 Posted June 7 Hallo @Anlagendesigner und @Goetz, vor einer Stunde schrieb Anlagendesigner: Gibt es eine Möglichkeit in der EV auf eine änderbare Beschriftung eines Modells zuzugreifen. vor 11 Minuten schrieb Goetz: Aber nicht die Beschriftungen. Und um die geht es hier. Oh sorry - wer lesen kann ist ganz klar im Vorteil. Viele Grüße BahnLand
Phrontistes Posted June 7 Posted June 7 Hallo @Anlagendesigner, der Gedanke von @BahnLand ist naheliegend, denn einen Objektnamen hat Deine Lok immer, während eine änderbare Beschriftung nur wenige Modelle haben - und das dann womöglich auch noch unter verschiedenen Bezeichnungen. Die Erbauer sind da immer ziemlich kreativ. Das geht sogar graphisch: Beste Grüße Phrontistes
Anlagendesigner Posted June 7 Author Posted June 7 Beim Objektnamen habe ich das Problem, das nach meinem jetzigen Stand, der nicht eindeutig genug ist. Der Objektname ist ja zb ICE4 Triebwagen, ich brauche aber die Zugnummer, also zb ICE 12. Im Regioverkehr ist es ja noch schlimmer, da ändert sich die Zugnummer je nach Richtung und Zeit wobei die Linienbezeichnung ja gleich bleibt und das Modell auch den selben Modellnamen hat, da ja identisch mit den anderen Zügen der Linie ist. Und mit der eindeutigen ID des Modells kann ich im GBS oder Anzeigeelementen ja wenig bis gar nichts anfangen. Ich hoffe ich drücke mich soweit verständlich aus und man kann begreifen worum es mir geht. @GoetzDas mit dem vehicle ist mir nicht klar. Bezieht sich das automatisch sobad ein Auslöser mit einem Fahrzeug interagiert oder wie genau? @PhrontistesAktuell geht es mir um eine S-Bahn mit der Linienbezeichnung. Die kann dem Modell als Beschriftung beigefügt werden, so dass sie vorne und seitlich angezeigt wird. Diese Bezeichnung (zb S3 oder S16 wie in Köln) entspricht ja nicht dem Objektnamen, sonst käme es spätestens bei Zugverbünden mit mehreren angetriebenen Modellen zu Problemen. Bei mir entspricht aktuell der Modellname der (keine Ahnung wie man die nennt) Wagennummer der DB-Bezeichnung also im Regioverkehr der 440-3215-5 beispielsweise. Die ist einmalig.
Phrontistes Posted June 7 Posted June 7 vor 4 Minuten schrieb Anlagendesigner: bei Zugverbünden mit mehreren angetriebenen Modellen Vermeide das, weil es zu Problemen führen kann. vor 7 Minuten schrieb Anlagendesigner: Beim Objektnamen habe ich das Problem, das nach meinem jetzigen Stand, der nicht eindeutig genug ist. vor 4 Minuten schrieb Anlagendesigner: das Modell auch den selben Modellnamen Das ist nur ein Vorschlag. Den Namen kannst Du frei ändern. vor 5 Minuten schrieb Anlagendesigner: vehicle ist mir nicht klar vehicle steht immer dann zur Verfügung, wenn das Ereignis es liefert. Das ist logischerweise bei diesen Ereignissen der Fall: vor 11 Minuten schrieb Anlagendesigner: ändert sich die Zugnummer je nach Richtung und Zeit Das ist wieder ein anderes Problem, weil der gleiche Zug im Laufe des Tages Richtung und Zugnummer (die wiederum mit der Wagennummer nichts zu tun hat) ändert. Wenn Du das abbilden willst, musst Du Fahrpläne programmieren und abarbeiten, was sich aber mit vor 7 Stunden schrieb Anlagendesigner: habe ich mich bisher nie mit LUA beschäftigt beißt. Beste Grüße Phrontistes
Goetz Posted June 7 Posted June 7 (edited) vor 2 Stunden schrieb Anlagendesigner: Das mit dem vehicle ist mir nicht klar. Bezieht sich das automatisch sobad ein Auslöser mit einem Fahrzeug interagiert Der Auslöser interagiert nicht mit einem Fahrzeug, sondern das Fahrzeug selbst ist bei bestimmten Ereignissen (z.B. Zug betritt Kontakt) ein Auslöser. Wenn ein Fahrzeug einen Kontakt betritt, dann lösen diese beiden Objekte (durch ihr Zusammentreffen) das Ereignis "Zug betritt Kontakt" aus. Ereignisse werden durch Objekte aus unterschiedlichen Kategorien ausgelöst. Zug betritt Gleis -> 3 Auslöser, Fahrzeug und altes Gleisstück und neues Gleisstück, Lua Namen vehicle und oldTrack und track Signal schaltet -> 2 Auslöser, Signal und Stellung, Lua Namen signal und state Schalter wird betätigt -> 2 Auslöser, Schalter und Stellung, Lua Namen controller und state Fahrstraße wird aktiviert -> 2 Auslöser, Fahrstraße und Stellung, Lua Namen route und state Kran hat Transportgut aufgenommen -> 3 Auslöser, Kran, Transportgut, Aktion, Lua Namen crane, target, state etc. (nur ein paar Beispiele zum besseren Verständnis des Prinzips.) Wähle die Auslöser in der grafischen EV, wandle den Befehl in Lua und du siehst, welche Namen Neo den Auslösern aus verschiedenen Kategorien zugewiesen hat. Edited June 7 by Goetz Schreibfehler korrigiert
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now