Jump to content

Phrontistes

Mitglieder
  • Gesamte Inhalte

    1611
  • Benutzer seit

  • Letzter Besuch

Alle erstellten Inhalte von Phrontistes

  1. Hallo, ich habe mir mal noch überlegt, wie man automatisiert die Abfahrzeit der Zuganzeige sinnvoll füllen könnte, nämlich mit der aktuellen Simulationszeit (wer die Simulationszeit nicht laufen lässt, kann sich den Aufwand sparen) + x min. Das kann man so umsetzen (nur mit Lua möglich): local inputTime = tostring(layout.time) local hours, minutes = inputTime:match("(%d%d):(%d%d)") minutes = tonumber(minutes) + AddMinutes if minutes >= 60 then minutes = minutes - 60 hours = tonumber(hours) + 1 end local newTime = string.format("%02d:%02d", hours, minutes) LabelObject.labels[LabelText].text = newTime AddMinutes (number) muss man austüfteln; das hängt u.a. davon ab, wie schnell man die Simulationszeit laufen lässt. Mehr als 60 darf man nicht übergeben; diesen Fehler fange ich nicht ab. LabelObject (object) ist das Zuganzeigeobjekt LabelText (text) ist bei 04506C8C-DEF2-4091-9CEF-91FAC6DCD25D immer "01 Abfahrtszeit" Beste Grüße Phrontistes
  2. ... und hier (lt. Bildlegende " Aufnahme vom 17. März 2013.") nochmal eine leicht andere Bauform des Zs6.
  3. Ja. Dann bleibst Du bei der Variante "künstlerische Freiheit" oder Du fragst @Roter Brummer, ob er vielleicht noch das Zs6-Lichtsignal in der früheren Form als Variante (alle Varianten siehe auch hier) hinzufügt. Dieses gab es auf jeden Fall zusammen mit H/V-Signalen. Ob mal einer ein Zs6 in neuer Bauform an ein H/V-Signal geschraubt hat, weiß ich nicht. Bei der Bahn ist alles möglich. Künstlerische Freiheit braucht es halt manchmal beim MBS. Bei mir gibt es z.B. dieses Konstrukt obwohl es bei einem Nebenbahnhof ohne Ausfahrsignale bestimmt kein Zp9-Lichtsignal gibt - wohl aber ein Zp9,, aber der Bahnhofsverstand mit Kelle (C42A1845-3C1A-4AB6-B989-435C26730A7D) ist nicht so gut zu inszenieren. Ich habe mir damit beholfen, dass das aufgepflanzte Zp9 nur zu sehen ist, wenn es eingeschaltet ist. Beste Grüße Phrontistes
  4. Nimm' die Blechtafel, das gibt es auf jeden Fall. http://www.stellwerke.de/signal/deutsch/zs6.html
  5. Guter Hinweis. Das Zs6 (A0EA8ED3-C93F-48CC-9DF9-46B0D05B8CC5) fehlt noch auf dem Bild
  6. Hallo Alex, das Signalbuch sagt zu Hp2: "Das Signal schreibt eine Geschwindigkeitsbeschränkung auf 40 km/h vor, wenn nicht eine abweichende Geschwindigkeit durch Signal Zs 3 angezeigt wird." Und zu Hp1: "Das Signal erlaubt die Fahrt mit der im Fahrplan zugelassenen Geschwindigkeit, sofern sie nicht durch andere Signale oder besondere Anordnungen eingeschränkt ist". Danach ginge theoretisch beides, aber meines Wissen zeigt ein Signal Hp2, wenn der Fahrweg über eine ablenkende Weiche führt. So wie im Bild dürfte es korrekt sein. Ergänzung: Das ist kein Problem, denn das Signalbuch sagt auch: "Die Geschwindigkeitsbeschränkung gilt vom Hauptsignal ab für den anschließenden Weichenbereich." Beste Grüße Phrontistes
  7. Hallo @Anlagendesigner, vergesse das Listenobjekt. Es reicht, wenn Du in den Fahrweg einen Gleiskontakt rechtzeitig vorher setzt, der dafür sorgt, das die im Zug in Variablen hinterlegten Beschriftungen in die Anzeige geschrieben werden. Und wenn der Zug ausfährt, setzt Du die Anzeige auf "leer". Wenn Du mehrere Haltstellen entsprechend "bestücken" willst, dann musst Du im Gleiskontakt logischerweise auch noch das ihm zugehörige Anzeigenobjekt hinterlegen. Hier ein Beispiel, wie man das machen kann. Die Ereignisse "Zielanzeige setzen" und "Zielanzeige löschen" sind allgemeingültig. Du musst nur noch in "passenden" Kontakten das Auslöser-Schlagwort und in den Zügen die Beschriftungsvariablen eintragen. Anlagendesigner Zugzielanzeige.mbp Beste Grüße Phrontistes
  8. Hallo @Anlagendesigner, gib' mal die ID des Modells mit Beschriftungsfunktion, das Du meinst. Es gibt mehrere. Ist die Zugfolge immer gleich? Dann könnte man eine kreisförmige Liste bauen. Oder kommen die Züge mal so mal so? Dann müssen die erforderlichen Daten in den Zügen hinterlegt werden. Diese Lösung ist flexibler, es braucht keine Liste und man muss auch nichts "hochschieben". Und Du könntest mehrere Stationen mit Zuganzeige haben, welche dann mit der gleichen Routine den jeweils nächsten Zug anzeigen. Beste Grüße Phrontistes
  9. Hallo @guenter.strickmann, das musst Du so machen: Du darfst nicht nach der Liste also solcher fragen (die gibt es auch dann, wenn sie 0 Einträge hat), sondern musst schauen, ob der erste Eintrag leer ist oder nicht. Du darfst nicht nach ≠ Leer fragen, sondern musst nach NOT = Leer fragen. Beste Grüße Phrontistes
  10. Hallo @Koriander, Ja, den gibt es: 402F7E9E-9A0B-41E1-8E17-DDEB11B03923 und den Anhänger gibt es auch: D65F3123-5D2E-43DA-B069-0554D7AB6149. Hier mehr zum Vorbild. Hallo @Klartexter, Die vorhandenen wären viel zu tief gewesen für ein Eisenbahnfahrzeug. Beste Grüße Phrontistes
  11. Hallo, ich habe ein ähnliches Konstrukt in TF2. Allerdings länger gezogen damit alle Linien mit 120 km/h befahrbar sind und die Fahrmöglichkeit von links unten nach rechts unten fehlt, weil es hier keine Linie gibt. Beste Grüße Phrontistes
  12. Hallo @BahnLand, Schon, aber vielleicht will man ja in der EV die Geschwindigkeit des langsameren Zuges, der vielleicht mit 40 angezuckelt kommt auf 60 (und nicht auf 100) setzen. Der Feature-Wunsch von Wolfgang @prinz ist sinnvoll und zwar vor allem dann, wenn man die Vmax des Zuges als Variable im Zug hinterlegt hat, denn dann möchte man gerne wahlweise auf die Vmax der Strecke oder die Vmax des Zuges bremsen oder beschleunigen. Es wäre also schön, wenn man das in einer Anweisung, also ohne eine Bedingung formulieren zu müssen, nach der gleichen Methode wie rnd (nur hier halt min bzw. max) setzen könnte. Mit Lua geht das übrigens schon jetzt. Voraussetzung: Man trägt die Vmax der Strecke in den Kontakt und die Vmax des Zuges in den Zug ein. if (contact.variables["VMax"] ~= nil) and (vehicle.variables["VMax"] ~= nil) then local VmaxStrecke = contact.variables["VMax"] local VmaxVehicle = vehicle.variables["VMax"] local v = vehicle if v:hasEngine() then v.engine.active = true v.targetSpeedAbs = math.min(VmaxStrecke, VmaxVehicle) end end Beste Grüße Phrontistes
  13. Der interne Aufwand unterscheidet sich aber bei den beiden logisch gleichwertigen Varianten, also Den Unterschied sieht man in der Übersetzung. Während das Fahrzeug (erste Variante) direkt zur Verfügung steht local v = vehicle if v:hasEngine() then v.engine.active = true v.targetSpeedAbs = vehicle.variables["v_max"] end muss es erst mal in einer Schleife ermittelt werden wenn man den Gleiskontakt (zweite Variante) nimmt: local vehicles = layout:getVehiclesOn(contact) for _, vehicle in pairs(vehicles) do if vehicle:hasEngine() then vehicle.engine.active = true vehicle.targetSpeedAbs = vehicle.variables["v_max"] end end Also besser auch aus diesem Grund das Fahrzeug ansprechen.
  14. Logo, das mache ich in meinen EVen immer nachdem die Kastratensprache Lua es noch nicht einmal verlangt, dass man Variablen deklariert bevor man sie benutzt. Aber hier wollte ich nur ergebnisgleich (aber kürzer) umformulieren, was ich vorgefunden habe, weil ich es nicht sehen konnte, wie sich @Spurwechsel mit 3 if-Bedingungen und sechs festen Werten einen abbricht, obwohl es mit einem Einzeiler (und ohne feste Werte) genauso geht. Und ganz nebenbei spreche ich das Fahrzeug und nicht den Gleiskontakt an, weil mir das intuitiver erscheint - auch wenn es eigentlich egal ist. Beste Grüße Phrontistes
  15. Das Bundesamt für Sicherheit in der Informationstechnik (BSI) empfiehlt, Anwendungen aus dem Portfolio von Virenschutzsoftware des Unternehmens Kaspersky durch alternative Produkte zu ersetzen. https://www.bsi.bund.de/DE/Themen/Unternehmen-und-Organisationen/Cyber-Sicherheitslage/Technische-Sicherheitshinweise-und-Warnungen/Warnungen-nach-Par-7/Archiv/FAQ-Kaspersky/faq_node.html
  16. Hallo @Spurwechsel, nur weil es mir auffiel - das geht auch einfacher: Beste Grüße Phrontistes
  17. Hallo @liftboy, schön, dass Dir das gefällt aber das hat Neo in V. 8.5. bereits eingebaut. Beste Grüße Phrontistes
  18. Hallo @Neo, ich fände es schön, wenn man in der Bedienungsoberfläche die Eigenschaften (insbesondere Beschleunigen/Verzögern ja/nein, Geschwindigkeiten) der verschiedenen Signalstellungen bearbeiten könnte, ohne das Signal selbst umzustellen (für das Umstellen gibt es schließlich das Window Steuerung); in der EV die Eigenschaften aller Signalstellungen erreichen könnte und nicht nur diejenigen der gerade aktuellen Signalstellung. Beste Grüße Phrontistes
  19. Hallo, Helmut, wenn etwas manchmal passiert kann die Ursache sein, dass zwei Antriebe im Zugverband eingeschaltet sind. Das kannst Du automatisiert wie folgt prüfen: local TempCount = 0 local t, t2 = layout:getVehicleGroup(Vehicle, 2) for i, Iter in ipairs(t) do TempCount = TempCount + 1 end if TempCount > 1 then error ("More then one active engine in vehicle group!") end Das Ereignis rufst Du an der/den passenden Stelle(n) auf. Ist die Ereignisanzeige offen, bekommst Du ggf. die Fehlermeldung und die Verarbeitung bleibt stehen. Beste Grüße Phrontistes
  20. Bei einer kannst Du die Weichenlaternen so ansteuern:
  21. Hallo @Neo, auch bei Schaltern wäre manchmal schön, wenn man sie disablen könnte. Auch diese sind Objekte, die man im Simulationsmodus bedienen kann (siehe Eingangspost). Beste Grüße Phrontistes
  22. Hallo zusammen, Und die interne Genauigkeit ist noch viel höher, als man jemals angezeigt bekommt, was man z.B. merkt, wenn man prüfen will, ob ein Objekt genau nach Norden ausgerichtet ist und mit der Prüfung "== 0" nie zum Ziel kommt, weil das Objekt z.B. die z-Rotation -2.8421709430404e-014 (oder halt irgendeinen anderen sehr kleinen Wert) besitzt. Beste Grüße Phrontistes
  23. Hallo @Neo, ich fände es schön, wenn man die Properties Font, Color, Background und Glow der TextBox bei einer Mehrfachselektion von TextBoxen gesammelt umstellen könnte. Beste Grüße Phrontistes
      • 2
      • Gefällt mir
  24. Hallo @BahnLand, einen ordentlichen englischen Text (und ein erstes Rating) hat er auch: Vielen Dank - auch an @Neo für den Einbau des Vorschaubildes. Beste Grüße Phrontistes
  25. Hallo @bigrala Und noch ein Grund: Signale kann man standardmäßig in x- und y-Richtung, nicht aber in z-Richtung verschieben. Das ist bei Ampeln aber notwendig, weil sie sich in verschiedenen Höhen befinden können. Beste Grüße Phrontistes
×
×
  • Neu erstellen...