Alle erstellten Inhalte von gmd
-
Alternative Fahrstraße
Kai, ich denke einfach mal ins unreine und habe auch nicht deine anlage angeschaut. Einfach mein ansatz, den ich verwenden wuerde. Dein aufbau sind fuer mich 5 gesicherte bloecke Umfahrblock hat vorrang und kann ausfahrblock (rechts) belegen, wenn frei (von roter lok noch nicht belegt) Wenn du unbedingt fahrstrassen verwenden willst, dann musst du sie segmentieren wie die bloecke (denke ich) und du kannst ausserdem fahrstrassen fuer die umfahrt anlegen .. du aktivierts die, die der position the loks entsprechen auf jeden fall musst du die ausfahrt der roten lok sichern. Falls die rote lok eine fahrstrasse inclusive ausfahrt verwendet, wird die umfahrt verhindert, du musst diese deaktivieren um eine umfahrstrasse zu aktivieren. Um ehrlich zu sein, ich verwende keine fahrstrassen, ich verwende nur blocksteuerung und ziele, das macht das denken einfacher, da fahrstrassen einfahrten nicht ausreichend sichern. Ausserdem ist eine lange liste von fahrstrassen nicht gut zu handeln und muehsam anzulegen. Ich weiss immer noch nicht wie ich fahstrassen mit lua anlegen kann, weil mir das von hand viel zu aufwendig ist. Ich weiss nicht ob das hilft, aber vielleicht mal ein ansatz ausserhalb der box gruss Gmd
-
tabelle mit non numerical key
function debugMessage(msg) $("Ereignisse").variables["DebugOutput"] = msg -- Store only the last message will be displayed in the Eventlist end local modulName = "SC_1" local modul = layout:getEventsByName(modulName)[1] modul.variables["SignalLists"] = { X01 = { type = "FourWayStretched", signals = { "SC_1-X01-S_1", "SC_1-X01-S_2", "SC_1-X01-S_3", "SC_1-X01-S_4" }, contacts = { "SC_1-X01-SK_1","SC_1-X01-SK_2","SC_1-X01-SK_3","SC_1-X01-SK_4"}, stopcontacts = { "SC_1-X01-HK_1","SC_1-X01-HK_2","SC_1-X01-HK_3","SC_1-X01-HK_4"} }, X02 = { type = "FourWay", signals = { "SC_1-X02-S_1", "SC_1-X02-S_2", "SC_1-X02-S_3", "SC_1-X02-S_4" }, contacts = { "SC_1-X02-SK_1","SC_1-X02-SK_2","SC_1-X02-SK_3","SC_1-X02-SK_4"}, stopcontacts = { "SC_1-X02-HK_1","SC_1-X02-HK_2","SC_1-X02-HK_3","SC_1-X02-HK_4"} }, } for crossingName, crossingData in pairs(modul.variables["SignalLists"]) do debugMessage("Checking Crossing - SignalLists " .. tostring(crossingName)) end signalTable = { X01 = { type = "FourWayStretched", signals = { "SC_1-X01-S_1", "SC_1-X01-S_2", "SC_1-X01-S_3", "SC_1-X01-S_4" }, contacts = { "SC_1-X01-SK_1","SC_1-X01-SK_2","SC_1-X01-SK_3","SC_1-X01-SK_4"}, stopcontacts = { "SC_1-X01-HK_1","SC_1-X01-HK_2","SC_1-X01-HK_3","SC_1-X01-HK_4"} }, X02 = { type = "FourWay", signals = { "SC_1-X02-S_1", "SC_1-X02-S_2", "SC_1-X02-S_3", "SC_1-X02-S_4" }, contacts = { "SC_1-X02-SK_1","SC_1-X02-SK_2","SC_1-X02-SK_3","SC_1-X02-SK_4"}, stopcontacts = { "SC_1-X02-HK_1","SC_1-X02-HK_2","SC_1-X02-HK_3","SC_1-X02-HK_4"} }, } for crossingName, crossingData in pairs(signalTable) do debugMessage("Checking Crossing - SignalTable " .. tostring(crossingName)) end modul.variables["SignalTable"] = signalTable for crossingName, crossingData in pairs(modul.variables["SignalTable"]) do debugMessage("Checking Crossing - Stored in variables SignalTable " .. tostring(crossingName)) end erzeugt [8:16:51 AM] Modul-Variable wird gesetzt -> SC_1, "SignalLists", {2 Elemente} [8:16:51 AM] Modul-Variable wird gesetzt -> Ereignisse, "DebugOutput", "Checking Crossing - SignalLists 2" [8:16:51 AM] Modul-Variable wird gesetzt -> Ereignisse, "DebugOutput", "Checking Crossing - SignalLists 1" [8:16:51 AM] Modul-Variable wird gesetzt -> Ereignisse, "DebugOutput", "Checking Crossing - SignalTable X01" [8:16:51 AM] Modul-Variable wird gesetzt -> Ereignisse, "DebugOutput", "Checking Crossing - SignalTable X02" [8:16:51 AM] Modul-Variable wird gesetzt -> SC_1, "SignalTable", {2 Elemente} [8:16:51 AM] Modul-Variable wird gesetzt -> Ereignisse, "DebugOutput", "Checking Crossing - Stored in variables SignalTable 2" [8:16:51 AM] Modul-Variable wird gesetzt -> Ereignisse, "DebugOutput", "Checking Crossing - Stored in variables SignalTable 1" hier das beispiel in deiner test anlage 09788E1E-A2F1-4E62-B044-6ECF44105AF6 gruss Gmd
-
tabelle mit non numerical key
Danke fuer die Muehe. Da sind noch ein paar unterschiede .. Ich werde mal versuchen den teil zu isolieren fuer besseren test. Gruss Gmd
-
tabelle mit non numerical key
Hallo, noch ein problem mit Lua Ich definiere: local signalLists = { ["X01"] = { ... }, ["X02"] = { ... } } modul.variables["SignalLists"] = signalLists wenn ich zuruecklese bekomme ich modul.variables["SignalLists"] { [1] = { ... data of X01 ... }, [2] = { ... data of X02 ... } } Intern wird wohl serialised und non numeric keys gehen verloren .. ["X01"] = {} OK in plain Lua und lokalen variablen , nicht erhalten in modul.variables { name = "X01", ... } ich muss dies tun um den namen zu behalten Mehrfach getestet gruss Gmd
-
Ampel und mast nicht gruppierbar mit anderen objekten
Danke nochmals, habe verstanden, ich verwende die "Strukturansicht" nicht sehr oft, das ist wohl mein problem hier. Gruss Gmd
-
Ampel und mast nicht gruppierbar mit anderen objekten
Dachte ich mir doch dass ich einen wurm eingebaut habe .. Ich hatte aber selektiert und gruppe aufloesen gesagt ... hmmm. ok, danke fuers finden. Gruss Gmd
-
Ampel und mast nicht gruppierbar mit anderen objekten
Ok, hier die details .. vielleicht nur bei diesem beispiel. Die anlage als entwurf 5CE8FC5C-BD36-48C3-9B23-566BF925A002 es geht hier um die linke kreuzung mit ampeln .. selektiere mast und ampel und nichts geht mehr zu selektieren. anbei ein zip mit movie ... es passiert auch nach neustart und fuer alle ampeln, auch die rechte kreuzung. Ich glaube euch dass das ueberall geht, wuerde ich auch nicht anders erwarten. Aber ich habe es mal wieder geschaft einen wurm eizubauen. gruss Gmd selection.zip
-
Ampel und mast nicht gruppierbar mit anderen objekten
27CF82D9-0A9B-4F01-A533-4510ED50F695 Mast und C4008FC0-52B0-4B63-A58B-168D1CC94B42 Ampel lassen sich gruppieren , aber nicht mit anderen objekten (selektion wird nicht akzeptiert) . gruss Gmd
-
Kontakt mit signal verknuepfen und eigenschaften konfigurieren in Lua
das geht nur in der gezeigten richtung aber nicht in Lua (da geht es nur umgekehrt und nur mit schaltkontakt) wie die aussage von Goetz impliziert. Gruss Gmd
-
Kontakt mit signal verknuepfen und eigenschaften konfigurieren in Lua
Danke, klingt plausibel, trotzdem halbgar (fake eben ) Die aussage von Goetz passt da aber nicht richtig dazu. gruss Gmd
-
Kontakt mit signal verknuepfen und eigenschaften konfigurieren in Lua
Schaltkontakt.state = 1 [8:47:11 AM] Die Ereignisverarbeitung ist aufgrund von Skriptfehlern deaktiviert: Unknown property name state Die verknuepfung wird hergestellt .. ist aber falsch rum gegenueber dem Eigenschaftsfenster Ein schaltkontakt hat state und bekommt nicht diesen fehler. So wie ich das verstehe muss die veknuepfung kontakt.connection = signal lauten und das geht nach dokumentation nicht .. "nur lesbar" So waere das richtig fuer alle kontakte, isbesondere wenn man mehr als einen konatkt zuweisen will. Diese einschraenkung ist fuer mich ein "Fehler" auch wenn dokumentiert. In diesem fall funktioniert nur schaltkontakt und das ist der richtige hinweis und kontakt.state = , das habe ich nicht erraten. Ist aber nicht logisch fuer mich weil man mit dem eigenschaftsfenster anders herum verknuepft (jeden kontakt) und dadurch mehrere kontakte einem signal/ampel zuweisen kann. Vielen Dank fuer deine Antwort Wolfgang, war der entscheidende punkt. Gruss Gmd
-
Kontakt mit signal verknuepfen und eigenschaften konfigurieren in Lua
Bloss keinen stress .. danke fuer die antwort gruss Gmd
-
Kontakt mit signal verknuepfen und eigenschaften konfigurieren in Lua
Ich will vermeiden die werte manuell in abhaengigkeit der stellung zu setzen Hier mal in pseudocode (nicht Lua) kontakt.connection = signal -- das wird nur im eigenschaftsfenster unterstuetzt .. in Lua kein effekt kontakt[signalstate=1]."Abbremsen auf" =5 kontakt[signalstate=3]."Beschleunigen auf" = 35 Das kann ich mit dem Eigenschaftsfenster einstellen, ich moechte das aber in der initialisierung nur einmal machen muessen. gruss Gmd
-
Kontakt mit signal verknuepfen und eigenschaften konfigurieren in Lua
Ja die frage ist eine andere.. Ich kann auf die eigenschaften zugreifen .. wie im obigen thread erklaert aber ich kann nicht die verknuepfung mit konfiguration der werte bei der entsprechenden ampelstellung herstellen .. gruss Gmd Edit: zur weiteren erklaerung : contact.trackContact.connection = $("") wie aus obigem beispiel .. In der EV bekomme ich kein signal angeboten fuer die veknuepfung, also nehme ich an dass es nicht geht .. sondern nur ueber das eigenschaftsfenster .
-
Zeilennummern bei fehlern sind nicht sehr nuetzlich
Gibt es irgendeine loesung wie ich aus der zeilennummer in der fehlermeldung auf die tatsaechliche zeile in einem script schliessen kann. Ich nehme mal an dass die globalen scripte zusammengefasst werden und die laufzeitfehler die zeilennummer aus dem gesamtscript darstellt. Dies ist nicht sehr nuetzlich bei der gelegentlichen fehlersuche nach aenderungen. Gruss Gmd
-
Kontakt mit signal verknuepfen und eigenschaften konfigurieren in Lua
Hall Experten, contact.connection = signal funktioniert nicht ( beschreibung sagt nur lesend) signal.connection = contact veknuepft den kontakt mit dem signal, aber wie kann ich die eigenschaften des kontakts fuer die Ampelstellungen konfigurieren in Lua, so wie ich das mit dem eigenschaftsfenster kann .. Geht das ueberhaupt ? Gruss Gmd
-
Ereignisprokollierung farbe setzen fuer text
Im eifer des gefechts
-
Ereignisprokollierung farbe setzen fuer text
Liest du keine ueberschriften ?
-
Ereignisprokollierung farbe setzen fuer text
nein der text in print("message"), die farbe der message .. Lua hat keine formatierung in strings, aber Neo nutzt farbige log entries .. gruss Gmd
-
Ereignisprokollierung farbe setzen fuer text
Hallo, ich nehme mal an das geht nicht, lass mich aber gerne ueberraschen. Ich moechte mit einer print message oder innerhalb eines variablen textes die text farbe setzen koennen. War unsicher ob hier oder unter feature request zu posten. Gruss Gmd
-
Ampel und kontakt in Lua
Danke, sehr interessant und hilfreich. Ist eine eigene riesige thematik. Ich habe einen etws anderen ansatz, aber deine konfliktbehandlung fuer einzelne situationen ist auch fuer mich hilfreich. Der hauptunterschied ist, dass in meiner welt die fahrzeuge immer vordefinierte ziele und routen haben, nicht unbedingt im "kreis" fahren oder zusammenhaengende strecken haben. Ich verwende depots fuer zufallssteuerung und zielauswahl, jedoch ist dein ansatz fuer konfliktbehandlung sehr gut. Nochmals danke fuer den hinweis. Gruss Gmd
-
Ampel und kontakt in Lua
Mal noch eine folgefrage bezueglich ampel und blinkersteuerung. Setzt ihr im wesentlichen kontakte um signale und blinker zu triggern ? Ich bin gerade dabei eine verallgemeinerten steuerung fuer streckenfahrten mit ampelkreuzungen und abzweigungen zu realisieren, die man dann beliebig einsetzen kann. Braucht eine menge kontakte .. Ich hatte mal versucht in meinem programm die spuren auszulesen und richtungen und kreuzungen zu erkennen, habe das aber zunaechst zureckgestellt und will die gleise erst fertig machen. Das studio weiss wenn ein fahrzeug abbiegen soll und koennte blinker setzen oder auch einen event erzeugen. Ich wuesste sonst keine loesung zu erkennen ob ein fahrzeug abbiegen wird oder nicht, ausser durch meine kontakt definitionen. Gruss Gmd
-
Ampel und kontakt in Lua
Vielen Dank.. Ich hatte das versucht, bin aber irgendwie gescheitert, hence the question. Danke das hilft. Gruss Gmd
-
Ampel und kontakt in Lua
Hallo, Ich kann mit Lua mit object.trackContact (fuer gleiskontakt) auf die eigenschaften des kontakts zugreifen, weiss aber nicht wie diese heissen. Wo finde ich die info ? Ich will ampel und kontakt in Lua verbinden und den kontakt konfigurieren in abhaengigkeit von der ampelstellung, aber nur mit Lua, nicht manuell. Gruss gmd
-
Fahrlicht fuer Fahrzeuge
Danke Gruss Gmd