Jump to content

Goetz

Mitglieder
  • Gesamte Inhalte

    5763
  • Benutzer seit

  • Letzter Besuch

Alle erstellten Inhalte von Goetz

  1. Das war schlau. Eine raue Oberfläche reflektiert Licht diffuser als eine glatte. Deshalb glänzen glatte Flächen, raue hingegen nicht.
  2. Das ist eine sehr unfaire Art der Argumentation, Roni. Eine bessere Textur ist leichter zu erzielen und die Wirkung ist, im Gegensatz zu deinem unsinnigen Beispiel, den Aufwand wert. Das tut auch keiner. Bisher wurden nur Wünsche geäußert oder Vorschläge gemacht.
  3. Findest du das Modell hübsch, Roni? Findest du, dass sich das harmonisch in das Gesamtbild einer Anlage einfügt? Dass es gut zu den übrigen Modellen passt?
  4. Und jetzt musst du uns bitte diesen Satz einmal erklären, Jürgen.
  5. Der Auslöser und die Ursache: Auslöser ist hier der hintere Wagen (weil der Zug rückwärts fährt). Und dieser Wagen hat keinen Zugtyp bekommen. Vermutlich, weil du ihn nur als Beiwagen betrachtest. Du solltest seinen Antrieb ausschalten, damit der Auslöser immer und unabhängig von der Fahrtrichtung der andere Wagen ist. Denn der hat einen Zugtyp.
  6. Hallo @jloos, Bei geöffnetem Protokoll stoppt die Anlage nach einer Weile mit dieser Fehlermeldung: Ein Doppelklick auf die rote Zeile mit der Fehlermeldung bringt dich in der EV an die Stelle, an der der Fehler auftrat. Wäre das Fenster nicht geöffnet gewesen, dann würde die Anlage nach diesem Aussetzer einfach (mit falschen Bedingungen) weiterlaufen. Viele Grüße Götz
  7. Es könnte an den Sicherheitseinstellungen auf deinem Rechner liegen. Bekommst du eine Meldung, wenn du eine Datei nicht herunterladen kannst? Wenn ja, wie lautet die?
  8. Dazu ist das Ereignisprotokoll da. Aber du musst das während des Betriebs geöffnet haben.
  9. Du musst dich für nichts entschuldigen, Jürgen. Das ist alles in Ordnung so, wie es ist. Mir ist es nur leider gerade zu mühselig, das alles durchzuforsten bis ich eine Stelle gefunden habe, die vielleicht im Zusammenhang mit einem Fehlverhalten steht. Die ungenaue Fehlerbeschreibung: hilft auch nicht weiter. Allerdings dürfte ein Zug, der keine Fahrstraße bekommen hat, sich auch nicht verirren. Er müsste dann vor einem Halt zeigenden Signal stehen bleiben. Viele Grüße Götz
  10. Eventuell verstehe ich es falsch oder übersehe etwas. Aber mir scheint, dass dieses Ereignis Signalen mit einem Schlagwort (Signal Gleisharfe) zugewiesen ist, welches du in keinem Signal benutzt. Denn Schlagwörter sind Variablennamen. Und in der Strukturansicht müsste ich das Schlagwort sehen und als Objektfilter nutzen können. Aber es taucht in der Liste nicht auf. Beim zweiten Ereignis in diesem Modul habe ich dasselbe Problem. Auch das Schlagwort konnte ich nicht finden. (Ich wollte die Objekte mithilfe der Strukturansicht finden. Da sind diese Filter sehr nützlich.)
  11. Hallo @jloos, die eigentliche Fehlersuche habe ich bei dir recht schnell aufgegeben. Die EV ist zu groß und nachdem ich begonnen hatte, einen Teil der Hilfsfunktionen zu studieren und bemerkte, dass die alle Kontakten zugeordnet sind, welche es (noch) gar nicht gibt, verging mir die Lust alles so lange durchzuforsten, bis ich die relevanten Stellen in der EV finde. Tut mir leid, aber da reicht meine Energie nicht mehr aus. Viele Grüße Götz
  12. Hallo Jürgen, ich drängle mich mal vor, ohne Experte zu sein. Wenn ein Zug bei mir ein Signal überfährt und so einen neuen Abschnitt betritt, dann ist sein Weg bis zum folgenden Signal frei und für ihn reserviert. Er ist damit auch garantiert der nächste Zug, der an diesem folgenden Signal ankommen muss. Da kann kein anderer Zug dazwischen sein, weil keine zwei Züge im selben Abschnitt erlaubt sind. Also kann ich in dem Augenblick, wenn der Zug das erste Signal betritt, für ihn die Fahrstraße stellen, die am nächsten Signal beginnt. Ich benötige deshalb keinen zusätzlichen Kontakt dafür. Viele Grüße Götz
  13. Hallo heine jul, Für die Übergabe benötigst du die erweiterte Variable. Die erlaubt dir, als Objekt generisch den auslösenden Kontakt anzugeben und seine Liste zu übertragen: Das bedeutet auch, dass du die Liste der Straßen in dem Kontakt hinterlegen musst, der Auslöser für den Aufruf des benutzerdefinierten Ereignisses ist. Das wäre bei dir GK_BK_Haltestelle und nicht (wie aktuell in deinem Beispiel) der GK_BK_vor_Haltestelle. Oder - falls die Liste zwingend im Kontakt vor der Haltestelle sein muss - diesen Kontakt im auslösenden Kontakt hinterlegen und anstelle des Objekts ein weiteres Mal über das Zahnrad die erweiterte Variable benutzen. Viele Grüße Götz
  14. Dann ist es eventuell hilfreich, dass ich dir noch dazu sage: Die Leertaste ist die Pausentaste. Wenn man das nicht weiß, kann man leicht mal aus Versehen und unbewusst die Pause aktivieren.
  15. Das geht auch, Hannoveraner. Aber damit bekommt ein Zug neben einem unbesetzten Gleis eine höhere (die doppelte) Chance ausgewählt zu werden. Es trifft ihn, wenn die Suche beim Nachbargleis oder bei seinem Gleis beginnt. Bei zwei unbesetzten Nachbargleisen hat er eine dreimal höhere Chance als der nächste Zug. worst case scenario: Viele Grüße Götz
  16. Jetzt versteht ihr vielleicht besser, warum ich (in meinem Lua Beispiel!) zuerst eine Liste aller belegten Plätze anlege und dann zielsicher und mit nur einem Versuch einen zufälligen Platz aus dieser zweiten Liste greife?
  17. Aber theoretisch könnte auch bei einhundert und mehr Würfen der einzig besetzte Platz nicht dabei sein. Der Zufall ist nicht gerecht. Und er hat kein Gedächtnis. Praktisch kann man diesen Ausnahmefall dennoch vernachlässigen.
  18. fast ... Die Elemente einer Liste sind durchnummeriert. Diese Platznummern heißen Index Du kannst ein einzelnes Element aus einer Liste entnehmen, indem du den Namen der Liste und den Index angibst. Ich verwende deine Variable, welche die gewürfelte Zahl enthält, für den Index. Und das zweimal: Einmal hole ich mir das Signal aus einer Liste und danach dann die zugehörige Fahrstraße aus einer zweiten Liste Damit das so funktioniert, müssen die beiden Listen zusammenpassen. Will heißen: Signal und zugehörige Fahrstraße müssen in den Listen denselben Index haben.
  19. Hallo @Roter Brummer, die Idee, bei nicht besetztem Gleis neu zu würfeln, ist clever! Das war der Trick, der mir nicht einfallen wollte. Wenn du jetzt die Signale und Fahrstraßen in Listen parat hältst, kannst du die gewürfelte Zahl als Listenindex verwenden: Zufällige Zugwahl mit Listen.mbp
  20. Eins spielt hier ins andere, weil durch die deferred calls diese Funktionen noch häufiger neu angelegt werden. Mehrfach nach jedem Betreten eines Kontakts. Und die Rechnerlast ist dabei das geringste Problem. Okay, dann lass ich dich erst einmal machen. Ich dachte nur, dass du Reaktionen lesen willst, wenn du dein Konzept in der jetzigen Form vorstellst?
  21. Yes. It's not a "shunt" signal. It's a "Sperrsignal". A blocking signal. An absolute "you shall not pass!". The aspect name "Sh" stands for "Schutzhalt" and may be loosely translated to "safety halt". It is in no way related to "shunt". For route clearance, the main semaphore is pulled first, alerting the driver to the fact that the entire route is now clear and secured. The Sh signal is pulled second, signalling that passing this signal is no longer prohibited.
  22. unabhängig von irgendwelchen Vergleichen: Wenn ein beliebiger Kontakt betreten wird, legst du alle Variablen und Funktionen neu an. Wenn dasselbe Ereignis durch den deferred call ein weiteres Mal aufgerufen wird, legst du wieder alle Variablen und Funktionen neu an. Egal, wie du das auch rechtfertigst, es ist kein guter Ansatz. äh, neee - wenn du das in anderen Sprachen so anlegst, kommt genau dasselbe dabei raus. Das, was ich bemängle, hat nichts mit Lua zu tun.
  23. Wenn du bitte mal meine Erklärung dazu aufmerksam lesen würdest, könntest du sicher verstehen, was ich dir mitteilen wollte. Es geht um das, was nach Ablauf der Verzögerung passiert. Unter deiner ID finde ich jetzt das Diorama mit funktionierendem Ablauf. (Eventuell wird die alte Anlage beim Überschreiben nicht sofort auf dem Server ausgetauscht?) Aber trotzdem finde ich den Weg, den du beschreitest, ... unprofessionell. Du gibst dich als versierten Programmierer aus. Da muss dir doch klar sein, dass man Funktionen nur einmal deklariert und nicht immer wieder? Ganz unabhängig von der verwendeten Sprache.
  24. Ich denke, nein. Zumindest habe ich keinen zufriedenstellenden Weg gefunden. Deshalb meine Anmerkung, dass solche Situationen sich mit Lua besser handhaben lassen.
×
×
  • Neu erstellen...